【问题标题】:Enterprise Library Logging企业图书馆记录
【发布时间】:2011-04-27 13:19:36
【问题描述】:

日志文件名现在支持使用环境变量。您可以在平面文件跟踪侦听器、滚动平面文件跟踪侦听器和 XML 跟踪侦听器的 Filename 属性中包含环境变量,例如 %WINDIR%, %TEMP%,%USERPROFILE%

<add name="Trace" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
fileName="Logs\trace_%DATE%.log" header="" footer="" formatter="Trace"
traceOutputOptions="None" filter="All" />

结果文件名 - trace_.log,我做错了什么?

【问题讨论】:

  • 就个人而言,我认为将日志文件的启动日期/时间作为文件名的一部分并没有多大价值。我宁愿将当前文件命名为“trace_current.log”,并使用 RollingFlatFileTraceListener 归档旧文件。它会自动在滚动文件的文件名中添加时间戳。
  • 谢谢! RollingFlatFileTraceListener 是我一直在寻找的答案

标签: .net enterprise-library


【解决方案1】:

DATE 是一个动态环境变量(即,一个人的价值可以在会话期间改变),我认为 EL 不支持这些。

请参阅Add date to log file name in Logging Application Block 了解可能的解决方案,但这不是一个理想的解决方案。

【讨论】:

  • 创建另一个变量真的很糟糕,也许我可以在代码中为文件名添加日期值?
  • 正如我所说,这不是一个理想的解决方案......!
猜你喜欢
  • 2010-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多