【问题标题】:asp.net web api tracing - redirect to another listenerasp.net web api 跟踪 - 重定向到另一个侦听器
【发布时间】:2017-08-01 12:43:39
【问题描述】:
我有一个托管在 iis 中的 asp.net 应用程序。它用作 web api 休息服务。
我写了一个日志,配置为:
<source ...>
<listeners>
<add ... />
</listeners>
</source>
我为 web api 跟踪添加了 nuget,它在我的视觉工作室中打印正常。在 webapiconfig.cs 中配置的跟踪为:
config.EnableSystemDiagnosticsTracing();
我想将输出重定向到现有日志中..
有什么想法吗?
【问题讨论】:
标签:
c#
asp.net
rest
debugging
asp.net-web-api
【解决方案1】:
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);
}
}