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
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 random bytes, URL-safe encoded. 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 two-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: vesana_ + 32 random bytes, URL-safe encoded. SHA256 hash in api_keys.key_hash. → Security → Tokens
Auto-discovery¶
Automatic detection of new hosts via network scan and SNMP sysOID match. Implemented in the collector. → Hosts → Discovery
B¶
Baseline¶
Normal range of a check per hour (median and robust spread of the last 8 weeks; daily profile from 7 days, weekly profile from 21 days). Never changes the status. → Anomalies & forecasts
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 of the compose file: ai (local Ollama), agent-gateway, admin-split, admin-split-port. Activated via --profile <name> or permanently via COMPOSE_PROFILES in the .env. There is no separate backup profile any more — backups are built in under Admin → System → Backups.
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¶
Former name of your own dashboards. Today the built-in overview, your own and shared dashboards live on one page; a dashboard belongs to a user, not to a tenant. → Dashboard
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 two-layer state model — failure confirmed via confirmation, no push notification yet. Promotion to alerting runs after the hold time of the matching alert rule. 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). Interval: every 20 s, every 5 min for a dormant agent. After 3 min without a heartbeat the agent counts as offline.
Host¶
Concrete monitored machine or device. Has one primary profile (determines icon and device view) and optionally further profiles. → 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 among others check_results, logs, system_events and the heartbeat histories of agents and collectors.
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 when first needed (instance pulse, feedback, support bundle) and stays the same afterwards.
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¶
Without a key the Community edition applies (25 hosts, 1 tenant, every feature). A signed license key is perpetual and raises the host and tenant limits; it does not unlock features. Its update period says which versions it covers; it is activated once for an instance. → License
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)¶
A vendor's SNMP data description (e.g. CISCO-ENVMON-MIB, PowerNet-MIB): names, meaning, value lists and units for OIDs. Vesana uses them while setting things up; checks store numeric OIDs only. → MIBs
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.
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, Microsoft Teams, Google Chat, Discord, Mattermost, Telegram, ntfy, Pushover, PagerDuty, Opsgenie. → Notification channels
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).
Patch¶
Version with a new third digit (e.g. 1.902.0 → 1.902.1) — a security update or quick bugfix on the installed version, with no behavior change and no database change. → Updates
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: hosts.create, alert_rules.edit, ai.query. Roles bundle permissions and apply per tenant. → Roles & permissions
Pipeline health¶
System endpoint /api/v1/admin/health/snapshot with stream backlog, insert rate, DB+disk free, worker pool status. → System health
Preview feature¶
Area that is switched off instance-wide until a super admin enables it under Admin → System → Preview features: reports, status pages, wiki, single sign-on. While off it is missing from menu and interface, and the API answers with 404. → Preview features
Probing¶
First phase in the two-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. Set on the alert rule (default 60 s for CRITICAL, 120 s for WARNING; No Data and UNKNOWN optionally with their own times); with several matching rules the shortest applies. → State model
sysOID¶
SNMP object ID identifying a device (.1.3.6.1.2.1.1.2.0). Foundation for profile auto-match.
T¶
Team¶
Group of users to which roles are assigned per tenant or tenant group — whoever joins the team gets these permissions. Managed under Admin → Users & access → Teams; with SSO/AD it can also be filled from groups of the identity provider. → Roles
Tenant¶
Tenant separator. Every host and alert rule has a tenant_id; dashboards belong to a user and show every viewer only data of their own tenants. → Architecture
Tenant group¶
Orders tenants on the Tenants page and serves as the scope of a role assignment — the assignment also applies to tenants that join the group later. → Roles
Two-layer state model¶
Current state model (replaces the former 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 two-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
Update channel¶
New versions (1.<line>.0) go first to instances with a tester license and are only released to everyone afterwards — normal instances only ever see released versions and their patches. → Updates
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. → Your own 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; secrets are never shown again. → Credentials
Zstd¶
Compression algorithm for log packets. Agent compresses log entries before POST.