How the agent knows where to look
This is the most important thing to understand before setting up the local agent. HealOps does not scan arbitrary log files on disk. Instead, it works in two modes depending on how alerts reach it:Mode 1 — Webhook-triggered investigation (recommended)
Your monitoring tool (Datadog, Grafana, PagerDuty, Alertmanager) detects a problem and pushes an alert to the local agent via webhook. The alert payload tells HealOps what broke — which service, which host, which alert rule fired, and when. HealOps then uses your configured integrations to query the relevant data sources using those details:- Grafana Loki → fetch logs for the affected service around the alert time
- Datadog → fetch metrics and APM traces for the affected service
- Kubernetes → check pod status and recent events
- Sentry → look for correlated error events
- AWS CloudWatch → check infrastructure metrics
healops integrations setup <service> for each tool, then run healops start and point your monitoring tool’s webhook at http://<your-machine>:8787/webhook/<source>.
Mode 2 — Direct log file watching (healops hermes watch)
For applications that write to a local log file (Python services, batch jobs, pipelines), HealOps can tail the file directly and detect incidents without needing a monitoring tool:
--log-path. It only reads that specific file.
Two integration paths
OAuth/API key integrations (Slack, GitHub, Datadog webhook, PagerDuty) are connected via
app.healops.ai/integrations — paste the credentials and they’re stored encrypted in AWS Secrets Manager.
CLI-based integrations (Grafana with local credentials, on-prem Kubernetes, private databases) require HealOps to run on a machine that can reach those services. The local agent model below covers this path.
Local agent setup
Step 1 — Install HealOps
- Homebrew
- curl
- pip
Step 2 — Configure LLM + integrations
Step 3 — Get your ingest token
The ingest token lets the local agent push investigation results to yourapp.healops.ai dashboard.
- Sign in to app.healops.ai
- Go to Settings → API Keys
- Create a new key with the Ingest scope
- Add it to your environment:
.env file:
Step 4 — Start the local agent
localhost:8787 and prints a summary:
HEALOPS_AGENT_PORT, HEALOPS_AGENT_HOST.
Step 5 — Point your monitoring tool at the agent
Configure a webhook notification in your monitoring tool:
When an alert fires, HealOps:
- Receives the webhook payload
- Runs a full RCA investigation locally using your configured integrations
- Pushes the result to your
app.healops.aidashboard viaHEALOPS_INGEST_TOKEN
How it works
Run as a background service
systemd (Linux)
launchd (macOS)
Docker
Troubleshooting
healops start exits immediately with “uvicorn is required”
Install the standard extras:
- Check that
LLM_PROVIDERand the matching API key are set:healops health - Verify integrations are configured:
healops integrations verify <service> - Run a test investigation manually:
healops investigate -i tests/e2e/kubernetes/fixtures/datadog_k8s_alert.json
- Confirm
HEALOPS_INGEST_TOKENis set and valid - Check the agent output for
↑ pushed to dashboardor an error message - Test with
curl -X POST http://localhost:8787/webhook -H 'Content-Type: application/json' -d '{"title":"test alert"}'
Tracer