針對Node.js應用程式和服務的 Application Insights 監視進行疑難解答
本文討論疑難解答步驟,以修正與 Application Insights 監視Node.js應用程式和服務相關的一般問題。
疑難排解檢查清單
疑難解答步驟 1:測試應用程式主機與擷取服務之間的連線能力
Application Insights SDK 和代理程式會將遙測傳送至我們的擷取端點作為 REST 呼叫。 若要測試從 Web 伺服器或應用程式主電腦到擷取服務端點的連線,請使用 PowerShell 的原始 REST 用戶端,或執行 curl 命令。 如需詳細資訊,請參閱針對 Azure 監視器 Application Insights 中遺失的應用程式遙測進行疑難排解。
疑難解答步驟 2:設定自我診斷
「自我診斷」是指 Application Insights Node.js SDK 中的內部記錄專案。
若要識別並診斷影響 Application Insights 的問題,您可以啟用「自我診斷」。自我診斷是從 Application Insights Node.js SDK 收集內部記錄專案。
根據預設,Application Insights Node.js SDK 記錄到警告層級的控制台。 下列程式代碼示範如何啟用偵錯記錄,併產生內部記錄的遙測:
let appInsights = require("applicationinsights");
appInsights.setup("<Your-Connection-String>")
.setInternalLogging(true, true) // Enable both debug and warning logging.
.setAutoCollectConsole(true, true) // Generate trace telemetry for winston, bunyan, and console logs.
.start();
另外還有數個環境變數可用來設定自我診斷組態。
您可以藉由設定環境變數來 APPLICATION_INSIGHTS_ENABLE_DEBUG_LOGS
啟用偵錯記錄。 若要停用警告,請設定 APPLICATION_INSIGHTS_DISABLE_WARNING_LOGS
環境變數。
您可以藉由 APPLICATIONINSIGHTS_LOG_DESTINATION
設定環境變數,將記錄放入本機檔案中。 支援的值為 file
與 file+console
。 根據預設,名為 applicationinsights.log 的 檔案會在暫存目錄中產生,並且包含所有記錄專案。 暫存目錄會根據下表命名並找到。
作業系統 | 目錄位置 |
---|---|
Unix/Linux | /tmp |
Windows | USERDIR\AppData\Local\Temp |
您可以設定 APPLICATIONINSIGHTS_LOGDIR
環境變數來設定記錄目錄的特定位置(而不是暫存目錄)。
下列程式代碼示範如何在 Node.js 中設定記錄目錄的自我診斷設定:
process.env.APPLICATIONINSIGHTS_LOG_DESTINATION = "file";
process.env.APPLICATIONINSIGHTS_LOGDIR = "C:\\applicationinsights\\logs"
// Application Insights SDK setup code follows.
協力廠商資訊免責聲明
本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。
協力廠商連絡資訊免責聲明
Microsoft 提供協力廠商連絡資訊,以協助您尋找有關此主題的其他資訊。 此連絡資訊可能會變更而不另行通知。 Microsoft 不保證協力廠商連絡資訊的準確性。
與我們連絡,以取得說明
如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以向 Azure 意見反應社群提交產品意見反應。