Skip to content

Telemetry

Streaming telemetry configuration manages destination groups, sensor groups, and subscriptions on NX-OS devices. Destination groups define remote collectors (address, port, protocol, encoding). Sensor groups specify monitored data paths with optional filtering and depth. Subscriptions link sensor groups to destination groups with configurable sample intervals. Dial-out transport options (compression, source interface, VRF, retry buffer, gRPC deadline, chunking, maximum message size and TLS certificates) can be set globally in the destination profile or per destination group.

Streaming telemetry configuration manages destination groups, sensor groups, and subscriptions on NX-OS devices. Destination groups define remote collectors (address, port, protocol, encoding). Sensor groups specify monitored data paths with optional filtering and depth. Subscriptions link sensor groups to destination groups with configurable sample intervals.

NameTypeConstraintMandatoryDefault Value
devicesListdevicesNo
device_groupsListdevice_groupsNo
globalClassglobalNo
templatesListtemplatesNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
telemetryClasstelemetryNo

NameTypeConstraintMandatoryDefault Value
batch_dme_eventsBooleantrue, falseNo
merge_subscriptionsBooleantrue, falseNo
certificate_filenameStringNo
certificate_hostnameStringNo
certificate_trustpointStringNo
destination_profile_use_vrfStringNo
destination_profile_use_compressionChoicegzipNo
destination_profile_source_interface_typeChoiceethernet, loopback, mgmt, port-channel, vlan, vniNo
destination_profile_source_interface_idAnyString or Integer[min: 0]No
destination_profile_use_retry_sizeIntegermin: 10, max: 1500No
destination_profile_use_nodeidStringNo
destination_profile_grpc_deadlineIntegermin: 30, max: 120No
destination_groupsListdestination_groupsNo
sensor_groupsListsensor_groupsNo
subscriptionsListsubscriptionsNo

NameTypeConstraintMandatoryDefault Value
batch_dme_eventsBooleantrue, falseNo
merge_subscriptionsBooleantrue, falseNo
destination_profile_use_vrfStringNo
destination_groupsListdestination_groupsNo
sensor_groupsListsensor_groupsNo
subscriptionsListsubscriptionsNo

destination_groups (nxos.devices.configuration.telemetry)

Section titled “destination_groups (nxos.devices.configuration.telemetry)”
NameTypeConstraintMandatoryDefault Value
idAnyInteger or String or String[Regex: ^.*[\$\%]\{.*$]Yes
certificate_filenameStringNo
certificate_hostnameStringNo
use_vrfStringNo
use_compressionChoicegzipNo
source_interface_typeChoiceethernet, loopback, mgmt, port-channel, vlan, vniNo
source_interface_idAnyString or Integer[min: 0]No
use_chunking_sizeIntegermin: 64, max: 4096No
message_max_sizeIntegermin: 12288, max: 32768No
destinationsListdestinationsNo

destination_groups (nxos.devices.configuration.telemetry)

Section titled “destination_groups (nxos.devices.configuration.telemetry)”
NameTypeConstraintMandatoryDefault Value
idAnyInteger or String or String[Regex: ^.*[\$\%]\{.*$]Yes
destinationsListdestinationsNo

sensor_groups (nxos.devices.configuration.telemetry)

Section titled “sensor_groups (nxos.devices.configuration.telemetry)”
NameTypeConstraintMandatoryDefault Value
idAnyInteger or String or String[Regex: ^.*[\$\%]\{.*$]Yes
data_sourceChoiceDME, NX-API, YANG, NATIVE, DEFAULTNo
sensor_pathsListsensor_pathsNo

subscriptions (nxos.devices.configuration.telemetry)

Section titled “subscriptions (nxos.devices.configuration.telemetry)”
NameTypeConstraintMandatoryDefault Value
idIntegermin: 1, max: 4095Yes
sensor_groupsListsensor_groupsNo
destination_groupsListAny[Integer or String]No

destinations (nxos.devices.configuration.telemetry.destination_groups)

Section titled “destinations (nxos.devices.configuration.telemetry.destination_groups)”
NameTypeConstraintMandatoryDefault Value
ip_addressIPYes
portIntegermin: 0, max: 65535Yes
protocolChoiceUDP, gRPC, HTTPNo
encodingChoiceGPB, JSON, GPB-compact, Form-dataNo
node_idStringNo

sensor_paths (nxos.devices.configuration.telemetry.sensor_groups)

Section titled “sensor_paths (nxos.devices.configuration.telemetry.sensor_groups)”
NameTypeConstraintMandatoryDefault Value
pathStringYes
aliasStringNo
depthIntegermin: 0, max: 4294967295No
filter_conditionStringNo
query_conditionStringNo

sensor_groups (nxos.devices.configuration.telemetry.subscriptions)

Section titled “sensor_groups (nxos.devices.configuration.telemetry.subscriptions)”
NameTypeConstraintMandatoryDefault Value
idAnyInteger or String or String[Regex: ^.*[\$\%]\{.*$]Yes
sample_intervalIntegermin: 0, max: 604800000No

Example 1: Basic telemetry with gRPC destination and DME sensor path

nxos:
devices:
- name: LEAF1
configuration:
feature:
telemetry: true
telemetry:
destination_groups:
- id: 1
destinations:
- ip_address: 10.0.0.100
port: 50051
protocol: gRPC
encoding: GPB
sensor_groups:
- id: 1
data_source: DME
sensor_paths:
- path: sys/intf
depth: 0
subscriptions:
- id: 1
sensor_groups:
- id: 1
sample_interval: 30000
destination_groups:
- 1

Example 2: Telemetry with destination profile VRF and multiple sensor paths

nxos:
devices:
- name: SPINE1
configuration:
feature:
telemetry: true
telemetry:
batch_dme_events: false
merge_subscriptions: true
destination_profile_use_vrf: management
destination_groups:
- id: 100
destinations:
- ip_address: 192.168.1.10
port: 50051
protocol: gRPC
encoding: GPB
node_id: spine1
- ip_address: 192.168.1.11
port: 50051
protocol: gRPC
encoding: GPB
node_id: spine1-backup
sensor_groups:
- id: 100
data_source: DME
sensor_paths:
- path: sys/intf
depth: 1
filter_condition: "gt(operBitrate,0)"
alias: interfaces
- path: sys/bgp
depth: 0
alias: bgp-status
- id: 200
data_source: NX-API
sensor_paths:
- path: "show ip route summary"
subscriptions:
- id: 100
sensor_groups:
- id: 100
sample_interval: 5000
destination_groups:
- 100
- id: 200
sensor_groups:
- id: 200
sample_interval: 60000
destination_groups:
- 100

Example 3: Telemetry dial-out options in the destination profile and per destination group

nxos:
devices:
- name: LEAF1
configuration:
feature:
telemetry: true
telemetry:
certificate_trustpoint: TELEMETRY-TP
certificate_hostname: collector.example.com
destination_profile_use_compression: gzip
destination_profile_source_interface_type: loopback
destination_profile_source_interface_id: 0
destination_profile_use_retry_size: 100
destination_profile_use_nodeid: leaf1
destination_profile_grpc_deadline: 60
destination_groups:
- id: 1
certificate_filename: /bootflash/collector.pem
certificate_hostname: collector.example.com
use_vrf: default
use_compression: gzip
source_interface_type: loopback
source_interface_id: 0
use_chunking_size: 128
message_max_size: 16384
destinations:
- ip_address: 10.0.0.100
port: 50051
protocol: gRPC
encoding: GPB

Example 1: Basic telemetry with gRPC destination and DME sensor path

nxos:
devices:
- name: LEAF1
configuration:
feature:
telemetry: true
telemetry:
destination_groups:
- id: 1
destinations:
- ip_address: 10.0.0.100
port: 50051
protocol: gRPC
encoding: GPB
sensor_groups:
- id: 1
data_source: DME
sensor_paths:
- path: sys/intf
depth: 0
subscriptions:
- id: 1
sensor_groups:
- id: 1
sample_interval: 30000
destination_groups:
- 1

Example 2: Telemetry with destination profile VRF and multiple sensor paths

nxos:
devices:
- name: SPINE1
configuration:
feature:
telemetry: true
telemetry:
batch_dme_events: false
merge_subscriptions: true
destination_profile_use_vrf: management
destination_groups:
- id: 100
destinations:
- ip_address: 192.168.1.10
port: 50051
protocol: gRPC
encoding: GPB
node_id: spine1
- ip_address: 192.168.1.11
port: 50051
protocol: gRPC
encoding: GPB
node_id: spine1-backup
sensor_groups:
- id: 100
data_source: DME
sensor_paths:
- path: sys/intf
depth: 1
filter_condition: "gt(operBitrate,0)"
alias: interfaces
- path: sys/bgp
depth: 0
alias: bgp-status
- id: 200
data_source: NX-API
sensor_paths:
- path: "show ip route summary"
subscriptions:
- id: 100
sensor_groups:
- id: 100
sample_interval: 5000
destination_groups:
- 100
- id: 200
sensor_groups:
- id: 200
sample_interval: 60000
destination_groups:
- 100