【问题标题】:Append custom value to IIS logs from ASP.NET从 ASP.NET 将自定义值附加到 IIS 日志
【发布时间】:2010-10-04 17:04:39
【问题描述】:

我只想将运行时在页面中生成的附加值附加到当前请求的 IIS 日志条目中(或者,使用我的自定义值覆盖其中一个标准字段)。

我找不到这样做的方法,也找不到用 C# 编写自定义日志处理程序的示例(我不精通 С++)

感谢任何帮助,谢谢。

【问题讨论】:

    标签: asp.net iis logging


    【解决方案1】:

    您可以使用名为 AppendToLog 的 ASP.NET 方法将任何字符串添加到 IIS 日志文件中。它将被“附加”到包含查询字符串的列中,因此您可以进一步查询它,请参阅: Response.AppendToLog http://msdn.microsoft.com/en-us/library/system.web.httpresponse.appendtolog.aspx

    【讨论】:

    • 您可以使用 System.Web.HttpContext.Current.Response 获取 Web API 中 HttpResponse-object 的当前实例并在其上调用 AppendToLog。
    【解决方案2】:

    如果您使用的是 IIS 7.x,您可以使用 Advanced Logging 扩展来实现此目的。

    使用此功能,您可以从多个不同来源的自定义字段中获取数据。这里有一篇关于设置的文章:

    Advanced Logging for IIS 7.0 - Custom Logging

    在 IIS6 中,您需要实现自己的自定义记录器,我认为没有办法将记录事件拦截到默认记录器 (iislog.dll) 并添加额外数据:

    Creating Custom Logging Modules for IIS

    除非您可以强制 .NET 运行时加载到 COM 包装器组件中,否则您的记录器可能还必须用 C++ 编写以用于 IIS6。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-01
      • 2019-01-28
      • 2020-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-08
      • 2017-10-18
      相关资源
      最近更新 更多