Asp.net
如何使用 Log4Net 啟用 IP 地址記錄
我正在尋找一種在 ASP.NET 中使用 log4net 啟用 IP 日誌記錄的方法。我找到了一種解決方案,但它適用於應用程序級別。有關如何在會話級別記錄 IP 的任何建議/實踐?
謝謝
在
Application_BeginRequest, 做MDC.Set("addr", Request.UserHostAddress);然後確保您
PatternLayout包含%X{addr}模式字元串中的某個位置。**更新:**正如 Tadas 所指出的,在較新版本的 log4net 中,等價於
ThreadContext.Properties["addr"] = Request.UserHostAddress;再加上
%P{addr}模式串。
使用 log4net 1.2.11(2011 年 10 月),您可以將以下內容添加到您的模式佈局中:
%aspnet-request{REMOTE_ADDR}或者對於目前使用者:
%aspnet-request{AUTH_USER}有關新的 asp.net 模式轉換器(%aspnet-cache、%aspnet-context 和 %aspnet-request)的更多資訊,請參閱https://issues.apache.org/jira/browse/LOG4NET-87 。