【问题标题】:log4j/log4net set the time stamp to eastern time zonelog4j/log4net 将时间戳设置为东部时区
【发布时间】:2017-09-26 18:57:10
【问题描述】:

我有一个在 azure 上运行的应用程序。 Azure 将 UTC 时间用于与日期相关的内容,因此所有日志条目都有“不正确”的时间。

如何更改 log4net 配置文件,以便将时间戳记录为东部时区?

我现在的模式

<layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="[%date{dd MMM yyyy HH:mm:ss.fffzzz}] [%5level] (%identity-%username) %message%newline" />
  </layout>

【问题讨论】:

  • 不清楚你在问什么。日志时间以何种方式“不正确”? The documentation for %date“用于在本地时区输出日志记录事件的日期。要以通用时间输出日期,请使用 %utcdate 模式。” 但您不能使其以特定的方式输出时区。不过,您可以将要记录的时间作为 GlobalContext 参数传递,在这种情况下,您可以完全控制它。

标签: log4j log4net


【解决方案1】:

您可以将时区添加到您的conversionPattern,例如:

<layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="[%d{dd MMM yyyy HH:mm:ss.fffzzz}{GMT}] [%5level] (%identity-%username) %message%newline" />
  </layout>

您可以查看布局here

【讨论】:

  • 我认为这不适用于 Nuget 中的 2.0.8 版。
  • 很遗憾这不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-02-25
  • 2016-10-09
  • 2018-01-27
  • 1970-01-01
  • 1970-01-01
  • 2020-06-06
  • 1970-01-01
相关资源
最近更新 更多