我正在处理日志文件并计算每个网站的流量使用情况。默认日志记录缺少必填字段(cs-host
,sc-bytes
,cs-bytes
)。虽然我可以在IIS的Logging
部分更改这些配置,但我可以在日志记录中选择要包含或排除的字段。我无法找到任何方法来更改IIS Express的这些配置。无论如何要定义我想要包含在IIS Express日志中的字段吗?
使用IIS配置中的Logging
,命令行代码或仅编辑配置文件等GUI?
我找到了IIS Express logFile配置,但在那里,但无法找到有关在那里添加字段的任何内容:
%userprofile%\documents\iisexpress\config\applicationhost.config
在SiteDefaults
中有logFile配置:
<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs"/>
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
答案 0 :(得分:0)
要获得完整的答案:您必须首先找到与您的站点相对应的applicationhost.config
,然后编辑<logFile>
部分。可以在<siteDefaults>
中定义它,以对所有站点应用相同的设置,也可以在每个<site>
部分中定义它。
要配置默认类别,可以使用logExtFileFlags
属性:
logExtFileFlags 属性可以是以下一个或多个值。如果您指定多个值,请用逗号(,)分隔。
在您的情况下,您需要Host
,BytesRecv
和BytesSent
。
要添加自定义字段,可以使用<customFields>
小节。
这是一个完整的例子:
<logFile logFormat="W3C" directory="%AppData%\Microsoft\IISExpressLogs"
enabled="true" flushByEntryCountW3CLog="2"
logExtFileFlags="Host, BytesRecv, BytesSent">
<customFields>
<add logFieldName="custom-UUID" sourceType="RequestHeader" sourceName="UUID" />
</customFields>
</logFile>