4

我正在尝试向TraceSourceAzure 模拟器(控制台)窗口显示一些日志记录信息。

不显示任何TraceSource行。只有股票Trace行和各种低级别的天蓝色消息。

这是我回购的步骤,包括代码片段:

  1. 文件 -> 新建 -> 云服务 (SDK 2.0) -> (添加工作者角色)。
  2. 将 TraceSource 添加到 WorkerRole。
  3. 使用跟踪数据更新 app.config。
  4. 播放/发布。

注意所有其他默认代码都在那里,例如.csfg说使用UseDevelopmentStorage=true

工人角色代码。

这是添加TraceSource了我的编码的股票默认代码...

using System.Diagnostics;
using System.Net;
using System.Threading;
using Microsoft.WindowsAzure.ServiceRuntime;

namespace WorkerRole1
{
    public class WorkerRole : RoleEntryPoint
    {
        private TraceSource _traceSource;

        public override void Run()
        {
            _traceSource.TraceEvent(TraceEventType.Verbose, 0,
                                    "********************** 111111111111111111111 ******************* ");

            // This is a sample worker implementation. Replace with your logic.
            Trace.TraceInformation("WorkerRole1 entry point called", "Information");

            while (true)
            {
                _traceSource.TraceEvent(TraceEventType.Verbose, 0,
                                        "********************** 222222222222222222222 ******************* ");
                Thread.Sleep(10000);
                Trace.TraceInformation("Working", "Information");
            }
        }

        public override bool OnStart()
        {
            // Set the maximum number of concurrent connections 
            ServicePointManager.DefaultConnectionLimit = 12;

            // For information on handling configuration changes
            // see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.


            _traceSource = new TraceSource("Azure.WorkerRole", SourceLevels.All);

            return base.OnStart();
        }
    }
}

现在 app.config...

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

    <system.diagnostics>

        <sharedListeners>
            <add name="AzureListener"
                 type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
                <filter type="" />
            </add>
        </sharedListeners>

        <sources>
            <source name="Azure.WorkerRole" switchValue="Verbose" >
                <listeners>
                    <add name="AzureListener" />
                </listeners>
            </source>
        </sources>

    </system.diagnostics>
</configuration>

而已!运行并看到traceSource没有显示的东西:(Trace.Information东西是.. 但我不想使用旧Trace方法,因为建议用 usingTraceSource代替。

样本输出。请注意,仅Trace添加了行(以及低级别的天蓝色的东西)。

在此处输入图像描述

4

0 回答 0