Skip to content
Obsevo
Skip to docs navigation

Docs

Real-time capture

An n8n external hook that pushes each finished execution to the agent immediately — and catches successes n8n itself discards.

By default the agent polls n8n on an interval. You can also have n8n push each finished execution to the agent the moment it completes, using n8n's workflow.postExecute external hook.

Both paths feed the same pipeline and Obsevo de-duplicates on (instance, execution_id), so running them together never double-counts. The poll stays on as a catch-up path for anything the hook missed while the agent was down.

Why it is worth setting up

Runs appear in about a second rather than up to a poll interval later.

It captures successes n8n discards. This is the part that matters. The postExecute hook fires on the execution lifecycle, before persistence — so it sees executions even when n8n is configured with EXECUTIONS_DATA_SAVE_ON_SUCCESS=none. Polling can only ever see what n8n chose to save. On a busy install that setting is common, and without the hook those successful runs are invisible to everything, including green-but-broken detection, which needs successful runs to build its baseline.

Privacy is unchanged. The hook posts the execution to the agent on the local Docker network. The agent strips payloads and forwards only signed metadata, so raw execution data still never leaves the host.

Enabling it

Set a token on the agent. Setting OBSEVO_HOOK_TOKEN is what turns the receiver on; without it, the agent does not listen at all.

Env varDefaultNotes
OBSEVO_HOOK_TOKENEnables the receiver. Minimum 16 characters
OBSEVO_HOOK_HOST127.0.0.1Bind address
OBSEVO_HOOK_PORT5680Listen port
OBSEVO_HOOK_MAX_BYTES16777216Largest accepted body

Then point n8n at it with an external hook file and the same token, container to container — for example http://obsevo-agent:5680/hook.

The full compose recipe, including the hook file itself, ships with the agent.

Documentation