From hosting providers
Where your app runs on a platform — Vercel, Render, Heroku, Fly.io, Cloudflare, AWS and others — let the platform drain its logs into Zharp. No code and no agent.
Each platform gets a log source: a URL and a token of its own. No app or API key is needed, and you can roll or remove one source without touching the others.
Connect a platform
- 1Open the platform in Zharp
In the dashboard, open Integrations & API, choose the Log Stream & Drains tab and click your platform.
- 2Create the token
Click Create source token. The page shows the token, the ingesting host and, under Connect your logs, exactly what to enter in the platform — the endpoint, header or command with the token filled in — and a link to the platform's own guide.
- 3Set it up in the platform
Copy those values into the platform:
Platform Where Vercel Project → Settings → Log Drains, NDJSON, with the token as a bearer header Render Settings → Log Streams, to Zharp's syslog endpoint with the token Netlify Site settings → Log drains Heroku heroku drains:addwith the drain URLFly.io The fly-log-shipper app, with a Vector sink to Zharp Railway The Locomotive sidecar, with the URL and header as variables DigitalOcean App Platform → Settings → Log Forwarding Cloudflare A Logpush job to an HTTP destination Supabase Project Settings → Log Drains (Team plan) AWS CloudWatch A Kinesis Firehose HTTP endpoint destination, with the token as the access key Google Cloud Logging A Log Router sink to Pub/Sub, pushed to Zharp Azure Diagnostic settings, streamed to the Zharp endpoint Docker, Kubernetes, Datadog Vector or Observability Pipelines with an HTTP sink — when you can't run the agent - 4Watch it arrive
The source's status moves from Waiting for logs to Receiving, with lines per minute. View logs opens them on the Logs page.
How the lines are named
Zharp reads each platform's own format — NDJSON, logplex, syslog, Firehose — and takes the service name from the line where the platform puts one: the Vercel project, the Fly.io app, the CloudWatch log group, the container. Lines without one are filed under the source's name, such as Vercel. Levels and fields are parsed as for any other line — see Tags & parsing.
Roll or remove a token
- Roll token issues a new token and the old one stops working at once — logs stop until the platform has the new one.
- Sources can also be listed, created, rolled and removed from the API. A removed source stops receiving; the lines it already sent stay until they expire.