我刚刚开始查看Windows Azure,但是我无法从IIS获取任何访问日志以用于我的测试Web角色。 Web角色本身工作正常,但我希望看到访问日志(成功和失败)。
据我所知,Web角色的默认配置文件包含将这些日志发送到名为“wad-iis-logfiles”的blob的说明,但该blob从未创建过(它在我的身上不存在) blob存储)。
我的网络角色的diagnostics.wadcfg目前是:
<DiagnosticMonitorConfiguration configurationChangePollInterval="PT1M" overallQuotaInMB="4096" xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration">
<DiagnosticInfrastructureLogs bufferQuotaInMB="512" scheduledTransferPeriod="PT5M" />
<Directories bufferQuotaInMB="512" scheduledTransferPeriod="PT5M">
<IISLogs container="wad-iis-logfiles" />
<CrashDumps container="wad-crash-dumps" />
</Directories>
<Logs bufferQuotaInMB="512" scheduledTransferPeriod="PT5M" scheduledTransferLogLevelFilter="Information" />
<PerformanceCounters bufferQuotaInMB="512">
(... snip...)
</PerformanceCounters>
<WindowsEventLog bufferQuotaInMB="512" scheduledTransferPeriod="PT1M" scheduledTransferLogLevelFilter="Error">
<DataSource name="Application!*" />
</WindowsEventLog>
</DiagnosticMonitorConfiguration>
问题1:此配置文件是否正确?
问题2:在获取IIS日志文件之前是否需要设置其他内容?
答案 0 :(得分:0)
在评论者的帮助下,我能够解决问题。
有几个相互作用的事情导致了这个问题。
正如评论者@kwill所提到的,wad-control-container中的现有配置blob会覆盖任何其他配置,并且在就地更新期间不会替换该配置。我正在使用就地更新将我修改过的diagnostics.wadcfg放到位,这就是为什么我尝试以这种方式更改设置无法解释的原因。请注意,编辑Web测试角色的属性(在Azure云服务项目的“角色”分支中,通过编辑同一文件来运行,因此也不起作用。有关该wad-control-container如何覆盖设置的更多信息可以在http://msdn.microsoft.com/en-us/library/windowsazure/dn205146.aspx找到。
blob已经存在的原因可能是我之前在azure管理窗口中更改了其他一些性能测量设置。
我设法通过使用评论者@Gaurav Mantri提到的工具 - “Azure Explorer”编辑我的实例的wad-control-container中找到的blob来“修复”这种情况。如上所述,如果没有该工具,您可以下载blob并对其进行编辑,但永远不要将其正确放回,因为blob名称中的“/”字符会被转换为“%2F”,并且这些字符不会在上传时翻译回来。 / p>
请注意,XML架构与diagnostics.wadcfg的架构不同,但存在一些相似之处。我将blob底部的“Directories”元素更改为:
<Directories>
<BufferQuotaInMB>512</BufferQuotaInMB>
<ScheduledTransferPeriodInMinutes>2</ScheduledTransferPeriodInMinutes>
<Subscriptions>
<DirectoryConfiguration>
<Path>C:\Resources\directory\8091b0be14e54213ac12fcbd5f9c8e1b.WebTestRole.DiagnosticStore\CrashDumps</Path>
<Container>wad-crash-dumps</Container>
<DirectoryQuotaInMB>0</DirectoryQuotaInMB>
</DirectoryConfiguration>
<DirectoryConfiguration>
<Path>C:\Resources\directory\8091b0be14e54213ac12fcbd5f9c8e1b.WebTestRole.DiagnosticStore\LogFiles</Path>
<Container>wad-iis-logfiles</Container>
<DirectoryQuotaInMB>16</DirectoryQuotaInMB>
</DirectoryConfiguration>
</Subscriptions>
</Directories>
在原始版本中,“BufferQuotaInMB”和“DirectoryQuotaInMB”字段为0.
请注意,再次上传blob后,效果不会立竿见影。更改配置需要一段时间才能获取,然后在第一次复制IIS日志文件之前需要一段时间。
最后注意:这可能是显而易见的,但我不认为编辑该blob是一个值得推荐的解决方案。很高兴知道该选项存在。