Solved

Create Log File

Posted on 2008-10-01
5
1,452 Views
Last Modified: 2012-05-05
In  C3 Windows Form application I would like to create the method, I would call Write2Log where I will be writing my exceptions in a manner Write2Log(ex.Message);
References I am using in my applications are:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Configuration;
using System.Data.SqlClient;
using System.Deployment.Application;

Help me with  a code.  

           


           
0
Comment
Question by:Aquarus
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
5 Comments
 
LVL 5

Accepted Solution

by:
libin_v earned 300 total points
ID: 22616076

Extract from http://www.doogal.co.uk/exception.php
 
    private void Write2Log(string error)
    {
      string filename = Path.GetDirectoryName(Application.ExecutablePath);
      filename += "\\BugReport.txt";
 
      ArrayList data = new ArrayList();
 
      lock (this)
      {
        if (File.Exists(filename))
        {
          using (StreamReader reader = new StreamReader(filename))
          {
            string line = null;
            do
            {
              line = reader.ReadLine();
              data.Add(line);
            }
            while (line != null);
          }
        }
 
        // truncate the file if it's too long
        int writeStart = 0;
        if (data.Count > 500)
          writeStart = data.Count - 500;
 
        using (StreamWriter stream = new StreamWriter(filename, false))
        {
          for (int i = writeStart; i < data.Count; i++)
          {
            stream.WriteLine(data[i]);
          }
 
          stream.Write(error);
        }
      }
    }

Open in new window

0
 
LVL 13

Expert Comment

by:Michael_D
ID: 22616081
Attached is simple method of logging.
using System.IO;
......
 
    public static void Write2Log(String logMessage)
    {
        using (StreamWriter w = File.AppendText("log.txt"))
        {
        w.Write("\r\nLog Entry : ");
        w.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(),
            DateTime.Now.ToLongDateString());
        w.WriteLine("  :");
        w.WriteLine("  :{0}", logMessage);
        w.WriteLine ("-------------------------------");
        // Update the underlying file.
        w.Flush(); 
        w.Close();
        }
    }

Open in new window

0
 
LVL 13

Expert Comment

by:Michael_D
ID: 22616100
oops, forgot to refresh browser...
0
 

Author Comment

by:Aquarus
ID: 22616281
I received the following error:

The type or namespace name 'ArrayList' could not be found (are you missing a using directive or an assembly reference?)      
What references am I missing?
0
 
LVL 13

Assisted Solution

by:Michael_D
Michael_D earned 200 total points
ID: 22616309
ArrayList is in System.Collections Namespace
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes a simple method to resize a control at runtime.  It includes ready-to-use source code and a complete sample demonstration application.  We'll also talk about C# Extension Methods. Introduction In one of my applications…
We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
In this video, viewers will be given step by step instructions on adjusting mouse, pointer and cursor visibility in Microsoft Windows 10. The video seeks to educate those who are struggling with the new Windows 10 Graphical User Interface. Change Cu…
In this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…

696 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question