可以在Windows Azure上访问事件日志以进行具有多个实例的部署吗? 如有必要,它将能够查看每个服务器实例的事件日志。 “黑匣子”的东西并没有削减。
如果启用远程桌面,则可以连接到每个实例并远程检查事件日志。
另一方面,您可以将Azure诊断程序configuration为定期将事件日志复制到Azure Blob存储帐户。
在.csdef中启用Azure诊断
<WebRole name="roleName"> <Imports> <Import moduleName="Diagnostics" /> </Imports> </WebRole>
在.cscfg中configuration诊断帐号(确保使用https作为DefaultEndpointsProtocol )。
<Role name="roleName"> <Instances count="1" /> <ConfigurationSettings> <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=accountName;AccountKey=accountKey" /> </ConfigurationSettings> </Role>
将诊断初始化添加到OnStart方法。
var config = DiagnosticMonitor.GetDefaultInitialConfiguration(); config.WindowsEventLog.DataSources.Add("System!*"); DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", config);