为应用程序写日志

今天公司国外的同事帮我修改了一下程序,随便帮我加个程序日志,以便查看该app的使用情况。

自己以前没写过,觉得非常的不错,放上来跟大家一起分享...

不过今天没有多少时间去把细节研究透,这里只说说具体实现:

首先在app.config加以下代码

 <configSections>
                    <section name="loggingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
                    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
                              <section name="Poller.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
                    </sectionGroup>
          </configSections>
          <loggingConfiguration name="Logging Application Block" tracingEnabled="true"
            defaultCategory="General" logWarningsWhenNoCategoriesMatch="true">
                    <listeners>
                              <add fileName="D:/TechSmart/Projects/ConsoleApplication1/ConsoleApplication1/GoogleAnalytics.log"
                                footer="----------------------------------------" formatter="Text Formatter"
                                header="----------------------------------------" rollFileExistsBehavior="Overwrite"
                                rollInterval="Week" rollSizeKB="3072" timeStampPattern="yyyy-MM-dd "
                                listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                                traceOutputOptions="None" filter="All" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                                name="Rolling Flat File Trace Listener" />
                    </listeners>
                    <formatters>
                              <add template="{timestamp(local:yyyy-MM-dd HH:mm:ss)}&#xD;&#xD;&#xA;{message}&#xA;"
                                type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                                name="Text Formatter" />
                    </formatters>
                    <categorySources>
                              <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>

其次,记得添加这个引用Microsoft.Practices.EnterpriseLibrary.Logging;这个好像是微软企业库里东西,没细致研究,有错帮我纠正!

最后,方法中添加

try
                    {
                        DbConnector.runSql(vis);
                        Logger.Write("运行成功:"+vis);
                    }
                    catch (Exception exp)
                    {
                        Logger.Write("Error: " + exp.Message);
                        Logger.Write("Stack Trace: " + exp.StackTrace);
                        Logger.Write("Source: " + exp.Source);
                    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值