#otlp #open-telemetry #web #web-ui #tracing

otlp-embedded

内存中的OpenTelemetry跟踪收集器和Web UI可视化工具

1个不稳定版本

0.0.1 2024年1月3日

#7#otlp

Apache-2.0

11MB
663

otlp-embedded

一个简单的内存中的OpenTelemetry跟踪收集器实现,具有Web UI,可以嵌入到其他Rust应用程序中。

示例

use otlp_embedded::{ui_app, State, TraceServiceImpl, TraceServiceServer};

#[tokio::main]
async fn main() {
    let state = State::new(100);
    let state_clone = state.clone();

    tokio::spawn(async {
        axum::Server::bind(&"0.0.0.0:10188".parse().unwrap())
            .serve(ui_app(state, "/").into_make_service())
            .await
            .unwrap();
    });

    tonic::transport::Server::builder()
        .add_service(TraceServiceServer::new(TraceServiceImpl::new(state_clone)))
        .serve("0.0.0.0:43177".parse().unwrap())
        .await
        .unwrap();
}

依赖关系

~11–24MB
~308K SLoC