Azure诊断是否仅通过代码实现? Windows具有事件查看器,可以访问各种类型的信息。 ASP.Net网站在根目录下有一个Trace.axd文件,可以查看跟踪信息。
我在想Azure中可能存在类似的东西。但是,基于以下URL,Azure诊断似乎需要自定义代码实现:
https://azure.microsoft.com/en-us/documentation/articles/cloud-services-dotnet-diagnostics/#overview
是否有一种更简单,更内置的方式来访问Azure诊断,就像我在上面描述的其他系统一样?或者是否需要创建自定义Worker角色来捕获和处理此信息?
答案 0 :(得分:2)
Azure Worker Roles具有可以配置的广泛诊断。
您可以通过角色配置找到他们:
然后,通过各个选项卡,您可以配置特定类型的诊断,并将它们定期传输到Table Storage帐户以供以后分析。
您还可以启用应用程序特定日志的传输,这非常方便,我可以使用它来避免远程访问服务以查看日志:
(在这里,我将AppRoot\logs
文件夹下的所有文件传输到名为wad-processor-logs
的blob容器,并且每分钟都这样做。)
如果您浏览标签,您会发现您可以广泛监控相当多的细节,包括自定义性能计数器。
最后,您还可以通过Server Explorer连接到您的云服务,并深入了解相同的信息:
右键单击该实例,然后选择View Diagnostics Data
。
(最近的部署,所以不多见)
所以,是的,您可以访问事件日志,IIS日志和自定义应用程序日志,而无需编写自定义代码。此外,如果愿意,您可以实现自定义代码以捕获其他性能计数器和其他跟踪日志记录。
答案 1 :(得分:1)
“Azure诊断”有点模糊,因为Azure中有各种服务,每种服务都有不同的诊断体验。您链接的文章谈到了云服务,但您是否仅限于使用云服务?
另一个流行的选项是Azure应用服务,它允许您有更多选项来捕获日志,包括流式传输等。以下是一篇文章,详细介绍:https://azure.microsoft.com/en-us/documentation/articles/web-sites-enable-diagnostic-log/