Observability
EntityFlow exposes tracing, error reporting, structured logs, and an audit trail — all driven by environment variables and all off by default with zero overhead until you turn them on.
Tracing
EntityFlow emits OpenTelemetry traces when EF_OTEL_ENABLED=true (default off — there is zero overhead when off). Point it at your collector with EF_OTEL_EXPORTER_OTLP_ENDPOINT and name the service with EF_OTEL_SERVICE_NAME (default ef-server).
Spans cover:
- HTTP requests (tRPC and REST),
- database queries,
- projection, codegen, and validation jobs.
Errors
Set EF_SENTRY_DSN to enable Sentry error reporting. When the DSN is unset, Sentry is a complete no-op.
Logs
Logs are structured JSON via pino. Control verbosity with EF_LOG_LEVEL:
| Level | |
|---|---|
fatal error warn info debug trace silent | info is the default. |
Audit
An append-only audit log records account lifecycle events and administrator actions. This is an enterprise feature (see Licensing) and is shown on the Audit log page of EntityFlow Hub.
Example
Enable tracing and error reporting together:
export EF_OTEL_ENABLED=true
export EF_OTEL_EXPORTER_OTLP_ENDPOINT="http://otel-collector:4318"
export EF_OTEL_SERVICE_NAME="ef-server"
export EF_SENTRY_DSN="https://examplePublicKey@o0.ingest.sentry.io/0"
export EF_LOG_LEVEL="info"
See the Configuration reference for the full list of observability variables.