Hello Experts,
I have been using TIG to receive/store/show Cisco telemetry data from my C9800 WLC and it work GREAT.
But I’m experiencing an issue with parsing client mobility history data, and i hope some one can help solve my problem.
From the CLI of the C9800 i have this data of a client roaming history.
JLDWLC01#sh wireless client mac-address c477.64eb.6282 mobility history
Recent association history (most recent on top):
AP Name BSSID AP Slot Assoc Time Instance Mobility Role Run Latency (ms) Dot11 Roam Type
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
BS27-BRYGGERS 687d.b462.0818 3 08/23/2025 15:01:59 0 Local 11 802.11R
BS27-STUEN 687d.b462.bfd8 3 08/23/2025 15:01:29 0 Local 9 802.11R
BS27-BRYGGERS 687d.b462.0818 3 08/23/2025 12:17:44 0 Local 327 N/A
JLDWLC01#
It is getting received by Telegraf like this. (The data was captured by “Cisco YANG Suite” gRPC Telemetry Receiver)
timestamp: 2025 Aug 23 13:38:35:169000
subscription: 401
node: JLDWLC01
subscribe_path: /Cisco-IOS-XE-wireless-client-oper:client-oper-data/mm-if-client-history/mobility-history
child_path: /
name: client-mac
value: c4:77:64:eb:62:82
child_path: /entry/
name: instance-id
value: 0
child_path: /entry/
name: instance-id
value: 0
child_path: /entry/
name: instance-id
value: 0
child_path: /entry/
name: instance-id
value: 0
child_path: /entry/
name: ms-ap-slot-id
value: 0
child_path: /entry/
name: ms-ap-slot-id
value: 3
child_path: /entry/
name: ms-ap-slot-id
value: 3
child_path: /entry/
name: ms-ap-slot-id
value: 3
child_path: /entry/
name: ms-assoc-time
value: 1970-01-01T00:00:00.000000Z
child_path: /entry/
name: ms-assoc-time
value: 2025-08-23T13:01:59.000000Z
child_path: /entry/
name: ms-assoc-time
value: 2025-08-23T13:01:29.000000Z
child_path: /entry/
name: ms-assoc-time
value: 2025-08-23T10:17:44.000000Z
child_path: /entry/
name: role
value: mm-client-role-local
child_path: /entry/
name: role
value: mm-client-role-local
child_path: /entry/
name: role
value: mm-client-role-local
child_path: /entry/
name: bssid
value: 68:7d:b4:62:08:18
child_path: /entry/
name: bssid
value: 68:7d:b4:62:bf:d8
child_path: /entry/
name: bssid
value: 68:7d:b4:62:08:18
child_path: /entry/
name: ap-name
value: BS27-BRYGGERS
child_path: /entry/
name: ap-name
value: BS27-STUEN
child_path: /entry/
name: ap-name
value: BS27-BRYGGERS
child_path: /entry/
name: run-latency
value: 0
child_path: /entry/
name: run-latency
value: 11
child_path: /entry/
name: run-latency
value: 9
child_path: /entry/
name: run-latency
value: 327
child_path: /entry/
name: dot11-roam-type
value: dot11-roam-type-fast-11r
child_path: /entry/
name: dot11-roam-type
value: dot11-roam-type-fast-11r
child_path: /entry/
name: dot11-roam-type
value: dot11-roam-type-none
But only some of the data is parsed to influxdb. (The data was captured by “outputs.file”)
{
"fields": {
"entry/ap_name": "BS27-BRYGGERS",
"entry/bssid": "68:7d:b4:62:08:18",
"entry/dot11_roam_type": "dot11-roam-type-none",
"entry/instance_id": 0,
"entry/ms_ap_slot_id": 3,
"entry/ms_assoc_time": "2025-08-23T10:17:44.000000Z",
"entry/role": "mm-client-role-local",
"entry/run_latency": 327
},
"name": "Cisco-IOS-XE-wireless-client-oper:client-oper-data/mm-if-client-history/mobility-history",
"tags": {
"client_mac": "c4:77:64:eb:62:82",
"host": "telegraf",
"path": "Cisco-IOS-XE-wireless-client-oper:client-oper-data/mm-if-client-history/mobility-history",
"source": "JLDWLC01",
"subscription": "316"
},
"timestamp": 1755957798
},
Here is a link for the YANG model if needed.
My “take a way” is, that telegraf receives a “nested list” but only parses one line of the list.
I have tried using the “embedded_tags” feature with out result (maybe I’m doing it wrong)
embedded_tags = ["Cisco-IOS-XE-wireless-client-oper:client-oper-data/mm-if-client-history/mobility-history/entry/ms_assoc_time"]
My version of telegraf is 1.35.4 running i docker.
Please let me know if you need further information.
Looking forward to your reply /Jan
