Azure上的自定义IIS访问日志记录

时间:2014-05-12 09:46:58

标签: asp.net iis azure

我想在Azure上托管的ASP.NET服务的IIS访问日志中排除用户IP字段。有没有办法实现这个目标?我正在使用WAD将日志收集到blob存储中。

2 个答案:

答案 0 :(得分:2)

您需要运行提升的Azure角色启动任务(请参阅http://blogs.msdn.com/b/avkashchauhan/archive/2011/03/17/using-startup-task-in-windows-azure-detailed-summary.aspx)并运行以下命令从日志中删除ClientIP字段:

%windir%\system32\inetsrv\appcmd set config -section:sites -siteDefaults.logfile.logExtFileFlags:Date,Time,UserName,ServerIP,Method,UriStem,UriQuery,TimeTaken,HttpStatus,Win32Status,ServerPort,UserAgent,HttpSubStatus,Referer

在上面的命令行" ClientIp"已删除,应从日志中删除用户IP字段。

答案 1 :(得分:0)

添加BilalAlam的答案(虽然这并没有直接回答这个问题)

他的示例将更改所有网站的日志记录

appcmd set config -section:sites -siteDefaults.logfile.logExtFileFlags:Date,Time,UserName,ServerIP,Method,UriStem,UriQuery,TimeTaken,HttpStatus,Win32Status,ServerPort,UserAgent,HttpSubStatus,Referer

以下是如何更改单个网站的日志记录

appcmd.exe set config -section:sites -"[name='ExampleSite'].logfile.logExtFileFlags:Date,Time,UserName,ServerIP,Method,UriStem,UriQuery,TimeTaken,HttpStatus,Win32Status,BytesSent,BytesRecv,ServerPort,UserAgent,Cookie,HttpSubStatus,Referer"����

如果要在应用程序主机配置文件(而不是web.config文件)中进行更改,请将/commit:apphost添加到命令的末尾

appcmd.exe set config -section:sites -"[name='ExampleSite'].logfile.logExtFileFlags:Date,Time,UserName,ServerIP,Method,UriStem,UriQuery,TimeTaken,HttpStatus,Win32Status,BytesSent,BytesRecv,ServerPort,UserAgent,Cookie,HttpSubStatus,Referer" /commit:apphost