What is this?

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.

Deploying this service

All you gotta do is:

  1. Fork this project
  2. Add a secure token to the environment variable AUTH_TOKEN

Connecting a Service

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 the AUTH_TOKEN in the collector.

Rough Edges

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