我们需要在windows azure web角色中启用25个以上的性能计数器。我正在考虑RDP,并逐一启用它们。但这可能需要很长时间,如果我们扩大规模也不会保证。
有人可以帮助我是否可以自动化这个过程?最好是Powershell,但其他解决方案也可以。
答案 0 :(得分:6)
无法通过RDP进入Windows Azure计算机启用性能计数器,因为性能计数器是由Windows发布的。
但是,我认为您要求的是将25个以上的性能计数器捕获到Azure诊断程序商店中?
如果是这种情况,您需要:
1)在Web角色上启用Azure诊断。这必须在部署之前完成。这是一种最佳实践,大多数人都是这样做的(我确信微软会为每个没有显式配置设置的角色完成它,但是
2)有多种方法可以将性能计数器捕获到诊断存储中:
a)使用diagnostics.wadcfg文件http://msdn.microsoft.com/en-us/library/gg604918.aspx(您需要使用该文件重新部署您的应用程序)
b)使用powershell(虽然我自己从未做过)http://michaelwasham.com/2011/09/19/windows-azure-diagnostics-and-powershell-performance-counters/或http://www.davidaiken.com/2011/10/18/how-to-easily-enable-windows-azure-diagnostics-remotely/
c)使用代码内检测(每次更改要启用的计数器时都需要重新上传应用程序)http://www.codeproject.com/Articles/303686/Windows-Azure-Diagnostics-Performance-Counters-In(我不建议使用代码内配置,因为它太脆弱了)
d)使用第三方工具,如Cerebrata Diagnostics Manager或AzureWatch
e)使用Azure Service Management API与Azure Diagnostics API结合使用以获取单个实例配置并对其进行更新(这是第三方工具和PowerShell执行此操作的方式)如果直接使用PowerShell,管理API或像Cerebrata这样的工具,您的配置将“坚持”部署的生命周期。重新上传新版本的应用后,配置将会丢失。
使用diagnostics.wadcfg,代码内检测或AzureWatch,您的配置将在重新上传应用程序时保留
HTH