Log Levels
The Orchestrator supports four log levels, from most verbose to least:| Level | Description |
|---|---|
debug | Verbose diagnostic output for troubleshooting. Includes internal state, request details, and processing steps. Use only when actively debugging — debug logging is verbose and can impact performance. |
info | Standard operational events. Startup, configuration loaded, requests processed, authentication outcomes. Recommended for production. |
warn | Conditions that may indicate a problem but do not prevent operation. Deprecated configuration, fallback behavior triggered, approaching resource limits. |
error | Failures that prevent an operation from completing. Connection failures, authentication errors, invalid configuration, unhandled exceptions. |
The
-verbose CLI flag or MAVERICS_DEBUG_MODE=true environment variable sets the log level to "debug" at startup, overriding the logger.level value in the configuration file.Output Destinations
Where log output goes depends on how the Orchestrator is deployed:| Deployment | Destination | View With |
|---|---|---|
| Linux (systemd) | journald | journalctl -u maverics |
| Docker | stdout (captured by Docker logging driver) | docker logs <container> |
| Kubernetes | stdout (captured by kubelet) | kubectl logs <pod> |
| macOS | stdout (foreground process) | Terminal output |
| Windows | Windows Event Log (when running as a service) | Event Viewer |
Structured JSON Output
EnablejsonOutput: true to produce machine-parseable JSON log entries. This is recommended for production deployments where logs are ingested by aggregation systems like Elasticsearch, Loki, or Splunk.
maverics.yaml
Session ID Correlation
EnablelogSessionID: true to include the session identifier in each log entry. This allows you to correlate all log entries across a user’s session — from initial authentication through subsequent requests — making it straightforward to trace a single user’s activity through the system.
Field Ordering
EnablefieldOrdering.enabled: true for consistent log field order across all entries. When enabled, log fields appear in the same sequence in every entry, making logs easier to scan visually and parse with tools that rely on field position.
Log Filters
Thelogger.filters configuration allows suppressing or routing specific log messages. Filters can match on message content, log level, or other attributes to control which log entries are emitted.
Access Logs
HTTP access logs are separate from operational logs and are configured under thehttp.accessLog key. Access logs record every HTTP request handled by the Orchestrator, including method, path, status code, and response time.
| Field | Default | Description |
|---|---|---|
http.accessLog.disabled | false | Disable HTTP access logging entirely |
http.accessLog.level | "info" | Access log level — "debug", "info", or "error" |
Access log configuration lives under the
http top-level key, not as a separate top-level key. See Configuration for the full HTTP section reference.Audit and Auth Event Logs
Authentication and authorization decisions are emitted as structured log entries by the Orchestrator. These entries include:- Event type — authentication or authorization
- Timestamp — when the event occurred
- User identifier — the authenticated user (when available)
- Application name — the app that processed the request
- Decision outcome — allow or deny
- Connector or policy involved — which identity connector or authorization policy was evaluated
For Console-level audit logs (API actions, config changes, deployments), see Console Audit Logs.
Configuration Reference
Logger Fields
| Key | Type | Default | Required | Description |
|---|---|---|---|---|
logger.level | string | "info" | No | Log verbosity — "debug", "info", "warn", "error" |
logger.timeFormat | string | "RFC3339Nano" | No | Time format string for log timestamps |
logger.logSessionID | boolean | false | No | Include the session ID in log entries for request correlation |
logger.jsonOutput | boolean | false | No | Output logs in JSON format (structured logging) |
logger.fieldOrdering.enabled | boolean | false | No | Order log fields consistently across entries |
logger.filters | array | [] | No | Log message filters for suppressing or routing specific messages |
The
-verbose CLI flag or MAVERICS_DEBUG_MODE=true environment variable sets the log level to "debug" at startup, overriding the logger.level value in the configuration file.Access Log Fields
Access log settings are configured under thehttp.accessLog key (part of the http section, not a separate top-level key).
| Key | Type | Default | Required | Description |
|---|---|---|---|---|
http.accessLog.disabled | boolean | false | No | Disable HTTP access logging entirely |
http.accessLog.level | string | "info" | No | Access log level — "debug", "info", or "error" |
Access log configuration lives under the
http top-level key, not as a separate top-level key. See Configuration for the full http section reference.Example
- Console UI
- Configuration
Console UI documentation is coming soon. This section will walk you
through configuring this component using the Maverics Console’s visual
interface, including step-by-step screenshots and field descriptions.
Related Pages
Console Audit Logs
Console-level audit logs for API actions, config changes, and deployments
Monitor and Observe
Step-by-step guide for setting up observability in production
Metrics
OpenTelemetry metrics via OTLP for request, authentication, and runtime data
Traces
OpenTelemetry distributed tracing via OTLP for end-to-end request visibility