All Projects → OutThereLabs → actix-web-opentelemetry

OutThereLabs / actix-web-opentelemetry

Licence: MIT License
OpenTelemetry integration for Actix Web

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to actix-web-opentelemetry

gateway
A proxy to buffer and forward metrics, events, and traces.
Stars: ✭ 94 (+108.89%)
Mutual labels:  jaeger, opentelemetry
pulsar-tracing
Tracing instrumentation for Apache Pulsar clients.
Stars: ✭ 13 (-71.11%)
Mutual labels:  jaeger, opentelemetry
crates-io-cn
Source code of crates-io.cn, also tools sets for sync crates.io
Stars: ✭ 20 (-55.56%)
Mutual labels:  actix-web
opentelemetry-dotnet-contrib
This repository contains set of components extending functionality of the OpenTelemetry .NET SDK. Instrumentation libraries, exporters, and other components can find their home here.
Stars: ✭ 124 (+175.56%)
Mutual labels:  opentelemetry
observatorium
This repository contains the deployment configurations for the Observatorium instances
Stars: ✭ 129 (+186.67%)
Mutual labels:  jaeger
open-telemetry-java-guides
Java OpenTelemetry 测试指南 :Open-Telemetry-Java-Guides 案例,用于测试常用中间件支持及 Otel 相关组件的使用情况。 可观察性Sig: https://i.cloudnative.to/observability/
Stars: ✭ 67 (+48.89%)
Mutual labels:  opentelemetry
editor.sh
Yet another live programming environment for collaborative code editing and running.
Stars: ✭ 29 (-35.56%)
Mutual labels:  actix-web
mCaptcha
A no-nonsense CAPTCHA system with seamless UX | Backend component
Stars: ✭ 473 (+951.11%)
Mutual labels:  actix-web
splunk-otel-java
Splunk Distribution of OpenTelemetry Java
Stars: ✭ 39 (-13.33%)
Mutual labels:  opentelemetry
opentelemetry-ext-js
js extensions for the open-telemetry project
Stars: ✭ 122 (+171.11%)
Mutual labels:  opentelemetry
opentelemetry-application-insights
OpenTelemetry exporter for Azure Application Insights
Stars: ✭ 17 (-62.22%)
Mutual labels:  opentelemetry
actix-governor
A middleware for actix-web that provides rate-limiting backed by governor.
Stars: ✭ 47 (+4.44%)
Mutual labels:  actix-web
Go-gRPC-RabbitMQ-microservice
Go gRPC RabbitMQ email microservice
Stars: ✭ 107 (+137.78%)
Mutual labels:  jaeger
crate-trends
🦀Visualize Rust Package: Crates comparison website
Stars: ✭ 14 (-68.89%)
Mutual labels:  actix-web
trouble-training
FullStack DDD/CQRS with GraphQL workshop including distributed tracing and monitoring. This shows the configuration from React frontend to .Net backend.
Stars: ✭ 271 (+502.22%)
Mutual labels:  opentelemetry
actix-web-grants
Authorization extension for actix-web to validate user permissions
Stars: ✭ 85 (+88.89%)
Mutual labels:  actix-web
gke-istio-telemetry-demo
This project demonstrates how to use an Istio service mesh in a single Kubernetes Engine cluster alongside Prometheus, Jaeger, and Grafana, to monitor cluster and workload performance metrics. You will first deploy the Istio control plane, data plane, and additional visibility tools using the provided scripts, then explore the collected metrics …
Stars: ✭ 55 (+22.22%)
Mutual labels:  jaeger
geometrics
An opinionated library and set of guides for adding application tracing and metrics to a Phoenix application
Stars: ✭ 17 (-62.22%)
Mutual labels:  opentelemetry
splunk-otel-js-web
Splunk distribution of Open Telemetry for browser environment.
Stars: ✭ 23 (-48.89%)
Mutual labels:  opentelemetry
dalted
Image processing web-app for color blindness
Stars: ✭ 17 (-62.22%)
Mutual labels:  actix-web

Actix Web OpenTelemetry

Build Status Crates.io: actix-web-opentelemetry Documentation License: MIT

OpenTelemetry integration for Actix Web.

Exporter configuration

actix-web uses tokio as the underlying executor, so exporters should be configured to be non-blocking:

[dependencies]
# if exporting to jaeger, use the `tokio` feature.
opentelemetry-jaeger = { version = "..", features = ["rt-tokio-current-thread"] }

# if exporting to zipkin, use the `tokio` based `reqwest-client` feature.
opentelemetry-zipkin = { version = "..", features = ["reqwest-client"], default-features = false }

# ... ensure the same same for any other exporters

Execute client and server example

# Run jaeger in background
$ docker run -d -p6831:6831/udp -p6832:6832/udp -p16686:16686 jaegertracing/all-in-one:latest

# Run server example with tracing middleware
$ cargo run --example server
# (In other tab) Run client example with request tracing
$ cargo run --example client --features awc

# View spans (see the image below)
$ firefox http://localhost:16686/

Jaeger UI

Features

  • awc -- enable support for tracing the awc http client.
  • metrics -- enable support for opentelemetry metrics (only traces are enabled by default)
  • sync-middleware -- enable tracing on actix-web middlewares that do synchronous work before returning a future. Adds a small amount of overhead to every request.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].