是否只能通过代码获得azure诊断?

时间:2016-01-27 21:09:28

标签: azure azure-cloud-services azure-api-management

Azure诊断是否仅通过代码实现? Windows具有事件查看器,可以访问各种类型的信息。 ASP.Net网站在根目录下有一个Trace.axd文件,可以查看跟踪信息。

我在想Azure中可能存在类似的东西。但是,基于以下URL,Azure诊断似乎需要自定义代码实现:

https://azure.microsoft.com/en-us/documentation/articles/cloud-services-dotnet-diagnostics/#overview

是否有一种更简单,更内置的方式来访问Azure诊断,就像我在上面描述的其他系统一样?或者是否需要创建自定义Worker角色来捕获和处理此信息?

2 个答案:

答案 0 :(得分:2)

Azure Worker Roles具有可以配置的广泛诊断。

您可以通过角色配置找到他们:

Role Configuration

然后,通过各个选项卡,您可以配置特定类型的诊断,并将它们定期传输到Table Storage帐户以供以后分析。

Diagnostics Configuration

您还可以启用应用程序特定日志的传输,这非常方便,我可以使用它来避免远程访问服务以查看日志:

Diagnostics Configuration - Log Directories

(在这里,我将AppRoot\logs文件夹下的所有文件传输到名为wad-processor-logs的blob容器,并且每分钟都这样做。)

如果您浏览标签,您会发现您可以广泛监控相当多的细节,包括自定义性能计数器。

最后,您还可以通过Server Explorer连接到您的云服务,并深入了解相同的信息:

Server Explorer

右键单击该实例,然后选择View Diagnostics Data

Diagnostics Summary

(最近的部署,所以不多见)

所以,是的,您可以访问事件日志,IIS日志和自定义应用程序日志,而无需编写自定义代码。此外,如果愿意,您可以实现自定义代码以捕获其他性能计数器和其他跟踪日志记录。

答案 1 :(得分:1)

“Azure诊断”有点模糊,因为Azure中有各种服务,每种服务都有不同的诊断体验。您链接的文章谈到了云服务,但您是否仅限于使用云服务?

另一个流行的选项是Azure应用服务,它允许您有更多选项来捕获日志,包括流式传输等。以下是一篇文章,详细介绍:https://azure.microsoft.com/en-us/documentation/articles/web-sites-enable-diagnostic-log/