zoukankan      html  css  js  c++  java
  • C#添加错误日志信息

    错误日志是软件用来记录运行时出错信息的文本文件。编程人员和维护人员等可以利用错误日志对系统进行调试和维护。

    系统日志

    系统日志包含了由Windows系统组件记录的事件。例如,在启动期间装入驱动程序或其他系统组件失败被记录到系统日志。要查看系统日志:
    1. 打开命令提示符。
    2. 在提示符下输入eventvwr。这打开了Windows事件查看器。

    应用程序日志

    应用程序日志包含了由应用程序或程序记录的事件。例如,数据库程序可能在应用程序日志中记录一个文件错误。要查看应用程序日志:
    1. 打开命令提示符。
    2. 在提示符下输入eventvwr。这打开了Windows事件查看器。

    解释日志信息

    在两种日志中,每个事件按照日期和时间顺序(首先是最近的)分行显示,带有下列信息:
    • 类型:事件类型,可以是信息、警告或错误。
    • 日期和时间:事件被写入日志的日期和时间。
    • 源:引起该事件的操作。
    • 类别:事件的类别。缺省类别是无。
    • 事件:事件编号。
    • 用户:事件发生时的用户名。
    • 计算机:本地机器的名称。
    查看单个日志条目:
    1 在系统或应用程序日志中,查找日志条目。
    2 右键单击条目。
    在WindowsWindowsServer 2008 中,单击事件以打开“事件属性”窗口。
    该窗口显示事件的描述。选择“详细信息”选项卡可以查看将记录写入日志时解析的字节或字。
    3 使用向上和向下箭头键上下移动以查看日志事件。
    4 要关闭窗口,请单击确定以返回到系统日志或应用程序日志 

    C#中自定义日志

    为了方便清晰得看到程序中的错误和不足的地方,记录错误日志是非常有必要的。

    废话不多说,直接上代码,关键代码都有注释,不理解的可以留言提出.

    private static StreamWriter streamWriter; //写文件  
            //将错误信息写入文件中
            public static void WriteError(string message)
            {
                try
                {
                    //DateTime dt = new DateTime();
                    string directPath = Environment.CurrentDirectory + "\ErrorLog";    //在获得文件夹路径(根据你们自己的实际情况去写错误日志文件夹路径)
                    if (!Directory.Exists(directPath))   //判断文件夹是否存在,如果不存在则创建
                    {
                        Directory.CreateDirectory(directPath);
                    }
                    directPath += string.Format(@"{0}.log", DateTime.Now.ToString("yyyy-MM-dd"));
                    if (streamWriter == null)
                    {
                        streamWriter = !File.Exists(directPath) ? File.CreateText(directPath) : File.AppendText(directPath);    //判断文件是否存在如果不存在则创建,如果存在则添加。
                    }
                    streamWriter.WriteLine("***********************************************************************");
                    streamWriter.WriteLine(DateTime.Now.ToString("HH:mm:ss"));
                    streamWriter.WriteLine("输出信息:错误信息");
                    if (message != null)
                    {
                        streamWriter.WriteLine("异常信息:
    " + message);
                    }
                }
                finally
                {
                    if (streamWriter != null)
                    {
                        streamWriter.Flush();
                        streamWriter.Dispose();
                        streamWriter = null;
                    }
                }
            }

    ok,今天的分享就到这里了,有疑问的欢迎留言!

  • 相关阅读:
    从MySQL全备文件中恢复单个库或者单个表
    594. Longest Harmonious Subsequence
    205. Isomorphic Strings
    274. H-Index
    219. Contains Duplicate II
    217. Contains Duplicate
    操作系统-多用户如何理解(Linux)
    Java-面向对象
    C++-有感
    C++-Typedef结构体遇上指针
  • 原文地址:https://www.cnblogs.com/guhuazhen/p/11179988.html
Copyright © 2011-2022 走看看