技能 azure-monitor-opentelemetry-exporter-java
📦

azure-monitor-opentelemetry-exporter-java

安全

将 OpenTelemetry 遥测数据导出到 Azure Monitor

将 Java 应用程序与 Azure Monitor 集成以实现分布式追踪和遥测。使用 OpenTelemetry 标准将追踪、指标和日志导出到 Application Insights。

支持: Claude Codex Code(CC)
🥉 73 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“azure-monitor-opentelemetry-exporter-java”。 生成使用环境变量初始化 OpenTelemetry 和 Azure Monitor 的代码

预期结果:

Java 代码片段展示 AutoConfiguredOpenTelemetrySdk 构建器配置,包含 AzureMonitorExporter.customize() 和从 APPLICATIONINSIGHTS_CONNECTION_STRING 环境变量获取连接字符串。

正在使用“azure-monitor-opentelemetry-exporter-java”。 如何在 OpenTelemetry span 中记录异常?

预期结果:

代码示例演示在 try-catch 块中使用 span.recordException(),通过 span.setStatus(StatusCode.ERROR) 设置错误状态,以及在 finally 块中正确管理 span 生命周期。

安全审计

安全
v1 • 2/25/2026

All static analysis findings are false positives. The skill consists entirely of Markdown documentation (SKILL.md) with Java code examples for Azure Monitor OpenTelemetry integration. The 26 'external_commands' detections are Markdown backtick delimiters for code blocks, not shell execution. The 10 'network' findings are documentation URLs (GitHub, Microsoft Learn, Maven Central), not actual network calls. No executable code or security risks present.

1
已扫描文件
285
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
83
规范符合性

你能构建什么

DevOps 工程师监控 Java 应用程序

为在 Azure 上运行的微服务设置端到端分布式追踪。配置 OpenTelemetry 自动将追踪和指标导出到 Application Insights 以进行生产监控。

Java 开发人员实现可观测性

使用 OpenTelemetry API 向 Java 应用程序添加自定义检测。创建有意义的 span、记录异常并捕获业务指标以进行调试和性能分析。

云架构师设计遥测策略

评估 Azure 监控的 OpenTelemetry 集成模式。比较企业级 Java 应用程序组合的自动配置与手动设置方法。

试试这些提示

基础 Azure Monitor 设置
帮我设置 OpenTelemetry 以将遥测数据导出到 Azure Monitor。我有一个 Java Spring Boot 应用程序和一个 Application Insights 连接字符串。
自定义追踪实现
展示如何使用 OpenTelemetry 在我的 Java 应用程序中创建带有属性的自定义 span。我需要追踪订单处理流程,包含订单 ID 和客户层级属性。
从已弃用包迁移
我的应用程序使用的是已弃用的 azure-monitor-opentelemetry-exporter。请指导我迁移到 azure-monitor-opentelemetry-autoconfigure,并提供代码示例。
高级 Span 处理
我需要实现一个自定义 SpanProcessor,为所有 span 添加组织特定的属性并过滤掉健康检查端点。请展示完整的实现。

最佳实践

  • 使用 autoconfigure 包而不是已弃用的直接导出器以简化设置
  • 始终在 finally 块中结束 span 或使用 try-with-resources 进行正确的 Scope 管理
  • 使用 recordException() 在 span 上记录异常并设置适当的错误状态码

避免

  • 在新项目中使用已弃用的 azure-monitor-opentelemetry-exporter 包
  • 在源代码中硬编码连接字符串而不是使用环境变量
  • 创建 span 时没有适当的异常处理或在错误情况下未能结束 span

常见问题

azure-monitor-opentelemetry-exporter 包是否仍然受支持?
不,此包已弃用。Microsoft 建议迁移到 azure-monitor-opentelemetry-autoconfigure,它提供自动检测功能和简化的配置。
如何获取 Application Insights 连接字符串?
在 Azure Portal 中创建 Application Insights 资源。导航到该资源并在"配置"部分下找到连接字符串。它包含检测密钥和引入端点。
我可以在现有的 Application Insights SDK 中使用 OpenTelemetry 吗?
可以,但 Microsoft 建议新开发完全迁移到 OpenTelemetry。autoconfigure 包在遵循 OpenTelemetry 标准的同时提供兼容性。
我可以向 Azure Monitor 导出哪些遥测数据?
OpenTelemetry 支持将追踪(分布式追踪 span)、指标(计数器、直方图、仪表)和日志导出到 Azure Monitor/Application Insights。
我需要安装 Azure SDK for Java 吗?
您需要 azure-monitor-opentelemetry-autoconfigure Maven 包。OpenTelemetry Java SDK 处理核心检测,而 Azure 包提供导出器。
使用 OpenTelemetry 和 Azure 时分布式追踪如何工作?
OpenTelemetry 使用 W3C 追踪上下文标头自动在服务边界之间传播追踪上下文。每个 span 都会被导出到 Application Insights,您可以在那里查看端到端的事务流程。