SigNoz Cloud - This page is relevant for SigNoz Cloud editions.
Self-Host - This page is relevant for self-hosted SigNoz editions.

Monitor Fly.io with SigNoz

Fly.io is an app hosting platform that lets you run full-stack apps close to your users. SigNoz supports two signals from Fly.io:

  • Logs — forwarded via fly-log-shipper, a Vector-based log draining app. SigNoz is a named provider in fly-log-shipper.
  • Metrics — scraped from Fly's Prometheus federation endpoint using the OpenTelemetry Collector. See the full Fly.io Metrics guide.

If using self-hosted SigNoz, most steps are identical. To adapt this guide, update the endpoint and remove the ingestion key header as shown in Cloud → Self-Hosted.

Prerequisites

  • A SigNoz Cloud (or self-hosted) workspace
  • Fly CLI installed and a Fly.io account

Forward Logs

Fly.io logs are forwarded to SigNoz using fly-log-shipper — a Fly app that runs Vector and drains logs from your entire Fly.io organisation.

Step 1: Clone fly-log-shipper

git clone https://github.com/superfly/fly-log-shipper.git
cd fly-log-shipper

Step 2: Create the shipper app (without deploying yet)

fly launch --no-deploy

This creates a new Fly app in your organisation without starting it.

Step 3: Create a read-only access token

fly tokens create readonly personal

Save the token value — you will set it as a secret in the next step.

Step 4: Set the required secrets

fly secrets set \
  ACCESS_TOKEN="<your-readonly-fly-token>" \
  SIGNOZ_INGESTION_KEY="<your-signoz-ingestion-key>" \
  SIGNOZ_INGESTION_URL="https://ingest.<region>.signoz.cloud:443"

Replace:

  • <your-readonly-fly-token> — the token from Step 3
  • <your-signoz-ingestion-key> — your SigNoz ingestion key
  • <region> — your SigNoz Cloud region (e.g. us, eu). See regions.

Step 5: Deploy

fly deploy

Once deployed, fly-log-shipper begins draining logs from all apps in the organisation and forwarding them to SigNoz.

Step 6: Verify logs in SigNoz

Open Logs Explorer in SigNoz. Within a minute you should see log entries with Fly.io-specific attributes such as app, region, and instance_id.

Troubleshooting

  • fly-log-shipper not running — run fly status inside the fly-log-shipper directory and confirm the app is in a running state.
  • Wrong secrets — re-check ACCESS_TOKEN, SIGNOZ_INGESTION_KEY, and SIGNOZ_INGESTION_URL with fly secrets list. Update them with fly secrets set and redeploy.
  • Token scope — ensure the token was created with fly tokens create readonly personal, not a deploy token.

Next Steps

Get Help

If you need help with the steps in this topic, please reach out to us on SigNoz Community Slack.

If you are a SigNoz Cloud user, please use in product chat support located at the bottom right corner of your SigNoz instance or contact us at cloud-support@signoz.io.

Last updated: May 4, 2026

Edit on GitHub

Was this page helpful?

Your response helps us improve this page.