Skip to content

Fleet Management

The Sensors page shows every enrolled sensor with enough context to act without leaving the Console. Each row includes node name, declared role, flavor, health state, trust state, last heartbeat, software version, assigned policy pack, and enforcement state. Sensors is the starting point for rollouts, incident scoping, and certificate lifecycle work.


Fleet status and health

The Telovix Console fleet response includes two summary structures:

SensorStateCounts (lifecycle status):

StatusMeaning
healthySensor is sending heartbeats on schedule
staleNo heartbeat within the stale threshold (default 90 seconds)
disabledOperator-disabled
revokedSensor identity revoked

FleetHealthSummary (computed health):

Health stateMeaning
healthyNo issues
watchNon-critical signals (certificate renewal recommended, BPF event loss, resource pressure)
degradedActive trust alerts, stale heartbeats, runtime errors, cert renewal due
criticalSensor revoked, eBPF engine down, kernel guard failed
offlineNo heartbeat for more than 4x the stale threshold (~6 minutes)

Revoked sensors are hidden from Sensors by default. To see them, filter by lifecycle_status=revoked.


Filtering and searching

The fleet list accepts these query parameters:

ParameterDescription
qFull-text search on node name
declared_roleFilter by node role (e.g. amf, o_du, generic_linux)
clusterFilter by Kubernetes cluster name
lifecycle_statusFilter by status: healthy, stale, disabled, revoked
trust_stateFilter by trust state: trusted, rotated, bootstrap_pending, trust_revoked
trust_healthFilter by trust health: healthy, renewal_recommended, renewal_due, degraded, revoked
runtime_modeFilter by engine runtime mode: live, compatibility, simulated
runtime_stateFilter by engine state
enforcement_stateFilter by pack enforcement state: observe, enforce_ready, enforced
assigned_pack_idFilter by assigned pack ID
assigned_pack_presenceassigned or unassigned
has_active_trust_alerttrue or false
needs_attention_onlytrue to show only sensors with needs_attention: true
telecom_protocol_familyFilter by observed telecom protocol family (telecom vertical only)
tag_filterFilter by tag value (substring match)
sort_byField to sort by
sort_orderasc or desc
pagePage number (1-indexed)
page_sizeResults per page

In the Console, navigate to Fleet and use the filter bar to combine any of the parameters above. For example, set Role to amf and enable Needs Attention Only to scope to AMF nodes requiring review, or set Cluster to oslo-ran-01 and Status to stale to find unresponsive sensors in that cluster.


Tags

Tags are free-form labels you attach to sensors at enrollment time (set during sensor setup) or update afterward from Sensors > [sensor] > Edit Tags. They appear in Sensors, in alert context, and in compliance evidence.

Limits: maximum 20 tags per sensor; each tag maximum 64 characters.

To update tags, open the sensor's detail page and click Edit Tags. Enter the new tag list and save. The update replaces the entire tag list - clearing the field and saving removes all tags. Tag changes are recorded in the audit log with action type sensor_tags_updated.

Fleet view showing sensors with health states and heartbeat timestamps
Fleet view - sensor health states and heartbeat timestamps Click to enlarge

Sensor groups

Groups let you manage a named set of sensors as a unit for policy rollout, upgrade targeting, and scope assignment.

Creating groups requires admin role. Rolling out a policy pack to a group requires operator role.

Static groups

In the Console, navigate to Fleet > Groups and click New Group. Enter a display name and optional description. Once the group is created, open it and use Add Sensor to add members by selecting from the enrolled sensor list. To remove a sensor, open the group, find the sensor row, and click Remove.

Dynamic groups

Dynamic groups include sensors that match a set of conditions. The match is evaluated at enrollment time and can be re-applied on demand from the Console.

Supported fields: declared_role, os_name, os_version, architecture, software_version, node_name, tags

Supported operators: equals, not_equals, contains, startswith, endswith

Logic: AND (all conditions must match, default) or OR (any condition matches)

In the Console, navigate to Fleet > Groups, click New Group, and enable Dynamic Group. Add one or more match conditions using the condition builder. Save the group; the Console evaluates the rules immediately and populates members. To re-evaluate all dynamic groups against the current enrolled sensor set, open Fleet > Groups and click Re-evaluate All.

Policy rollout to a group

In the Console, go to Fleet > Groups > [group] > Assign Policy Pack. Select the pack name and version, then confirm. The Console displays per-sensor outcomes: ready, assigned, blocked, or failed. Sensors are blocked from assignment if the pack's target_roles does not include their declared_role.


Sensor detail view

Clicking a sensor in Sensors opens its detail page. The detail view shows:

  • Trust state, certificate expiry, and renewal status
  • Heartbeat history and event delivery metrics
  • Assigned policy pack and enforcement state
  • Recent events
  • Resource metrics (CPU, memory, disk, network)
  • System information (OS, kernel, architecture, IP addresses)
  • Active connections and listening services
  • Enforcement verification status
  • Upgrade plan status
  • For telecom sensors: NF inventory, protocol context, SLO status
Sensor detail page showing trust health, heartbeat timeline, assigned policy pack, recent events, and resource metrics
Sensor detail - trust health, heartbeat timeline, policy pack, recent events, and resource metrics Click to enlarge

Sensor actions from the fleet

From Sensors or the sensor detail, operators can perform the following actions:

ActionRole requiredEffect
Assign policy packoperatorPush a pack to the sensor via the next heartbeat
Set enforcement stateoperatorAdvance or revert the pack enforcement state
Kill processoperatorQueue a SIGKILL for a specific PID (delivered at next heartbeat)
Block binaryoperatorCreate an enforcement rule to kill future executions of a binary
Contain sensoroperatorDeploy network-containment enforcement rule
Release sensoroperatorRemove network containment
Request certificate renewaloperatorTrigger manual cert renewal at next heartbeat
Update tagsoperatorReplace the sensor's tag list
Rename sensoroperatorUpdate the node display name
Disable sensoradminMark sensor as disabled; does not revoke identity
Revoke sensoradminPermanently revoke mTLS identity; blocks all future requests
Delete sensoradminPermanently delete the sensor record
Generate re-enrollment tokenoperatorIssue a re-enrollment token to update credentials without creating a new record

Fleet triage summary

The fleet list response includes a triage_summary object:

FieldDescription
needs_attentionCount of sensors with needs_attention: true
active_trust_alertsCount of sensors with active trust alerts
assigned_pack_presentCount of sensors with a policy pack assigned
runtime_mode_counts.liveCount in live (full collection) mode
runtime_mode_counts.compatibilityCount in compatibility mode
runtime_mode_counts.simulatedCount in simulated (dev) mode

Use needs_attention_only=true as a quick filter to focus on sensors that warrant operator review.


Further reading

Released under the Telovix Commercial License.