zoukankan      html  css  js  c++  java
  • wpf log4net使用

    第一步:

    下载 log4net.dll  ,并添加引用。您可以去http://logging.apache.org/log4net/download_log4net.cgi下载 log4net.dll!

    第二步:

    在 App.config 中添加节点:

    <?xml version="1.0"?>
    < configuration>
    <configSections>
    <!--log4net配置-->
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
    </configSections>
    <!--log4net配置-->
    <log4net>
    <!--定义输出到文件中-->
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
    <!--定义文件存放位置-->
    <file value="D://logfile.txt"/>
                            <!--如果放在Debug下,当然名字你可以改 -->
    <!--<file value="log//logfile.txt"/>-->
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <datePattern value="yyyyMMdd-HH:mm:ss"/>
    <layout type="log4net.Layout.PatternLayout">
    <!--输出格式-->
    <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
    <conversionPattern value="记录时间:%date 线程ID:[%thread] 日志级别:%-5level 出错类:%logger property:[%property{NDC}] - 错误描述:%message%newline"/>
    </layout>
    </appender>
    <!--定义日志的输出媒介-->
    <root>
    <!--文件形式记录日志-->
    <appender-ref ref="LogFileAppender"/>
    </root>
    </log4net>
    < /configuration>

    第三步:

     在项目中找到Properties文件夹中找到AssemblyInfo.cs 在代码追后 添加 [assembly: log4net.Config.XmlConfigurator(Watch = true)]

    第四步:

    测试 Xaml代码

    <Grid>
            <Button Width="33" Height="33" Click="Button_Click_1" Content="测试"></Button>
     </Grid>
    后台代码
    using log4net;
    using System.Reflection;
    private void Button_Click_1(object sender, RoutedEventArgs e)
            {
                ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
                log.Info("测试而已!");
            }

    第五步:

    找到文件路径D://logfile.txt 查看配置是否成功!

    重点:App.xaml.cs中添加

         public static readonly ILog Log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
            protected override void OnStartup(StartupEventArgs e)
            {
                base.OnStartup(e);
                Log.Info("==Startup=====================>>>");
            }
            protected override void OnExit(ExitEventArgs e)
            {
                Log.Info("<<<========================End==");
                base.OnExit(e);
            }
    绿色部分可以省略
  • 相关阅读:
    在Workload Automation中实现suspend分析
    Linux kernel的中断子系统之(九):tasklet
    Linux kernel的中断子系统之(八):softirq
    Linux kernel的中断子系统之(七):GIC代码分析
    Linux kernel的中断子系统之(六):ARM中断处理过程
    Linux kernel的中断子系统之(五):驱动申请中断API
    Linux kernel的中断子系统之(四):High level irq event handler
    Linux kernel的中断子系统之(三):IRQ number和中断描述符
    Linux kernel的中断子系统之(二):IRQ Domain介绍
    Linux kernel的中断子系统之(一):综述
  • 原文地址:https://www.cnblogs.com/dzh1990/p/7524702.html
Copyright © 2011-2022 走看看