Skip to content

Glossary

A

Acknowledgement (ACK)

Operator confirmation that a problem has been seen. Suppresses further notifications and blocks the promotion degraded → alerting until recovery. → Acknowledgements

Active Check

Check with check_mode = active — run by the Active Collector (or, if it's offline, by the Python hybrid fallback in the worker). One of three equal monitoring modes, not a legacy path. → Architecture → Three monitoring modes

Active Collector

Systemd service running on the Vesana machine itself (the same binary as the collector), runs check_mode='active' checks across all tenants. Max. one instance per Vesana install. → Architecture → Active Collector

Accepted exception

Special case of an acknowledgement: the operator unchecked the "is a problem" box. The status stays visibly red/true but no longer counts in any problem rollup. Breaks automatically if the check gets worse than when it was marked. → State model → Acknowledged

Automatic setup

Discovery → "Set up automatically" tab: Vesana adopts discovered devices itself (determine device type, try stored credentials, create host, activate profile checks) and creates tasks for everything else. → Automatic setup

Agent

Go single binary running on the monitored machine, executing checks locally. Push-based — reports results via HTTPS POST to the receiver. → Agents & collectors → Agent

Agent Gateway

Optional, separate port for machine endpoints only (agent/collector traffic), off by default. Lets you firewall off the normal UI port while still letting agents from external networks report in (typical MSP scenario). The UI port keeps serving everything — existing agents never break. → Installation → Distribution & reachability

Aggregate

Standalone object (not a regular check) that evaluates the status of a group of redundant members K-of-N: all healthy → OK, at least K healthy → WARNING, fewer than K healthy → CRITICAL. The WARNING level deliberately doesn't suppress dependent services. → Architecture → Aggregates (K-of-N)

Agent token

Token in format vesana_agent_<32 url-safe chars>. 1:1 bound to a host. Stored as SHA256 hash on the server. Shown exactly once at creation. → Security → Tokens

AI analysis

Service-specific diagnosis by an LLM with wiki RAG, web search, and state context. Built into error overview and host detail. → AI chat & analysis

Alerting (state)

Phase in the three-layer state model — failure sustained, push notification sent, operator alerted. Column: current_status.alerting_state = 'alerting'. → State model

Alert rule

Rule defining when a notification is triggered. Thresholds, patterns, escalation, grouping. → Alert rules

API key

Token for collectors. Format: custom prefix + 32 bytes. SHA256 hash in api_keys.key_hash. → Security → Tokens

Auto-discovery

Automatic detection of new hosts via nmap scan and SNMP sysOID match. Implemented in the collector. → Hosts → Discovery

B

Baseline

28-day mean + standard deviation per service, stored per 1-hour bucket (168 buckets). Foundation for anomaly detection. → Anomaly detection

Builtin

Profiles, profile-checks, or wiki articles shipped with Vesana. is_builtin = true. Updated via seed scripts (upsert); modified builtins (is_modified = true) are skipped.

C

Check

A single measurement — e.g. "CPU load" or "battery voltage". In Vesana realized as profile-check (definition) and host-service (instance). → Profiles & checks

Check mode

active (server runs check itself), passive (collector runs remote), agent (agent runs locally).

Check result

An incoming measurement with status, value, message, timestamp. Stored in check_results (TimescaleDB hypertable).

Collector

Linux VM in the customer network, running remote checks (SNMP, ping, SSH, HTTP). Push-based like the agent. → Agents & collectors → Collector

Compose profile

Optional service groups in docker-compose.prod.yml — e.g. ai, backup. Activated via --profile <name>.

Confirmation interval

In the probing state, the worker waits confirmation_interval_seconds (default 10 s) before running the check again — after confirmation_attempts (default 1) confirmed failures, the UI state moves to degraded. → State model

Custom dashboard

Freely configured view from widgets. Variables, sharing, public links. → Custom dashboards

D

Deadband

Storage optimization: a check result is only stored again in check_results if the value moved a sufficient relative amount, or a heartbeat interval has elapsed. Reduces time-series size for stable values (e.g. CPU load that barely moves) without missing real changes.

Dead-agent watcher / dead-collector watcher

Background job marking hosts NO_DATA when agent/collector is silent for too long. Distributed lock via Redis ensures only one replica runs.

Degraded

Phase in the three-layer state model — failure confirmed via confirmation, no push notification yet. Promotion to alerting runs after the sustained threshold (60-120 s). Column: current_status.ui_state = 'degraded'. ACK during this phase blocks the promotion. → State model

Dependency

Parent-child relationship between hosts or services. Foundation for inhibition. → Dependencies & inhibition

Discovery result

Result of a network scan per IP, with sysOID, sysDescr, service detection, suggested profile.

Distributed locking

Redis-based lock with 55 s timeout, so watchers run only once in multi-replica setups.

Downtime

Planned or unplanned maintenance window during which alerts are suppressed. One-shot or recurring via RRULE. → Downtimes

E

Effective config

Merge of profile-check default and host-service override. Computed via COALESCE and JSONB merge in SQL. → Profiles & checks → Effective config

Configurable values

Values a monitoring script declares via a header line in its body and every check fills in individually (environment variables VESANA_*). → Configurable values on scripts

Expected values

Named target values on a profile check (overridable per host) against which the server compares the check result. Formerly "custom fields". → Expected values & comparison

Escalation

Multi-stage alert strategy: stage 1 first (e.g. email to operator), after 15 min without ack stage 2 (push to manager), after 30 min stage 3.

F

FCM (Firebase Cloud Messaging)

Google service for push to Android devices. Vesana no longer uses it (since 08/2026) — push runs on the browser standard Web Push (VAPID), which every instance operates itself without a vendor account. → Vesana on your phone

Field encryption

AES-256-GCM encryption of sensitive columns (e.g. hosts.snmp_community). Key in FIELD_ENCRYPTION_KEY. → Security → Encryption

H

Heartbeat

Regular liveness ping from agent to server (POST /api/v1/agent/heartbeat). Default: every 60 s. Updates agent_tokens.last_seen_at.

Host

Concrete monitored machine or device. Has exactly one profile. → Hosts

Host-service

Instance of a profile-check for a concrete host. With optional overrides. → Profiles & checks

Hypertable

TimescaleDB construct for time-series tables with automatic partitioning. In Vesana: check_results, logs, agent_metrics.

I

Info mode

Permanent check configuration: pure statistics, real status stays visible, but never reaches alerting_state='alerting' — no notifications, escalation, or inhibition. Counts as its own bucket instead of a problem, hidden by default in the error overview. Difference from an accepted exception: permanently configured instead of state-bound. → State model → Info mode

Identity confirmation (step-up)

Fresh proof (passkey, authenticator code or password) within the last 15 minutes that sensitive actions require in addition to the permission — per session. → Sessions

Inhibition

Suppression of alerts for dependent services when the parent host is in alerting state (not already at degraded). → Dependencies & inhibition

Instance UUID

Unique ID of a Vesana install, in system_settings.instance_uuid. Created at first phone-home or feedback, race-safe via INSERT ON CONFLICT.

Jump

Instance-wide quick search across menu entries, settings, devices, checks, tenants, folders and more — Cmd/Ctrl+K or the button at the top of the sidebar. → Interface & navigation

Categories

The chip group of the error overview: Open, ACK (marked as error), ACK (marked as no error), Downtime, Dependency down, Info — selected means "is shown". → Error overview

L

License tier

Community, Professional, MSP — differ only in host/tenant limits and price, not in feature scope. → License tiers

LLD (Low-Level Discovery)

Concept from Zabbix for dynamic item generation — e.g. "for each found filesystem, create a disk check". Currently not implemented in Vesana; workaround: agent_services_auto check and SNMP picker.

M

MIB (Management Information Base)

SNMP data description. Vendor-specific (e.g. Cisco-ENVMON-MIB, APC-PowerNet-MIB).

MIB snippet

YAML file with vendor MIB knowledge — OIDs, status mappings, discovery hints. → MIB snippets

Mobile push

Push notification to the installed Vesana web app (Android, iPhone, iPad) via Web Push. The channel only selects the users (and optionally devices); which statuses and whether recoveries are sent is defined in the alert rule. → Vesana on your phone

MSP (Managed Service Provider)

IT service provider monitoring multiple customer environments. Standard user of multi-tenant mode. Also the name of the top license tier (unlimited hosts/tenants). → License tiers

N

NO_DATA

Status value: no data within expected interval. Orange in UI. → State model

Notification channel

Configured output for alerts: email, mobile push, webhook, Slack, Teams. → Notification channels

NSCA

Nagios Service Check Acceptor. Legacy protocol on port 5667. Vesana can act as receiver — migration path for Nagios estates. → NSCA migration

O

OID (Object Identifier)

SNMP identifier, e.g. .1.3.6.1.2.1.1.5.0 for sysName.

Override

Host-specific deviation from a profile-check default. → Effective config

P

Passive check

Check run by a collector (check_mode = passive).

PENDING

Blue "awaiting data" display — a read-time special case of NO_DATA for freshly created or reactivated services, as long as there's no first result yet (no time window — ends only with a result or an offline verdict). Not its own DB status. → State model → PENDING

Permission

Access bit. Examples: host.create, alert_rule.edit, ai.query. → Roles & permissions

Pipeline health

System endpoint /api/v1/admin/health/snapshot with stream backlog, insert rate, DB+disk free, worker pool status. → System health

Policy

Declarative rule: match condition (JsonLogic subset) + action (create check, set tag, patch config). Applies automatically to all matching hosts — bulk configuration without SSH. A dry run is mandatory before saving, a circuit breaker stops runaway syncs. → Architecture → Policies

Probing

First phase in the three-layer state model — check has failed once, confirmation retry running. Operator sees a gray-pulsing pill. Column: current_status.ui_state = 'probing'. Goes either to degraded after confirmation, or straight back to ok if the retry is green. → State model

Profile

Device definition with capabilities and visual layout type. → Profiles & checks

Profile-check

Check definition per profile. → Profiles & checks

R

RAG (Retrieval-Augmented Generation)

Technique where an LLM is given relevant context from a database. Vesana uses pgvector + wiki embeddings as RAG source. → AI features

Reachability hint

Ping-based live hint on whether a host is currently reachable. Foundation for host-down inhibition (parent host genuinely "down", not just some check alerting) and for suspending child-service fast polls while the parent is unreachable. → Alerting → Reachability hint

Receiver

Ingest service accepting agent and collector packets, writing them to the Redis stream. Fastest path — no DB writes.

Recovery

Transition from alerting back to ok. Optional dedicated notification.

Recovery poll interval

In the degraded state, the worker scheduler polls active checks more tightly (default 15 s) for faster recovery detection. Field: recovery_poll_interval_seconds. → State model

S

Severity

Severity order: CRITICAL > WARNING > NO_DATA > UNKNOWN > OK.

Site

Geo-truth for physical maps. A host belongs to exactly one site (fallback: the host's own location if no site is maintained). A physical map hangs off exactly one site; decorative nodes on physical maps never trigger dependencies.

Soft delete

Logical delete via deleted_at column. Items land in trash, physically deleted after 30 days. → Soft delete & trash

Status page

Publicly reachable page with selected component status. Branding per tenant. → Public status pages

Structure column

The tree on the left of the hosts page: tenants as sections, inside them your own nestable folders; sort devices in by dragging or right-click. → Hosts page & structure

Suppression

A check counts in no problem rollup if it's suppressed: in downtime OR (accepted AND NOT "is a problem") OR (info mode AND status ≠ OK). The error overview deliberately shows everything anyway. → State model → Suppression rule

Sustained threshold

How long a degraded state must persist uninterrupted before the watcher promotes to alerting. Defaults: 60 s for CRITICAL, 120 s for WARNING (settings default_alert_after_critical_seconds, default_alert_after_warning_seconds). → State model

sysOID

SNMP object ID identifying a device (.1.3.6.1.2.1.1.2.0). Foundation for profile auto-match.

T

Tenant

Tenant separator. Every host, alert rule, dashboard has a tenant_id. → Architecture

Tester mode

Env bypass for beta testers. All limits lifted, no license key. → License

Three-layer state model

Current state model since v0.48 (migration 147 removed the old soft/hard model). Separates UI state (probing/degraded/alerting/no_data/unknown/ok — what the operator sees) from alerting state (ok/alerting — what drives notifications and SLA). → State model

track_change

Audit helper that stores old_values and new_values of an update operation as JSONB in the audit log. → Audit log

U

UI state

Operator-visible layer in the three-layer state model. Values: ok, probing, degraded, alerting, no_data, unknown. Drives the pill in the error overview. → State model

UNKNOWN

Status value: check ran, result not unambiguous. Gray in UI. → State model

Updater sidecar

Container that runs GUI updates: pre-update backup, pull, migrations, restart, auto-rollback. → Updates

V

Variable (dashboard)

Placeholder like $host, $tenant for dynamic widget filtering. Multi-select possible. URL-persisted. → Custom dashboards

Visual type

Special hardware visualization per profile (switch_portmap, ups_panel, …).

W

Watchdog

Background job watching status transitions (dead-agent, dead-collector, service-overdue, downtime-expiry).

Wiki

Built-in knowledge base. Markdown, categories, tags, service linking, pgvector embeddings. → Wiki

Worker

Consumer service processing Redis stream messages, updating status, evaluating alerts. Multiple instances supported.

Z

Zone

Group of hosts on the logical map (formerly "bubble"): a panel with status bar; drags from the zone border create real dependencies via the status hosts, the zone itself never alerts. → Logical map

Credential set

Tenant-wide stored device credentials (SNMP v2c/v3, SSH, API token), selectable when adding hosts and in Automatic setup; secrets are never shown again. → Credentials

Zstd

Compression algorithm for log packets. Agent compresses log entries before POST.