【发布时间】:2012-08-01 07:45:56
【问题描述】:
我在尝试在 PHP Web 角色中配置 Windows Azure 诊断时遇到问题。我读到我必须修改 WebRole.cs 文件中的OnStart() 方法,对吗?但问题是我在我的项目中找不到这个文件。我没有!我以为这个文件是自动创建的,还是我必须创建它?
【问题讨论】:
标签: php azure azure-diagnostics
我在尝试在 PHP Web 角色中配置 Windows Azure 诊断时遇到问题。我读到我必须修改 WebRole.cs 文件中的OnStart() 方法,对吗?但问题是我在我的项目中找不到这个文件。我没有!我以为这个文件是自动创建的,还是我必须创建它?
【问题讨论】:
标签: php azure azure-diagnostics
我认为没有必要将任何代码添加到 WebRole.cs 文件中(PHP 中没有)。
但是,您可以通过将诊断模块添加到您的软件包来设置诊断。您可以通过修改您的 ServiceDefinition.csdef(假设您有一个)来包含诊断模块,如下所示:
<ServiceDefinition name="xxx">
<WebRole name="xxx" vmsize="ExtraSmall">
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
</ServiceDefinition>
然后,您需要通过修改 ServiceConfiguration.cscfg 添加如下设置来设置要写入诊断信息的存储帐户:
<ServiceConfiguration serviceName="xxx" osFamily="1" osVersion="*">
<Role name="xxx">
<Instances count="1" />
<ConfigurationSettings>
<Setting
name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
value="YOUR_STORAGE_CONNECTION_STRING" />
</ConfigurationSettings>
</Role>
</ServiceConfiguration>
然后您需要将 diagnostics.wadcfg 文件添加到您的包中,该文件告诉诊断模块您希望如何捕获信息。这里有一个例子:https://gist.github.com/2520279
【讨论】: