{"repo":"j-white/cloudflare-otlp-exporter","free":true,"listed":false,"github":"https://github.com/j-white/cloudflare-otlp-exporter","clone":"git clone https://github.com/j-white/cloudflare-otlp-exporter.git","description":"OpenTelemetry exporter for Cloudflare","language":"Rust","stars":11,"topics":["cloudflare","opentelemetry","otlp-exporter","rust","webassembly","workers"],"license":"Apache-2.0","category":"deployment-docker-iac","readme_excerpt":"Cloudflare OpenTelemetry exporter Description This worker was written to push Cloudflare Analytics data to an OpenTelemetry collector. It is inspired by the cloudflare-exporter. By running it as a worker and pushing metrics, we avoid the need to deploy a dedicated container and allow the worker to be run on green compute. Metrics currently supported - [x] Workers - [x] D1 - [x] Durable Objects - [x] Queues (backlog, message operations, consumer concurrency) - [x] Zones Usage Clone the repo Modify the wrangler.toml file to include your Cloudflare account ID and API token and OTel collector endpoint Run npx wrangler deploy --env dev to deploy the worker How it works Scrape the Cloudflare Analytics API via GraphQL Build the metrics in a Prometheus registry (ideally this would be directly with OTel, but ran into some challenges with threading and WASM for these SDKs) Convert the Prometheus registry to OTel metrics Push the OTel metrics to an OTel collector via protobuf (JSON encoding for OTel Metrics is broken in the Rust SDKs and is only used for testing) Next steps Add more metrics Help improve OTel Rust SDKs and remove dependency on Prometheus","default_branch":null,"files":null,"tree":[],"storefront":"/r/j-white","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/j-white/cloudflare-otlp-exporter/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}