asp.net Web API 跟踪 - 重定向到另一个侦听器



我有一个在 IIS 中托管的 asp.net 应用程序。 它用作Web API Rest Service。 我写了一个日志,配置为:

<source ...>
<listeners>
<add ... />
</listeners>
</source>

我添加了用于Web api跟踪的nuget,它可以在我的视觉工作室中打印正常。 在 WebapiConfig 中配置的跟踪.cs如下:

config.EnableSystemDiagnosticsTracing();

我想将输出重定向到现有日志中。.

有什么想法吗?

public class WebApiTracer : ITraceWriter
{
public void Trace(HttpRequestMessage request, string category, System.Web.Http.Tracing.TraceLevel level, Action<TraceRecord> traceAction)
{
TraceRecord rec = new TraceRecord(request, category, level);
traceAction(rec);
WriteTrace(rec);
}
protected void WriteTrace(TraceRecord rec)
{
var message = string.Format("WebApi. {0};{1};{2};{3};{4}",
rec.Category, rec.Operator, rec.Operation, rec.Message, rec.Exception);
myLog.Write(message);
}
}

最新更新