【问题标题】:How to view trace logging in Azure Service Fabric如何在 Azure Service Fabric 中查看跟踪日志记录
【发布时间】:2018-09-07 13:08:26
【问题描述】:

我有一个现有的应用程序,我正在从 Azure Web 应用程序迁移到 Service Fabric。我有很多使用 Microsoft 的 Microsoft.Extensions.Logging.ILogger 抽象的应用程序特定的日志记录代码,它给了适当的提供者(控制台、天蓝色的 Web 应用程序)给了我控制台和 LogStream 输出。效果很好。

使用 Service Fabric 时查看这些应用程序日志的最简单方法是什么?

【问题讨论】:

    标签: azure azure-service-fabric


    【解决方案1】:

    您可以使用EventFlow 来捕获日志并转发到ApplicationInsights 等目标存储。 您仍然可以使用现有的 ILogger 或将其替换为使用 ETW。

    例如,如果您想将日志写入跟踪,并且它们会捕获跟踪信息以转发到另一个存储,您必须:

    添加对包Microsoft.Diagnostics.EventFlow的引用

    创建 eventFlowConfig.json 文件以定义输入和输出:

    {
        "inputs": [
            {
                "type": "Trace",
                "traceLevel": "Warning"
            }
        ],
        "outputs": [
            {
                "type": "ApplicationInsights",
                "instrumentationKey": "00000000-0000-0000-0000-000000000000"
            }
        ]
    }
    

    用 EventFlow 管道包装你的 webapp 初始化:

      using (var pipeline = DiagnosticPipelineFactory.CreatePipeline("eventFlowConfig.json"))
        {
            //App initialization goes here
            System.Diagnostics.Trace.TraceWarning("EventFlow is working!");
            Console.ReadLine();//this will be replaced by your webHost start
        }
    

    您可以有多个输入,因此如果您还想监控 ETW 事件,您也可以将其添加到输入列表中。

    【讨论】:

      猜你喜欢
      • 2023-04-06
      • 2019-09-27
      • 1970-01-01
      • 2020-09-30
      • 2017-12-09
      • 2023-04-10
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      相关资源
      最近更新 更多