簡體   English   中英

您如何通過log4net記錄計算機名稱?

[英]How do you log the machine name via log4net?

我將Log4Net與AdoNetAppender一起使用,以將來自簡單systray應用程序的消息記錄到SQL Server 2005數據庫中。

我想將機器名和日志消息一起記錄下來,因為此應用程序將在多台機器上運行,並且我需要知道消息起源於哪台機器。

但是,我找不到通過我與附加程序一起使用的log4net.Layout.PatternLayout公開此信息的方法。

有沒有辦法以這種方式通過log4net記錄計算機名稱?

您可以使用預填充的屬性log4net:HostName ,例如:

<conversionPattern value="%property{log4net:HostName}" />

這樣,您無需填充MDC。

您可以創建類似於以下內容的參數:

<parameter>
  <parameterName value="@machine" />
  <dbType value="String" />
  <size value="255" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%X{machine}" />
  </layout>
</parameter>

然后在寫入日志之前添加以下行: MDC.Set("machine", Environment.MachineName);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM