我对 Azure 跟踪日志有疑问。我有一个工人角色,我想记录某些事件,
当我们在本地部署应用程序时,我们可以使用 Cerebrata Cerebrata Cloud Storage 读取 Trace。但是当我们部署到留存或生产时,我们不能。我们使用相同的存储帐户。
工人代码:
public override bool OnStart()
{
// Set the maximum number of concurrent connections
ServicePointManager.DefaultConnectionLimit = 12;
DiagnosticMonitorConfiguration diagnosticMonitorConfiguration = DiagnosticMonitor.GetDefaultInitialConfiguration();
diagnosticMonitorConfiguration.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1.0);
diagnosticMonitorConfiguration.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
CloudStorageAccount cloudStorageAccount = CloudStorageAccount.DevelopmentStorageAccount;
DiagnosticMonitor diagnosticMonitor = DiagnosticMonitor.Start(cloudStorageAccount, diagnosticMonitorConfiguration);
return base.OnStart();
}
public override void Run()
{
// This is a sample worker implementation. Replace with your logic.
Trace.WriteLine("UpdateWorker entry point called", "Information");
while (true)
{
Thread.Sleep(5000);
Trace.WriteLine("Working", "Information" + DateTime.Now);
}
}
应用程序配置
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<trace>
<listeners>
<add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
name="AzureDiagnostics">
<filter type="" />
</add>
</listeners>
</trace>
</system.diagnostics>
</configuration>
我们应该看哪里?这段代码有问题吗?
谢谢!