1 回答

TA貢獻1906條經驗 獲得超3個贊
TelemetryModules 跟蹤 HTTP 請求中的各種數據,并將其作為 RequestTelemetry 發送到 AI 服務器。為了跟蹤任何自定義 HTTP 參數,必須通過實現 WebTelemetryModule 和 TelemetryModule 接口來創建一個新的 TelemetryModule,該接口是應用洞察 SDK 的一部分。
這是示例實現。
WebTelemetry 模塊是可以在請求生命周期中訪問 HttpRequest 和 HttpResponse 對象的模塊?;旧?,AI 通過注冊 Servlet fitler 來收集請求遙測數據,并且在處理實際請求之前調用 onBeginRequest,在處理請求之后調用 onEndRequest。
現在在 ApplicationInsights.xml 文件中注冊模塊
<TelemetryModules>
<Add type="com.ai.demo.CustomHttpTelemetryModule"/>
<Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebRequestTrackingTelemetryModule"/>
<Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebSessionTrackingTelemetryModule"/>
<Add type="com.microsoft.applicationinsights.web.extensibility.modules.WebUserTrackingTelemetryModule"/>
</TelemetryModules>
請注意,我已經在所有默認遙測之前注冊了 TelemetryModule,因為如果您在 WebRequestTelemetryModule 之后注冊遙測,那么您在 OnEndRequest 中設置的任何內容都不會被傳遞,因為 WebRequestTelemetryModule 在其 onEndRequest 方法中生成 trackRequest。在 trackRequest() 調用后所做的任何更改都不會反映在 AI 門戶中。
TelemetryModules 按照它們在 ApplicationInsights.xml 文件中定義的順序執行。
集成 App Insights 非常簡單,相關文檔可以在此處找到。
https://docs.microsoft.com/en-us/azure/azure-monitor/app/java-get-started
希望能幫助到你。
添加回答
舉報