ApplicationInsights OperationId 为空

2023-12-09

我正在实现自定义 ApplicationInsights 记录器,并且能够在跟踪、异常和请求等写入位置写入所有日志,但跟踪和异常中的 OperationId 为空。

昨天我使用相同的代码并在所有表中获取OperationId。之后我玩了多线程场景,但效果不佳。现在我再次开始使用简单的代码,但看不到OperationId。

我的代码有什么问题吗?

public static class Function2
{
    private static TelemetryClient telemetryClient = new TelemetryClient(new Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration
    {
        InstrumentationKey = "********-****-********-****"
    });

    [FunctionName("Function2")]
    public static HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)]HttpRequestMessage req)
    {
        RequestTelemetry requestTelemetry = new RequestTelemetry { Name = "Function2" };
        var operation = telemetryClient.StartOperation(requestTelemetry);

        telemetryClient.TrackTrace("trace message", SeverityLevel.Error);
        telemetryClient.TrackException(new System.Exception("My custom exception"));


        operation.Telemetry.Success = true;
        telemetryClient.StopOperation(operation);

        return req.CreateResponse(HttpStatusCode.OK, "Hello ");
    }
}

这个问题非常棘手,这是由于仪器密钥设置造成的。 如果你使用Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration(您在代码中使用)设置检测密钥,然后应用程序见解中不会出现 operation_id 。

因此,请使用这行代码来设置检测密钥:

TelemetryClient telemetryClient = new TelemetryClient() { InstrumentationKey = "your_key" };

我的示例代码如下,仅更改instrumentation key设置方法:

public static class Function1
{

    private static TelemetryClient telemetryClient = new TelemetryClient() { InstrumentationKey = "your_key" };

    [FunctionName("Function2")]
    public static HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)]HttpRequestMessage req)
    {
        RequestTelemetry requestTelemetry = new RequestTelemetry { Name = "Function211" };
        var operation = telemetryClient.StartOperation(requestTelemetry);

        telemetryClient.TrackTrace("trace message 111", SeverityLevel.Error);
        telemetryClient.TrackException(new System.Exception("My custom exception 111"));

        operation.Telemetry.Success = true;
        telemetryClient.StopOperation(operation);

        return req.CreateResponse(HttpStatusCode.OK, "Hello ");
    }
}

After executed, you can see the operation_id for trace / exception in azure portal: enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ApplicationInsights OperationId 为空 的相关文章

  • Directory.Delete 之后 Directory.Exists 有时返回 true ?

    我有非常奇怪的行为 我有 Directory Delete tempFolder true if Directory Exists tempFolder 有时 Directory Exists 返回 true 为什么 可能是资源管理器打开了
  • 为什么 int8_t 和用户通过 cin 输入显示奇怪的结果[重复]

    这个问题在这里已经有答案了 一小段代码让我发疯 但希望你能阻止我跳出窗外 看这里 include
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • 提交后禁用按钮

    当用户提交付款表单并且发布表单的代码导致 Firefox 中出现重复发布时 我试图禁用按钮 去掉代码就不会出现这个问题 在firefox以外的任何浏览器中也不会出现这个问题 知道如何防止双重帖子吗 System Text StringBui
  • 复制目录内容

    我想将目录 tmp1 的内容复制到另一个目录 tmp2 tmp1 可能包含文件和其他目录 我想使用C C 复制tmp1的内容 包括模式 如果 tmp1 包含目录树 我想递归复制它们 最简单的解决方案是什么 我找到了一个解决方案来打开目录并读
  • 获取两个工作日之间的天数差异

    这听起来很简单 但我不明白其中的意义 那么获取两次之间的天数的最简单方法是什么DayOfWeeks当第一个是起点时 如果下一个工作日较早 则应考虑在下周 The DayOfWeek 枚举 http 20 20 5B1 5D 3a 20htt
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • 我可以使用 moq Mock 来模拟类而不是接口吗?

    正在经历https github com Moq moq4 wiki Quickstart https github com Moq moq4 wiki Quickstart 我看到它 Mock 一个接口 我的遗留代码中有一个没有接口的类
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • C#:帮助理解 UML 类图中的 <>

    我目前正在做一个项目 我们必须从 UML 图编写代码 我了解 UML 类图的剖析 但我无法理解什么 lt
  • C# HashSet 只读解决方法

    这是示例代码 static class Store private static List
  • 将 MQTTNet 服务器与 MQTT.js 客户端结合使用

    我已经启动了一个 MQTT 服务器 就像this https github com chkr1011 MQTTnet tree master例子 该代码托管在 ASP Net Core 2 0 应用程序中 但我尝试过控制台应用程序 但没有成
  • 不同类型指针之间的减法[重复]

    这个问题在这里已经有答案了 我试图找到两个变量之间的内存距离 具体来说 我需要找到 char 数组和 int 之间的距离 char data 5 int a 0 printf p n p n data 5 a long int distan
  • 方法优化 - C#

    我开发了一种方法 允许我通过参数传入表 字符串 列数组 字符串 和值数组 对象 然后使用这些参数创建参数化查询 虽然它工作得很好 但代码的长度以及多个 for 循环散发出一种代码味道 特别是我觉得我用来在列和值之间插入逗号的方法可以用不同的
  • C++ 条件编译

    我有以下代码片段 ifdef DO LOG define log p record p else define log p endif void record char data 现在如果我打电话log hello world 在我的代码中
  • WebSocket安全连接自签名证书

    目标是一个与用户电脑上安装的 C 应用程序交换信息的 Web 应用程序 客户端应用程序是 websocket 服务器 浏览器是 websocket 客户端 最后 用户浏览器中的 websocket 客户端通过 Angular 持久创建 并且
  • 当我使用 OpenSSL1.1.0g 根据固定的 p 和 g 值创建 Diffie Hellman 密钥协议密钥时,应该执行哪些检查?

    您好 我尝试通过这段代码使用修复 p 和 g 参数来制作 Diffie Hellman Keysanswer https stackoverflow com a 54538811 4706711 include

随机推荐

  • Athena/Presto - UNNEST 映射到列

    假设我有一张这样的桌子 表 qa list id question id question answer 1 100 question1 answer 2 101 question2 answer 3 102 question3 answe
  • WordPress:列出没有评论的帖子

    我有一个简单的页面 我想显示尚未评论的帖子列表 我该怎么做 我想我可以将一些参数添加到 query posts 中 谢谢 您可以设置过滤器和查询变量来修改查询帖子的 SQL 将其添加到您的主题中functions php file func
  • 实现 delaunay 三角剖分的 Bowyer-Watson 算法

    我正在尝试实现以下 Bowyer Watson 算法来实现 Delaunay 三角剖分 function BowyerWatson pointList pointList is a set of coordinates defining t
  • 在 ruby​​ 中使用单引号与双引号相比是否有性能提升?

    您知道在 ruby 中使用双引号代替单引号是否会以任何有意义的方式降低 ruby 1 8 和 1 9 中的性能吗 所以如果我输入 question my question 它比更快吗 question my question 我想象 rub
  • R readHTMLTable 无法加载外部实体[重复]

    这个问题在这里已经有答案了 当我在笔记本电脑上运行该线路时 table500 lt readHTMLTable http en wikipedia org wiki List of S 26P 500 companies 1 它获取数据 当
  • Android:如何处理按钮点击

    在非 Java 和非 Android 领域拥有丰富的经验 我正在学习 Android 我对不同的领域有很多困惑 其中之一是如何处理按钮点击 至少有 4 种方法可以做到这一点 它们被简要列出here 为了保持一致性 我将列出它们 拥有以下成员
  • 有没有人尝试过在 Ubuntu(最好是 Ubuntu 9)上从源代码安装 ruby​​ 和 ruby​​gems?

    Ruby on Rails 网站建议在 Linux 下从源代码安装 Ruby 我在全新安装的 Ubuntu 9 上从源代码构建 ruby 时遇到了许多 C 库问题 我在网上找到的有关在 Ubuntu 上安装 ruby 的所有说明都涉及使用预
  • 如何将日期“缩短”半个月[关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 函数 cut 提供了一种按 月 周 季度 剪切日期数据的简单方法 但我想按半个月剪切日期数据 有没有简单的方法可以做到这一点 假设您指的是天文学意义上的半个月 其中第 1 15 天属于
  • 如何将数组存储为 Perl 散列中的值?

    我正在尝试在 Perl 中创建一个散列 其值是数组 就像是 my array split 1 2 my hash a gt array 令人惊讶的是 这个报告 使用 Data Dumper VAR1 a gt 1 2 gt undef 这一
  • Firebase 或 SQLite [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我是 Android 开发新手 目前正在开发一个使用 SQLite 作为数据库的应用程序 问题是 我想与使用该应用程序的其他人共享信息 据我所知 单
  • 如何推迟内联Javascript?

    我有以下 html 代码
  • 停止模式 UIViewController 旋转

    模态UIViewController的父级自动旋转 但是当模态 VC 启动时 我只希望它以纵向显示而不是可旋转 我试过简单地返回 NOshouldAutorotate 在模态VC中 但没有欢乐 支持 iOS 5 非常感谢任何帮助 基本上 如
  • 如何创建类似于 Xcode 属性面板的选项卡式面板

    我正在尝试创建一个类似于 Xcode 属性面板的选项卡式面板 但标准选项卡式面板似乎具有不同的外观和感觉 无法更改它 应使用哪些控件来创建外观相似的选项卡式面板 编辑 我没有使用 NSTabViewController 只是有 TabVie
  • Mongo 用户定义函数和 MapReduce

    mongodb 有没有办法创建用户定义的 Javascript 函数 我在客户端有几个 Map Reduce 函数 我想在其他 MR 函数中使用它们 例如 多个 MR 函数可以计算各种平均值 我希望能够像这样使用它们 function re
  • TypeScript 装饰器和循环依赖

    考虑使用装饰器的相互依赖代码示例 如下 现在考虑以下工作流程 是的 我确实想传递实际导出的类 因为我稍后需要使用它们 应用程序导入并运行Parent ts Test Child 导致应用程序导入Child ts装修时 注 班级Parent代
  • 合并来自 git 存储库外部的更改

    我正在与该国另一边的另一位开发人员合作 他是我们项目的负责人 并且没有使用正式的版本控制系统 就我而言 我正在 git 中跟踪我的所有代码 我最近开始为主项目做出贡献 并且也希望能够跟踪其他开发人员的更新 当我收到他更新的代码时 它通常是
  • 在应用 LIMIT 之前获取结果计数的最佳方法

    当对来自数据库的数据进行分页时 您需要知道将有多少页来呈现页面跳转控件 目前我通过运行查询两次来做到这一点 一次包装在count 确定总结果 第二次应用限制以仅返回当前页面所需的结果 这看起来效率很低 有没有更好的方法来确定之前会返回多少结
  • opencv中的缩放和旋转模板匹配

    I want to use a template image to search target in the another image But the target have scale and rotation change also
  • 使用 jquery 预加载图像数组

    我正在使用 jQuery 从 php 数组构建图像数组 我想循环浏览这些图像 预加载它们 同时显示一些加载 gif 直到加载所有图像 目前 我已经尝试了很多方法来这样做 页面的其余部分似乎总是在继续加载 因此图像正在被预加载 但不是在页面加
  • ApplicationInsights OperationId 为空

    我正在实现自定义 ApplicationInsights 记录器 并且能够在跟踪 异常和请求等写入位置写入所有日志 但跟踪和异常中的 OperationId 为空 昨天我使用相同的代码并在所有表中获取OperationId 之后我玩了多线程