【问题标题】:Setting up diagnostics for Windows Azure Web Role为 Windows Azure Web 角色设置诊断
【发布时间】:2012-03-08 13:50:18
【问题描述】:

我最近将我的 Web 角色部署到了 Windows Azure。在我的 WebRole 的属性中,我设置了启用诊断。

通过查看托管服务的配置文件,我还可以看到它在部署后正确映射到存储帐户。

我没有为诊断设置任何其他东西,我不知道我需要做任何其他事情。

我现在正在设置 AzureWatch(通过 paraleap)来监控我的实例,但是它报告 WADPerformanceCountersTable 不存在。

我对 Azure 很陌生,不知道诊断方法是如何工作的,也无法在 Google 上找到任何能告诉我如何操作的东西。谁能给我指路。

【问题讨论】:

    标签: asp.net azure azure-diagnostics


    【解决方案1】:

    好的,我想通了,将这里留给其他人跟进。

    第 1 步

    如果您关注http://dunnry.com/blog/2012/02/27/SettingUpDiagnosticsMonitoringInWindowsAzure.aspx,Windows Azure 诊断将开始将数据保存到您附加的 Blob 存储中,其中包含诊断信息。

    • 特别注意:这些计入您的存储交易,这就是您会看到它们上升的原因。

    第 2 步

    但是我需要 WADPerformanceCounterTable,它本应位于存储帐户的表部分,但从未创建。我需要它来使用 AzureWatch 等服务来监控和启动或关闭实例。

    • 特别注意:这是性能计数器,是诊断信息的特定子集,默认情况下不存储在 blob 部分中。

    第 3 步

    在您的项目中,您需要在 WebRole.cs 中添加要监控的性能计数器。

    • 特别注意:如果您只是将现有项目添加到 Azure 部署项目,则不会出现此问题。除非您专门从头开始项目并选择了 Azure 模板,否则您将需要手动创建它。您还需要添加:Microsoft.WindowsAzure.Diagnostics、Microsoft.WindowsAzure.ServiceRuntime 和 Microsoft.WindowsAzure.StorageClient 作为参考。了解其工作原理的最佳方法是从 Azure 模板创建一个空白项目并复制必要的项目。

    第 4 步

    接下来,您需要定义要监控的性能计数器。因此,这里有一个很好的示例:http://code.msdn.microsoft.com/windowsazure/Windows-Azure-PerformanceCo-7d80ebf9

    额外参考

    Microsoft 还提供了一些您可以在此处执行的步骤,如果仍然无法正常工作,这些步骤可能会有所帮助:http://msdn.microsoft.com/en-us/library/windowsazure/hh411521.aspx

    【讨论】:

    • 特别说明:如果您使用的是 AzureWatch,则无需手动编写要捕获的性能计数器。只需启用 Windows Azure 诊断并将计数器添加到 AzureWatch。您可以随意更改/添加/删除。 AzureWatch 将指示您的实例开始捕获这些计数器而无需重新部署。
    【解决方案2】:

    【讨论】:

    • 感谢您的回复。在第一个中,我已经完成了它所说的一切。但是,在您给我的第二个链接中,它让我在 WebRole.cs 中定义要监视的站点的内容。我必须这样做,还是应该默认监视所有内容?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    • 2022-11-13
    相关资源
    最近更新 更多