【问题标题】:Application Insights in Service Fabric?Service Fabric 中的应用程序洞察力?
【发布时间】:2016-09-17 20:14:12
【问题描述】:

我需要在我正在开发的 Azure Service Fabric 应用程序中添加性能日志记录。我尝试遵循以下指南,该指南看起来非常简单明了:

https://github.com/Microsoft/azure-content/blob/master/articles/service-fabric/service-fabric-diagnostics-application-insights-setup.md

然而,我在 NuGet 上找不到包 Microsoft.ServiceFabric.Telemetry.ApplicationInsights。由于那篇文章是从去年开始的,可能情况发生了很大变化,但我不确定为 Azure Service Fabric 应用程序配置 Insights 是否与任何 ASP.Net 应用程序有很大不同(我可以从文章中暗示可能是有点不同)。

有人可以为我指出正确的方向吗?

谢谢。

【问题讨论】:

标签: c# azure azure-service-fabric azure-application-insights


【解决方案1】:

NuGet 包位于此处:https://www.nuget.org/packages/Microsoft.ServiceFabric.Telemetry.ApplicationInsights/

确保将您的搜索配置为包含“预发布”包。

【讨论】:

  • 知道这个包裹去哪儿了吗?我似乎找不到它(我正在寻找“全部”,包括“预发布”)
【解决方案2】:

您可能正在https://github.com/Microsoft/ApplicationInsights-ServiceFabric 上寻找更新后的 GitHub 存储库。这列出了根据您的用例使用的两个 NuGet 包:

【讨论】:

    【解决方案3】:

    我们确实提出了自己的集成,包括对依赖项跟踪和实时指标流的支持。

    基本上,您需要做的是手动将 Application Insights 所需的依赖项和性能收集器添加到您的应用程序中,如下所示:

            var configuration = new TelemetryConfiguration()
            {
                InstrumentationKey = aiKey
            };
    
            var module = new DependencyTrackingTelemetryModule();
            module.Initialize(configuration);
    
            QuickPulseTelemetryProcessor processor = null;
    
            configuration.TelemetryProcessorChainBuilder
                .Use(next =>
                {
                    processor = new QuickPulseTelemetryProcessor(next);
                    return processor;
                })
                .Build();
    
            var quickPulse = new QuickPulseTelemetryModule();
            quickPulse.Initialize(configuration);
            quickPulse.RegisterTelemetryProcessor(processor);
    

    然后,要记录和关联前端服务和后端有状态/无状态服务的请求,您需要根据这篇文章的指示拦截对 SF 服务的调用:How to add message header to the request when using default client of Azure service fabric?

    Web Api 请求可以使用一些自定义中间件记录到 Application Insights,编写起来并不难。

    我们创建了一个代码存储库,其中概述了一个工作示例,可以在 https://github.com/DeHeerSoftware/Azure-Service-Fabric-Logging-And-Monitoring 处找到该示例

    集成所有内容的代码非常多,因此请查看提供的存储库。它会给你一个起点。

    【讨论】:

      【解决方案4】:

      仍然可以使用包管理器控制台安装包:

      Install-Package Microsoft.ServiceFabric.Telemetry.ApplicationInsights
       -Pre -Version 0.3.193-preview2 
      

      但是,请参阅重要说明“所有者已取消列出此软件包。这可能意味着该软件包已被弃用或不应再使用。”​​

      https://www.nuget.org/packages/Microsoft.ServiceFabric.Telemetry.ApplicationInsights/

      这种集成似乎还处于早期阶段。此外,它目前所做的只是将 ETW 事件路由到 App Insights。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-11-10
        • 1970-01-01
        • 1970-01-01
        • 2020-11-17
        • 2020-08-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多