【问题标题】:Timer triggered Azure function Activity.Current is null计时器触发 Azure 函数 Activity.Current 为 null
【发布时间】:2021-06-23 13:39:15
【问题描述】:

场景

我已经关注了这个tutorial 并在net core 3.1 中创建了azure function v3 来监控我的Web 应用程序。 U 使用 Visual Studio 而不是在门户中开发它。

问题

不幸的是,我收到了System.NullReferenceException: Object reference not set to an instance of an object.System.Diagnostics.Activity.Current.get returned null.

availability.Context.Operation.ParentId = Activity.Current.SpanId.ToString();

如何解决?

【问题讨论】:

  • 请问您为什么要按照本教程启用监视器?在我看来,如果您想创建一个函数来监控您的 Web 应用程序,您可以在创建 azure 函数时启用应用洞察力,它将提供许多功能来从函数中捕获遥测数据。
  • 它可以设置可用性nij azure。简单的 ping 对我的应用程序来说是不够的。我需要知道我对已发送文件的授权请求是否正确执行

标签: azure-functions azure-application-insights availability


【解决方案1】:

嗯……我觉得教程的代码可能有错误,我们可以将出错的两行注释掉。

这个doc说:

Activity应该通过调用构造函数来创建,配置为 必要的,然后从 Start 方法开始,该方法维护 活动和集合的父子关系 Activity.Current。

这就是availability.Context.Operation.ParentId = Activity.Current.SpanId.ToString(); 突发错误的原因。并专注于这一行代码, 这条线有意义吗?所以在我的测试中,我把这行和后面的那行做了注释,代码执行得很好。

【讨论】:

  • 这个答案不完整。使用此示例,遥测 ID 为空。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-22
  • 1970-01-01
相关资源
最近更新 更多