Skip to main content

The event bus facilitates the transmission of events to subscribers using a NATS-based system. When eventing is enabled, NATS pods are created to gather various events from the cluster. These events are generated by changes in the system, such as the creation and deletion of volumes and replicas.

Presently, callhome serves as the sole consumer for these events. Within the obs-callhome-stats container, the stats exporter operates by listening on the event bus for events. It collects these events and makes them available as part of callhome metrics.

List of events being collected:

Volume Events#

CategoryActionSourceDescription
VolumeCreateControl planeGenerated when a volume is successfully created
VolumeDeleteControl planeGenerated when a volume is successfully deleted

Replica Events#

CategoryActionSourceDescription
ReplicaCreateData planeGenerated when a replica is successfully created
ReplicaDeleteData planeGenerated when a replica is successfully deleted
ReplicaStateChangeData planeCreated upon a change in replica state

Pool Events#

CategoryActionSourceDescription
PoolCreateData planeGenerated when a pool is successfully created
PoolDeleteData planeGenerated when a pool is successfully deleted

Nexus Events#

CategoryActionSourceDescription
NexusCreateData planeCreated when a nexus is successfully created
NexusDeleteData planeCreated when a nexus is successfully deleted
NexusStateChangeData planeCreated upon a change in nexus state
NexusRebuildBegunData planeCreated when a nexus child rebuild operation begins
NexusRebuildEndData planeCreated when a nexus child rebuild operation ends
NexusAddChildData planeCreated when a child is added to nexus
NexusRemoveChildData planeCreated when a child is removed from nexus
NexusOnlineChildData planeCreated when a nexus child becomes online
NexusSubsystemPauseData planeCreated when an I/O subsystem is paused
NexusSubsystemResumeData planeCreated when an I/O subsystem is resumed
NexusInitData planeCreated when nexus enters into init state
NexusReconfiguringData planeCreated when nexus enters into reconfiguring state
NexusShutdownData planeCreated when a nexus is destroyed

Node Events#

CategoryActionSourceDescription
NodeStateChangeControl planeCreated upon a change in node state

High Availability Events#

CategoryActionSourceDescription
HighAvailabilitySwitchOverControl planeCreated when a volume switch over operation starts, fails or completes

Nvme Path Events#

CategoryActionSourceDescription
NvmePathNvmePathSuspectControl planeCreated when an NVMe path enters into suspect state
NvmePathNvmePathFailControl planeCreated when an NVMe path transitions into failed state
NvmePathNvmePathFixControl planeCreated when an NVMe controller reconnects to a nexus

Host Initiator Events#

CategoryActionSourceDescription
HostInitiatorNvmeConnectData planeCreated upon a host connection to a nexus
HostInitiatorNvmeDisconnectData planeCreated upon a host disconnection to a nexus
HostInitiatorNvmeKeepAliveTimeoutData planeCreated upon a host keep alive timeout (KATO) on a nexus

IO-Engine Events#

CategoryActionSourceDescription
IoEngineCategoryStartData planeCreated when io-engine is initializes
IoEngineCategoryShutdownData planeCreated when io-engine shutdown starts
IoEngineCategoryStopData planeCreated when an io-engine is stopped
IoEngineCategoryReactorUnfreezeData planeCreated when an io-engine reactor is healthy again
IoEngineCategoryReactorFreezeData planeCreated when an io-engine reactor frozen

Snapshot and Clone Events#

CategoryActionSourceDescription
SnapshotCreateData planeCreated when a snapshot is successfully created
CloneCreateData planeCreated when a clone is successfully created

Was this page helpful? We appreciate your feedback