What's in Settings

Settings is the system-configuration screen. Most of it is read-only — operator-managed via the server YAML — but Notification Channels is fully interactive.

Notification Channels

The first section, with its own + Add Channel button. This is the only editable section on the page.

See Notification channels for the full guide.

Retention

Read-only summary of the data retention windows.

SettingMeans
Hot RetentionRecent data kept in fast hot storage. Configured server-side.
Cold RetentionOlder data tiered to object storage. Configured server-side.

Both rows show "Configured server-side" instead of a value because the actual numbers live in configs/server.yaml under storage.hot.retention_hours and storage.cold.retention_days. Edit the YAML and restart the server to change them.

Storage

Read-only summary of the storage engine and compression.

FieldMeans
Storage EngineThe hot store backend.
CompressionCodec applied to stored rows.

Same as retention — edits are server-side via the config file.

Authentication

Read-only summary of how users sign in:

FieldMeans
Local AuthWhether email/password sign-in is enabled. ENABLED pill.
OIDC / SSOWhether an OIDC provider (Microsoft Entra, Google, Okta…) is wired in. NOT CONFIGURED until the operator sets auth.oidc.* in the YAML.
JWT ExpiryHow long a sign-in token stays valid. Default 24h.

Authentication is managed server-side. Configure OIDC providers in the server configuration file.

Why so much is read-only

ObserveKit's deployment model is "operator owns the YAML". Sensitive infrastructure — retention windows that affect data lifecycle, storage backend, OIDC client secrets — are intentionally not exposed as editable UI to admins. This avoids accidentally clobbering production config from a logged-in browser session.

The exception is Notification Channels — channels are end-user infrastructure that needs to be added/edited as teams change. Those are stored in the metastore and edited via the UI.

See also