首页 文章

诊断程序不适用于Azure SDK 2.5.1的Web角色

提问于
浏览
3

我正在使用Azure SDK 2.5.1,主要是关于新设计的诊断内容 . 但是,我发现我无法让它运行我的网络角色 .

因此,我创建了一个 Cloud 服务项目,添加了一个Web角色 . 然后,我在 Global.asax.csApplication_Start 末尾添加了一条Trace消息:

Trace.TraceInformaction("Application_Start end.");

之后,我右键单击了WebRole并打开了 Properties 选项卡 . 在诊断配置窗口中:

  • General :我选择了 'Custom plan' ,同时指定了存储帐号,将 'Disk Quota in MB' 保留为默认值 '4096'

  • Application Logs'Log level' 切换到 'All' ,其他人保持默认状态

  • 其他选项卡处于默认配置设置中

在我将项目部署到 Cloud 之后,我发现了一些意想不到的事情:

  • 表存储中没有 WADLogsTable . 这很奇怪,如果我使用辅助角色,它会按预期工作 . 那么在web角色中,我只是找不到Trace日志记录?

  • 对于性能计数器,因为我使用的是8个计数器的默认配置,所以我只能在 WADPerformanceCountersTable 表存储中看到8个 . 在我的假设中,随着时间的推移,这8个计数器的值将越来越多地转移到该表中 . 但事实并非如此,经过几个小时,它仍然有8个计数器值 .

我只是认为Web角色的诊断只是崩溃或根本不工作 . 同时,我检查了位于服务器 "C:\Logs\Plugins\Microsoft.Azure.Diagnostics.PaaSDiagnostics\1.4.0.0\DiagnosticsPlugin.log" 的日志,在这个文件的末尾有一个例外,说某些诊断进程退出:

DiagnosticsPlugin.exe Error: 0 : [4/25/2015 5:38:21 AM] System.ArgumentException: An item with the same key has already been added.
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Microsoft.Azure.Plugins.Diagnostics.dll.PluginConfigurationSettingsProvider.LoadWadXMLConfig(String fullConfig)
DiagnosticsPlugin.exe Error: 0 : [4/25/2015 5:38:21 AM] Failed to load configuration file
DiagnosticsPlugin.exe Information: 0 : [4/25/2015 5:38:21 AM] DiagnosticPlugin.exe exit with code -105

MSDN开始,代码 -105 表示:

Diagnostics插件无法打开诊断配置文件 . 这是一个内部错误,只有在VM上手动调用Diagnostics插件时才会发生这种错误 .

它没有意义,我没有对VM做任何事情 .

正如我上面所说,我只是对Visual Studio 2013生成的脚手架代码进行了非常小的更改 . 我做错了什么或者是Azure SDK 2.5的错误?

顺便说一句,似乎一切都适合 Worker 角色 .

1 回答

  • 1

    引自MSDN forum

    嘿伙计们在这里跳得很晚但只是想确认最初的1.4.0.0诊断扩展存在问题,在某些情况下插件可能会在网络角色上崩溃 . 此问题已在1.4.1.0中得到解决 . 如果您在角色上重新应用扩展程序,则应自动获取修复该问题的最新版本 .

    在早期阶段,SDK 2.5.1中的诊断内部存在一些内部问题,但Microsoft已经修复了它 .

    无论如何,我们可以应用更新的版本,所以这不再是问题,以防你遇到这个问题 .

相关问题