簡體   English   中英

您如何將Application Insights集成到Service Fabric中?

[英]How do you integrate Application Insights into Service Fabric?

我目前使用Azure Application Insights登錄所有Web API和MVC應用程序。 顯然,此日志記錄的大部分是自動的,這非常好。 對於我要手動捕獲的事件,我實現了一個“ LoggingUtility”,其中包含諸如“ LogError”和“ LogInformation”之類的方法,它們僅調用Trace.TraceError和Trace.TraceInformation(這種想法是可以將日志記錄的實現更改為一個放置在將來)。 然后,跟蹤將被Application Insights捕獲。

我已經開始在Azure Service Fabric中開發一些狀態服務,但似乎找不到使用應用程序見解的方法。 我偶然發現了幾篇文章,指出了我指向預發布但已被刪除的NuGet程序包( https://www.nuget.org/packages/Microsoft.ServiceFabric.Telemetry.ApplicationInsights/ )。

當然,Service Fabric模板會生成“ ServiceEventSource”,但首先我看不到它對Application Insights的用處,並且理想情況下,我希望所有日志記錄都通過“ LoggingUtility”類完成。

是否可以將Application Insights集成到Service Fabric中? 如果是這樣,我是否可以繼續使用Trace(通過“ LoggingUtility”類)?

您有兩個選擇:1.在LoggingUtility類中使用Application Insights SDK將信息直接發送到AI。2.在SF項目模板中使用提供的EventSource類,使用Windows Azure診斷(WAD)將Eventsource跟蹤轉發到AI。 您可以將該類修改為LoggingUtility類的實現。

考慮到您正在Azure中運行SF群集,因此第二種方法是當前建議,因為Service Fabric系統服務事件也正在使用事件跟蹤。

要將Azure診斷配置為AI,請按照本文概述的步驟進行操作: https : //azure.microsoft.com/zh-cn/blog/azure-diagnostics-integration-with-application-insights/

請注意,本文針對的是Cloud Services和VM,但僅使用VM Scale Set代替VM來配置Azure診斷。 那應該工作。

不再支持NuGet軟件包: https ://social.msdn.microsoft.com/Forums/zh-CN/f0f1ad78-4d83-48e5-b1da-4a9f0eddb9b2/application-insights-for-service-fabric?forum =AzureServiceFabric

我們使用了新的Microsoft.Extensions.Logging並編寫了一個見解記錄器-它通過Trace獲取服務結構消息,我們還提取了所有未添加的ETW內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM