首页 > 解决方案 > Application Insights:节点 js 中的 CorrelationIdManager 错误

问题描述

我在我的节点 js 应用程序上使用应用程序洞察力,并且不断收到此错误。你能帮我么

ApplicationInsights:CorrelationIdManager [ { Error: unable to verify the first certificate
at TLSSocket.<anonymous> (_tls_wrap.js:1105:38)
at ZoneDelegate.invokeTask (C:\src\xyz\xyz\xyz\node_modules\zone.js\dist\zone-node.js:275:35)
at Zone.runTask (C:\src\xyz\xyz\xyz\node_modules\zone.js\dist\zone-node.js:151:47)
at TLSSocket.ZoneTask.invoke (C:\src\xyz\xyz\xyz\node_modules\zone.js\dist\zone-node.js:345:33)
at emitNone (events.js:106:13)
at TLSSocket.emit (events.js:208:7)
at TLSSocket._finishInit (_tls_wrap.js:639:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:469:38) code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE' } ]

标签: node.jsazureazure-application-insights

解决方案


由于 Application Insights 后端出现暂时性问题,您会看到此错误,但该错误不应是致命的,您的应用程序应继续按预期工作(尽管打印了此消息)。

在适用于 Node.js 的 Application Insights SDK 的默认配置中,会重试与后端的通信 - 因此您应该能够忽略此错误,并且仍会在 Azure 门户中看到遥测数据。

如果您更改了默认设置,您需要确保设置的设置是.setUseDiskRetryCaching(true)例如:

appInsights.setup("key")
    .setUseDiskRetryCaching(true)
    .start()

如果您想抑制来自 SDK 的此类消息,您可以禁用内部日志记录:(请注意,您可能还会抑制其他错误)

appInsights.setup("key")
    .setUseDiskRetryCaching(true)
    .setInternalLogging(false, false)
    .start()

如果您对这个问题的历史以及它自发发生的原因感到好奇,这里的 GitHub 上有一个长期存在的问题:https ://github.com/Microsoft/ApplicationInsights-node.js/issues/180


推荐阅读