2011-05-24 83 views
0

我是Azure開發新手,我一直在努力追蹤工作(到Azure存儲)。Azure WorkerRole和WebRole跟蹤延遲OnStart?

我終於設法使其工作,但第一個跟蹤消息似乎並沒有轉移到WADLogsTable。

作爲一項工作階段,我暫時修復了在啓動DiagnosticMonitor後添加10秒睡眠。

我開始在WorkerRole的OnStart方法使用這樣的:

var config = DiagnosticMonitor.GetDefaultInitialConfiguration(); 

config.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1); 
config.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose; 

DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", config); 

現在我改變了它的建議:

string wadConnectionString = "Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"; 
CloudStorageAccount cloudStorageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue(wadConnectionString)); 

RoleInstanceDiagnosticManager roleInstanceDiagnosticManager = cloudStorageAccount 
    .CreateRoleInstanceDiagnosticManager(RoleEnvironment.DeploymentId, 
    RoleEnvironment.CurrentRoleInstance.Role.Name, 
    RoleEnvironment.CurrentRoleInstance.Id); 

DiagnosticMonitorConfiguration diagnosticMonitorConfiguration = DiagnosticMonitor.GetDefaultInitialConfiguration(); 

diagnosticMonitorConfiguration.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1); 

roleInstanceDiagnosticManager.SetCurrentConfiguration(diagnosticMonitorConfiguration); 

但我仍然得到同樣的行爲(現在睡眠10s是不夠的,我不得不改變它到20s)。

有沒有人遇到同樣的問題? 有沒有人有更好的解決方法? 我做錯了什麼?

+1

請注意對於ScheduledTransferPeriod:「此值四捨五入到最接近的分鐘...」(http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.diagnostics.diagnosticdatabufferconfiguration.scheduledtransferperiod.aspx ) – 2011-05-24 23:56:22

+0

@Oliver Bock - 非常感謝,我不知道這件事! :) – Maghis 2011-05-25 00:07:27

+0

我的博客涵蓋此:http://blogs.msdn.com/b/windowsazure/archive/2012/10/25/using-trace-in-windows-azure-cloud-applications-1.aspx – RickAndMSFT 2012-12-28 20:30:57

回答

0

這可能與在本地dev結構模擬器中運行有關。您應該嘗試在實際的Windows Azure Compute實例中運行此操作,以查看問題是否消失。

+0

我是現在部署。 – Maghis 2011-05-25 00:10:40

+0

在實際天藍色部署上的相同行爲:( – Maghis 2011-05-25 00:29:27

0

您使用的是什麼SDK?從1.3 SDK及更高版本開始的診斷監視器作爲後臺任務運行,因此您不應該在其上啓動Start。相反,你應該配置要麼你.wadcfg文件或程序,像這樣:

http://convective.wordpress.com/2010/12/01/configuration-changes-to-windows-azure-diagnostics-in-azure-sdk-v1-3/

注意,關於1.3的錯誤博客作者會談,但已被固定在1.4。

+0

我正在使用1.4。我已經試過那個(從http://blog.bareweb.eu/2011/03/implementing-azure-diagnostics-with-sdk-v1 -4 /),我得到了同樣的行爲。 – Maghis 2011-05-25 16:49:12