如何保证 Activity 不为 null

💡 原文中文,约4000字,阅读约需10分钟。
📝

内容提要

本文讨论了如何确保Activity不为null的问题,通过ActivitySource的过滤实现自定义采样逻辑,处理配置问题导致的activity为null的情况。作者提出了一个issue希望增加对ActivitySource的支持。

🎯

关键要点

  • 讨论如何确保Activity不为null的问题。
  • 通过ActivitySource的过滤实现自定义采样逻辑。
  • 处理配置问题导致的activity为null的情况。
  • 提出增加对ActivitySource支持的issue。
  • 使用原生的activity API进行示例,展示采样导致的activity为null。
  • 通过修改采样逻辑,确保所有activity都不是null。
  • 解释AllData和AllDataAndRecorded的区别。
  • 提供fallback机制以确保始终有一个activity。
  • 提到在实际使用中可能会使用OpenTelemetry封装的API。
  • 指出OpenTelemetry的采样参数中缺少ActivitySource参数,并提出issue。
➡️

继续阅读