zoukankan      html  css  js  c++  java
  • C# 日志框架的添加

    .NET中 记录日志的比较好的主要是Log4Net和Enterprise Library的Logging

    复杂一点的还可以实现自动化Log日志 教程


    首先是第二种方式

    1.需要添加以下几个DLL  下载

    • Microsoft.Practices.EnterpriseLibrary.Logging.dll
    • Microsoft.Practices.ObjectBuilder2.dll
    • Microsoft.Practices.EnterpriseLibrary.Common.dll

    2.Web.config 的configuration节点中添加以下内容

      <configSections>
        <section name="loggingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
        <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
      </configSections>
    
      <loggingConfiguration name="Logging Application Block" tracingEnabled="true" defaultCategory="General" logWarningsWhenNoCategoriesMatch="true">
        <listeners>
          <add fileName="LogService.log" footer="----------------------------------------" formatter="Text Formatter" rollFileExistsBehavior="Increment" rollInterval="Day" rollSizeKB="10240" timeStampPattern="yyy-MM-dd" listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" traceOutputOptions="None" filter="All" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="Rolling Flat File Trace Listener" />
        </listeners>
        <formatters>
          <add template="时间: {timestamp} 类型: {severity} 标题: {title} 内容: {message}" type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="Text Formatter" />
        </formatters>
        <categorySources>
          <add switchValue="All" name="Debug" />
          <add switchValue="All" name="General">
            <listeners>
              <add name="Rolling Flat File Trace Listener" />
            </listeners>
          </add>
        </categorySources>
        <specialSources>
          <allEvents switchValue="All" name="All Events" />
          <notProcessed switchValue="All" name="Unprocessed Category" />
          <errors switchValue="All" name="Logging Errors &amp; Warnings" />
        </specialSources>
      </loggingConfiguration>

    注意:configSections节点一定要在loggingConfiguration节点的上面

    3.调用

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Diagnostics;
    using System.Reflection;
    using System.Configuration;
    using Microsoft.Practices.EnterpriseLibrary.Logging;
    using System.Collections;
    
    public sealed class LogWriter
    {
        public LogWriter()
        {
        }
    
        /// <summary>
        /// 输出错误日志
        /// </summary>
        /// <param name="exception"></param>
        public static void WriteError(Exception exception, string title)
        {
            LogEntry logEntity = new LogEntry();
            logEntity.Title = title;
            logEntity.TimeStamp = DateTime.Now;
            logEntity.Message = exception.ToString();
            logEntity.Severity = TraceEventType.Error;
            Logger.Write(logEntity);
        }
    }
  • 相关阅读:
    沙盒解决方案part1:沙盒解决方案的用途和好处
    session定义使用和丢失问题小结(20120101有更新&&20121026又更)
    普通pc检测维修的一个特例:检测\换板\电源\IDE信道\声卡驱动
    用户sa登录失败,该用户与可信sql server连接无关联
    trycatchfinally(C# 简单学习)
    按钮只能一次提交:ajax页面中调用ascx控件,如何设置ascx中按钮为false
    开始学习:Ajax的全称是:AsynchronousJavaScript+XML
    ajax学习的第一次亲密接触.(虽然还有一点模糊)
    .net2.0 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的
    创建可重复使用的控件ascx-一页只能有一个服务器端 Form 标记?
  • 原文地址:https://www.cnblogs.com/TiestoRay/p/3471853.html
Copyright © 2011-2022 走看看