Skip to main content

Troubleshooting by symptom

Start by recording the component revision, relevant configuration names, time range, structured refusal code, and last known successful boundary. Keep private keys, session tokens, and sensitive raw observations out of shared reports.

SymptomGuide
Agent fails to start or reload configurationAgent foundation
Agent cannot enroll or certificate failsEnrollment and TLS
Accepted events do not appearIngestion and storage
Consumer lag keeps growingLag and state recovery
Rules do not fire or incidents do not appearDetection
Events or detections look duplicatedDuplicates
API unavailable, forbidden, or session lostAPI and migration
Spool grows, collector missing, frontend cannot connectUnimplemented paths

A successful TLS handshake, durable ACK, committed writer position, query result, detection, and alert are different milestones. Use the event lifecycle to decide which one stopped advancing.

Do not disable verification, retimestamp records, skip offsets, delete state, or widen security limits before understanding the cause. The existing observability surfaces are designed to make those boundaries visible.

Source evidence

Reviewed against the source baseline. Seagull-backend-v2/internal/ingest/http.go · Seagull-backend-v2/internal/broker/consumer.go · Seagull-agent-v2/cmd/seagull-agent/main.go.