You're looking at a self-hosted OpenTelemetry tracing collector on ValTown, my friend!
More specifically, this is a service you can fork and run that receives traces from Hono APIs
that have been instrumented with @fiberplane/hono-otel
.
Under the hood, it uses OpenTelemetry's javascript libraries to receive traces, then it transforms and stores the tracing data in a sqlite db on ValTown.
A Hono api exposes HTTP endpoints for receiving and querying traces, and we mount a Fiberplane API Playground to be able test the routes out.
All you gotta do is:
- Fork this project
- Add a secure token to the environment variable
AUTH_TOKEN
Create a Hono app, or fork the sample here:
https://www.val.town/v/fiberplane/fiberplaneHonoTracingStarter
Then, in your service, you'll just need to configure environment variables to point to your instance of the OpenTelemetry collector.
FIBERPLANE_OTEL_ENDPOINT=https://fiberplane--63a45c54f65a11efa403569c3dd06744.web.val.run/v1/traces FIBERPLANE_OTEL_TOKEN=secret-token-for-valtown-fiberplane-otel-collector
The
FIBERPLANE_OTEL_TOKEN
in your connected service should be the same value that you configured as theAUTH_TOKEN
in the collector.
Deno support can vary with OpenTelemetry's javascript libraries. We're working on improving things, but here are a few issues we've noticed:
- Log statements are recorded twice