【问题标题】:What logging information will I get on the Production Server?我将在生产服务器上获得哪些日志信息?
【发布时间】:2014-12-26 14:35:52
【问题描述】:

为以下PatternLayout

<layout type="log4net.Layout.PatternLayout">
  <conversionPattern value="%date [%thread] %-5level %logger %property  - %message%newline%exception" />
</layout>

在不提及单个属性的情况下,我正在打印所有可用的属性。以下是我得到的相应配置

User=Fred Bloggs, Environment=Production, log4net:Identity=, 
     log4net:UserName=Y, log4net:HostName=X

我正在本地开发。当这进入生产服务器(多线程环境)时,输出将不同还是相同,即UserName HostName 将是客户端还是服务器?

【问题讨论】:

    标签: logging log4net log4net-configuration


    【解决方案1】:

    这取决于您如何获取信息以及如何管理身份验证,但如果您使用%identity,您将使用Principal.Identity.Name 获取当前用户的用户名,而不是使用%username 获取WindowsIdentity.

    但请注意,documentation 对使用其中任何一种都有一个警告:

    WARNING Generating caller information is extremely slow. 
    Its use should be avoided unless execution speed is not an issue.
    

    log4net:HostName 将返回“最初记录事件的机器的名称”。这将是生产服务器。

    【讨论】:

      猜你喜欢
      • 2011-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      • 2017-08-21
      • 2014-03-21
      • 2017-04-17
      • 1970-01-01
      相关资源
      最近更新 更多