Azure PHP启用诊断

时间:2013-10-24 04:37:24

标签: php azure azure-storage azure-web-roles azure-powershell

我在理解和启用Windows Azure中的诊断模块以获取性能数据+以及模块提供的所有功能方面遇到了很多困难。由于我在互联网上的各种帖子多次迷路,我想发布一个明确的指南来表达我的方式..

步骤1:根据here

中的说明安装Windows Azure PowerShell工具

步骤2:以管理员身份运行Windows Azure PowerShell。

第3步:获取当前的Azure发布设置

Get-AzurePublishSettingsFile

步骤4:将文件保存在已知文件夹中,并删除名称中的任何空格。 (例如.publishsettings)

步骤5:导入上面下载的发布设置文件。

Import-AzurePublishSettingsFile <path_to_downloaded>\<publishsettings_file_name>

步骤6:创建Windows Azure项目。 (这将创建一个包含许多配置文件的文件夹)

New-AzureServiceProject <myAzureProject>

第6步:添加Windows Azure角色

Add-AzurePHPWebRole <myWebRole>

步骤6:转到项目文件夹并编辑ServiceDefinition.csdef并将诊断模块导入其中。

  <WebRole name="myWebRole" vmsize="ExtraSmall">
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  ..

步骤7:编辑ServiceConfiguration.Cloud.cscfg,ServiceConfiguration.Cloud.cscfg和ServiceConfiguration.cscfg(制作ServiceConfiguration.Cloud.cscfg的副本并将其重命名为此文件,如果不存在)和存储连接字符串到所有这三个文件。

  <Role name="myWebRole">
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"       value="DefaultEndpointsProtocol=https;AccountName=<storage_name>;AccountKey=<storage_key>" />
    </ConfigurationSettings>
    ..

步骤6:将diagnostics.wadcfg文件添加到azure项目文件夹中的文件夹。它可以如下开始,但需要更改为您的确切规格以收集诊断信息。

<DiagnosticMonitorConfiguration xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration" configurationChangePollInterval="PT1M" overallQuotaInMB="4096">
   <DiagnosticInfrastructureLogs bufferQuotaInMB="10"
      scheduledTransferLogLevelFilter="Error"
      scheduledTransferPeriod="PT1M" />

   <Logs bufferQuotaInMB="0"
      scheduledTransferLogLevelFilter="Verbose"
      scheduledTransferPeriod="PT1M" />

   <Directories bufferQuotaInMB="0" 
      scheduledTransferPeriod="PT5M">

      <!-- These three elements specify the special directories 
           that are set up for the log types -->
      <CrashDumps container="wad-crash-dumps" directoryQuotaInMB="256" />
      <FailedRequestLogs container="wad-frq" directoryQuotaInMB="256" />
      <IISLogs container="wad-iis" directoryQuotaInMB="256" />
   </Directories>

   <PerformanceCounters bufferQuotaInMB="0" scheduledTransferPeriod="PT1M">
      <!-- The counter specifier is in the same format as the imperative 
           diagnostics configuration API -->
      <PerformanceCounterConfiguration 
         counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT5M" />
      <PerformanceCounterConfiguration 
         counterSpecifier="\Memory\Available Mbytes" sampleRate="PT5M" />
   </PerformanceCounters>
   <WindowsEventLog bufferQuotaInMB="0"
      scheduledTransferLogLevelFilter="Verbose"
      scheduledTransferPeriod="PT5M">
      <!-- The event log name is in the same format as the imperative 
           diagnostics configuration API -->
      <DataSource name="System!*" />
   </WindowsEventLog>
</DiagnosticMonitorConfiguration>

步骤6:现在添加了配置更改,需要通过。

将新设置发布到Windows Azure云
Publish-AzureServiceProject

Publish-AzureServiceProject –ServiceName <myNewServiceName>

此过程将花费一些时间和结束,您已启用诊断功能Windows Azure服务..

重要说明:这是基本诊断设置的简要指南,可以进行更多自定义,可以参考各种Microsoft Silver衬管博客帖子,例如this

0 个答案:

没有答案