Service Fabric中的应用见解?

时间:2016-05-20 14:04:51

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

我需要在我正在开发的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应用程序完全不同(我可以从文章中暗示可能有点不同。)

有人能指出我正确的方向如何正确地做到这一点吗?

谢谢。

4 个答案:

答案 0 :(得分:3)

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

确保将搜索配置为包含“预发行”包。

答案 1 :(得分:2)

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

答案 2 :(得分:1)

我们确实提出了自己的集成,包括对依赖性跟踪和Live Metrics Stream的支持。

基本上您需要做的是手动将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

找到的工作示例。

集成所有内容需要相当多的代码,所以请查看提供的存储库。它会给你一个起点。

Live Metrics Stream

Dependency Tracking

答案 3 :(得分:0)

仍然可以使用Package Manager控制台安装软件包:

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

但是,请参阅重要提示“所有者已将此软件包列入未列出状态。这可能意味着该软件包已弃用或不应再使用。”​​

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

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