#cpu-memory #metrics #open-telemetry #disk #export #gpu #process

opentelemetry-system-metrics

System metric export through Opentelemetry

9 releases

0.2.0 Jun 3, 2024
0.1.9 May 29, 2024
0.1.8 Mar 15, 2024
0.1.6 Nov 20, 2023
0.1.1 Jun 24, 2022

#36 in #cpu-memory

Download history 1697/week @ 2024-11-16 1874/week @ 2024-11-23 2171/week @ 2024-11-30 1595/week @ 2024-12-07 562/week @ 2024-12-14 590/week @ 2024-12-21 1081/week @ 2024-12-28 1280/week @ 2025-01-04 2557/week @ 2025-01-11 529/week @ 2025-01-18 750/week @ 2025-01-25 1425/week @ 2025-02-01 185/week @ 2025-02-08 1237/week @ 2025-02-15 1140/week @ 2025-02-22 4135/week @ 2025-03-01

6,717 downloads per month
Used in 2 crates (via dora-metrics)

Apache-2.0

19KB
149 lines

opentelemetry-system-metrics

This is my awesome crate enabling process level system metrics using opentelemetry.

Current metrics observed are:

  • CPU
  • Memory
  • Disk
  • Network
  • GPU Memory

Getting started

cargo add opentelemetry_system_metrics
use opentelemetry::global;
use opentelemetry_system_metrics::init_process_observer;

let meter = global::meter("process-meter");
init_process_observer(meter);

To get started with InfluxDB, you should create an account at InfluxDB Cloud, create a new telegraf opentelemetry exporter.

  • Ex:
export INFLUX_TOKEN=<PROVIDED TOKEN>
telegraf --config <PROVIDED LINK>
cargo run --example otlp-tokio-metrics

lib.rs:

This is my awesome crate Enabling system metrics from process to be observed using opentelemetry. Current metrics observed are:

  • CPU
  • Memory
  • Disk
  • Network

Getting started

use opentelemetry::global;
use opentelemetry_system_metrics::init_process_observer;

let meter = global::meter("process-meter");
init_process_observer(meter);

Dependencies

~5MB
~93K SLoC