【问题标题】:Azure Functions, NodeJS and Application InsightsAzure Functions、NodeJS 和 Application Insights
【发布时间】:2021-05-04 02:05:31
【问题描述】:

我写了一些简单的函数并启用了Application Insights

它全部显示为已连接,我可以看到它正在跟踪 http 状态,例如我收到失败的请求计数和服务器响应时间等。

我知道我可以使用以下代码将应用程序洞察添加到节点

let appInsights = require("applicationinsights");
appInsights.setup("[your ikey]").start();

但我希望没有这个也能正常工作,当我使用日志流时,我可以看到该函数正在输出日志

但是当我使用应用洞察时,我在任何日志表中都看不到任何内容

我是否需要通过代码向我的函数添加见解,或者我缺少一些秘密配置选项。

【问题讨论】:

  • 您好,先生,您的意思是您想在不添加任何代码的情况下为您的由 nodejs 编写的函数启用应用程序洞察力吗?如果是这样,您可以在功能的刀片中启用应用程序洞察力。之后,它将要求您创建一个新的 appinsight 实例或选择一个现有的实例。而且我试了一下,当我调用新创建的httptrigger时,可以得到requests表中的记录。i.stack.imgur.com/5arER.png
  • 我可以请求,而不是来自上下文或错误的跟踪。但是...我添加了应用程序洞察节点模块并重新创建了应用程序洞察资源,它开始工作,例如它记录了跟踪和带有完整堆栈跟踪的完整错误。我不确定重新创建应用程序洞察是否修复它或添加节点模块
  • 我分享了一些相关的文件,我认为你的情况很好。如果您还有其他问题,请随时在此处添加评论,谢谢您的回复先生:)

标签: node.js azure-functions


【解决方案1】:

将应用程序洞察模块添加到您的节点项目中以实现您的功能的监控功能也是一个好主意。有代码和无代码都是不错的选择。

在我看来,代码和无代码监视器之间最大的区别是custom telemetry data。但我认为在大多数情况下,收集的默认信息足以满足日常使用,official doc 说:

Application Insights 收集日志、性能和错误数据,并 自动检测性能异常。

所以我认为,在添加 appinsights 模块并重新创建新的 appinsights 实例后,您可以获得跟踪和错误消息,这对您来说没问题。你也可以尝试使用我在评论中提到的无代码配置(azure portal->你的nodejs编写的函数->应用洞察->启用->创建新资源)

【讨论】:

  • 我做了这个将洞察模块添加到您的节点项目中并且它确实开始工作了,所以我认为context.log 工作,它需要节点模块存在但您不需要任何代码来设置应用洞察。
  • 如果您将洞察模块添加到您的 nodejs 程序中,您需要在您的代码中添加检测密钥,请参阅this tutorial。如果你不想在你的程序中添加任何代码,你可以参考this tutorial。 Azure函数也是一种应用服务。
猜你喜欢
  • 2020-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-26
  • 2017-06-13
相关资源
最近更新 更多