企业图书馆4.1

时间:2009-12-03 19:32:14

标签: .net enterprise-library

我正在使用企业库4.1,我希望为不同的事件类型创建不同的日志文件。

例如

错误事件的Error.log,警告事件的Warning.log,如何实现?

THX

1 个答案:

答案 0 :(得分:2)

好的,首先,如果你已经安装了lib lib 4.1,你可以使用“Enterprise Libreary Configuration”应用程序来配置它。 (我真的建议使用这个应用程序)

我将假设您已经了解了Loggin应用程序块的基础知识。您需要添加到loggingConfiguration的第一件事是您想要的每个文件的侦听器。

<listeners>
  <add name="Error Listener" fileName=".\error.log" rollSizeKB="0" timeStampPattern="yyyy-MM-dd"
    rollFileExistsBehavior="Increment" rollInterval="Day" formatter="Text Formatter"        listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    traceOutputOptions="Timestamp" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <add name="Warning Listener" fileName=".\Warning.log" rollSizeKB="0" timeStampPattern="yyyy-MM-dd" rollFileExistsBehavior="Increment" rollInterval="Day" formatter="simple Formatter"       listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    traceOutputOptions="Timestamp" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"  />
</listeners>

如你所见,你有两个监听器,第一个名为“Error Listener”的女巫在Error.log文件上写日志,另一个名为“Warning Listener”,她们在Warning.log文件上写日志。 / p>

下一步是添加日志类别。即:

<categorySources>
  <add switchValue="All" name="Error">
    <listeners>
      <add name="Error Listener" />
    </listeners>
  </add>
  <add switchValue="All" name="Warning">
    <listeners>
      <add name="Warning Listener" />
    </listeners>
  </add>
</categorySources>

正如您所看到的,类别中有一个“listeners”元素,您可以在其中添加侦听器。现在,您将日志类别映射到侦听器。

现在您要做的就是将Logger.Write方法调用为:

Logger.Write("Message","Category");