Getting started
Evitrus collects Evidence Events, correlates them into Changes, then Search (Changelog, evidence Audit log), Evaluate (controls / gates), and Export (take events out).
1. Create a scoped API key
In Integrations, mint a tenant-scoped key (evt_live_…, shown once).
| Scope | Used by |
|---|---|
ingest | Exporters and the SDK |
evaluate | Evaluators (GitHub Actions check, Kubernetes admission) |
breakglass | Opening/ending a product break-glass window |
Default keys keep ingest+evaluate so existing setups keep working. Store keys as secrets. Never commit them.
2. Point exporters at ingest
| Environment | Ingest URL |
|---|---|
| Managed cloud | https://api.evitrus.io/ingest |
Authorization: Bearer evt_live_…
Content-Type: application/json3. Connect v1 sources
Most teams start with GitHub Actions emit + Kubernetes exporter. Share a commit (and image digest) so they stitch into one Change.
| Integration | Best for |
|---|---|
| GitHub Actions exporter | Build artifact + digest |
| Kubernetes exporter | Runtime deploy facts |
| GitHub App | Review / merge / checks |
| EventBridge → ECS | ECS runtime deploys |
| Ingest API | Custom systems |
Linear and Alert receiver are v1 sources; their public guides follow those exporters. Terraform ECS and Kubernetes audit are legacy / optional.
4. Optional: add evaluators
Gates are separate from exporters.
| Gate | When |
|---|---|
| GitHub Actions evaluator | Before/as the ship in CI |
| Kubernetes evaluator | Admission in gated namespaces |
Unreachable Evaluate fail-opens. na does not block.
5. Verify in the product
Open Changelog for the service. Use ignore rules if a type is noisy. Pull a copy of events anytime via Data Export.