建立了一个Web API项目,在WebApiConfig.cs中已经启用了Tracing.

config.EnableSystemDiagnosticsTracing();

同时web.config中也已经配置了TextWriter.

<system.diagnostics>

<trace autoflush="true" indentsize="4">

<listeners>

<add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="WebApiLog.log" />

<remove name="Default" />

</listeners>

</trace>

</system.diagnostics>

 

然后在具体的代码中记录了Log.

Trace.WriteLine("my message");

 

可是web api被调用后却没有log文件出现,怎么回事那?

【分析】

这是因为web api网站的应用程序池账号对物理目录没有写权限,所以无法写log.

【解决方法】

Grant IIS APPPOOL\<application pool name> at least Edit permission for the web api web site's physical folder.

 

 

posted on 2016-12-09 16:12  今夜太冷  阅读(787)  评论(0编辑  收藏  举报