诊断/日志存储表在哪里?

时间:2010-11-13 00:53:31

标签: azure azure-table-storage

我在向Azure部署WebRole(WCF服务)时遇到问题。我的WebRole持续显示至少30分钟,直到我中止它。我通过Visual Studio 2010进行部署。我正在寻找一些跟踪信息,并且有一些博客指向了名为WADInfrastructureLogsTableWADLogsTable的存储表。

我已使用我的存储帐户设置配置设置,如下所示:

 <ConfigurationSettings>
  <Setting name="DiagnosticsConnectionString"
    value="DefaultEndpointsProtocol=https;AccountName=sandsofttestservice;AccountKey=HgPjkzx+mjqgoDTO8SBNB3B4hdARuibWTOHrXg4BpxRKJfRZ/s4abVIoD5lOIW0LkoD0CoMb0i0GiTXA483MDQ==" />
</ConfigurationSettings>

我的存储空间帐户中根本没有表格。甚至在我成功部署 Hello World 应用程序之后。我的Blob容器包含一个vsdeploy-和一个wad-control-container,我有4个队列。

如何创建这些表?

    public override bool OnStart()
    {
        var dm = DiagnosticMonitor.GetDefaultInitialConfiguration();
        dm.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(5);
        dm.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
        DiagnosticMonitor.Start("DiagnosticsConnectionString", dm);

        Trace.WriteLine("OnStart");
        // For information on handling configuration changes
        // see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.
        RoleEnvironment.Changing += RoleEnvironmentChanging;

        return base.OnStart();
    }

3 个答案:

答案 0 :(得分:2)

您是否为Logs表设置了转移计划?也就是说,所有日志记录都会缓存在每个实例中,您需要明确要求将这些数据定期保存在表存储中。这是WADLogsTable的一个简单示例:

        var dm = DiagnosticMonitor.GetDefaultInitialConfiguration();
        dm.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(5);
        dm.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
        DiagnosticMonitor.Start("DiagnosticsConnectionString", dm);

设置完成后,您应该会在一段时间后看到WADLogsTable表。

您还需要设置转移期并过滤其他每种类型:

  • 事件日志
  • 诊断基础架构日志
  • 目录
  • 效果指标

答案 1 :(得分:2)

我有类似的问题。我将“转移”期间设置为1分钟,但不会转移。但是,在我将其更新为5分钟后,我开始在WADLogsTable中看到跟踪消息。不知道为什么会有所作为,并且没有找到任何关于最短转移期的文件,但是5分钟对我有效。

还要确保您的Web /辅助角色中有适当的Trace.Writeline()语句。

答案 2 :(得分:1)

Soren - 如果您还没有,则应该重新生成存储帐户访问密钥。它在您的原始帖子中列出了您的配置详细信息。

帮助诊断问题的另一个选择是Intellitrace。如果您使用的是Visual Studio 2010 Utimate,则可以在部署中启用Intellitrace。这将允许您下载Intellitrace日志文件,您可以从中查看有关应用程序部署和启动的一些非常详细的信息。可能会产生一些异常或其他错误,可能导致延长的“忙碌”状态。