#etw #open-telemetry #metrics-exporter #metrics #windows-event #logging

opentelemetry-etw-metrics

OpenTelemetry ETW (事件跟踪Windows)度量导出器

3个版本 (破坏性更改)

0.3.0 2024年7月16日
0.2.0 2024年6月18日
0.1.0 2024年2月29日

调试中排名847

Download history 2/week @ 2024-05-22 166/week @ 2024-06-12 39/week @ 2024-06-19 54/week @ 2024-07-10 70/week @ 2024-07-17 7/week @ 2024-07-24

每月下载131

Apache-2.0

18KB
137

OpenTelemetry度量ETW导出器

OpenTelemetry — An observability framework for cloud-native software.

本代码包包含OpenTelemetry度量导出器到ETW (事件跟踪Windows),这是一个Windows解决方案,用于高效跟踪内核或应用程序定义的事件,类似于Linux上的用户事件。ETW事件可以实时或从日志文件中消费。

使用此代码包创建的ETW事件可以在Windows Vista或更高版本上生成和收集。

此ETW导出器使应用程序能够使用OpenTelemetry API捕获遥测事件并将其写入ETW子系统。从ETWs,事件可以被本地运行的代理捕获,这些代理正在侦听特定的ETW事件。

Crates.io: opentelemetry-etw-metrics Documentation LICENSE GitHub Actions CI Slack

查看ETW度量

导出到ETW的度量可以使用像logmanperfview等工具查看。此代码包当前使用硬编码提供的GUID EDC24920-E004-40F6-A8E1-0E6E48F39D84。有效负载以protobuf格式进行二进制编码,遵循OTLP规范。

// TODO - 添加说明。

跟踪日志

作为命令行实用程序,可以使用以下命令运行tracelog会话

  • tracelog-start MyTraceSession-f MyTraceFile.etl-guid#EDC24920-E004-40F6-A8E1-0E6E48F39D84
  • tracelog-stop MyTraceSession
  • tracefmt-o MyTraceFile.txt MyTraceFile.etl
  • notepad MyTraceFile.txt

有效载荷是使用 protobuf 编码的,因此无法直接阅读。// TODO: 展示如何将有效载荷转换为可读格式。

OpenTelemetry 概述

OpenTelemetry 是一个可观测性框架和工具包,旨在创建和管理遥测数据,例如跟踪、指标和日志。OpenTelemetry 具有供应商和工具无关性,这意味着它可以与各种可观测性后端一起使用,包括像 [Jaeger] 和 [Prometheus] 这样的开源工具,以及商业产品。

OpenTelemetry 并不是一个可观测性后端,如 Jaeger、Prometheus 或其他商业供应商。OpenTelemetry 专注于遥测数据的生成、收集、管理和导出。OpenTelemetry 的一个主要目标是您可以轻松地对应用程序或系统进行 instrumentation,无论其语言、基础设施或运行时环境如何。关键的是,遥测数据的存储和可视化是有意留给其他工具的。

依赖关系

~6–8MB
~142K SLoC