Network adapter IO
0readings
0conditions
0themes fed
Livestatus
Per-adapter traffic, errors, discards and link utilization over a measured window.
Topic id: network_adapter_io.
Reported every 5 minutes on clock boundaries for the window ending at t. sparklogs.window_coverage_pct is below 100 when collection covered only part of the window. Use chart buckets at least 5 minutes wide.
Fields
Bytes and packets moved, error and discard rates, and link utilization for each network adapter over the reporting window.
| Field | Type | Unit | Meaning |
|---|---|---|---|
sparklogs.data.network_adapter_io.adapter | string | The adapter, as network_adapters keys it. | |
sparklogs.data.network_adapter_io.network_context_key | string | The network the host's primary path was last connected to when the row was captured: the performance singleton's network_context_key, the same value with the same retention (kept while offline or while a new network resolves, and across a restart). It names the host's primary network, not the network this adapter is on, which can differ; a grouping key, not anonymization. Absent until a network first resolves. | |
sparklogs.data.network_adapter_io.media | string | The physical adapter's medium: wired, wifi or cellular. Absent when unknown or when it was not measured as physical. | |
sparklogs.data.network_adapter_io.operational_status | string | The adapter's operational status at the window's latest interval that measured it, under any class: the layer and spelling network_adapters reports in operational_status (the topmost filter of the adapter's chain), up, down, testing, unknown, dormant, not_present or lower_layer_down. On rows measured only under other_support too. Absent when there is no fresh, complete inventory classification, or that reading lacked the top layer. | |
sparklogs.data.network_adapter_io.link_down_transitions | integer | count | How often the adapter's link went from up to down between consecutive adapter readings (about 10 s apart), each pair counted in the emitted row holding its later reading, so the pair across a row's boundary counts once and consecutive rows sum while each is at most one window late, under any class: the operational status network_adapters reports moving from up to down, lower_layer_down, not_present or dormant (testing and unknown never count). On rows measured only under other_support too. A count: windows roll up by summing. 0 when the readings saw the link stay up or stay down. Absent when no interval read the status at both its readings. |
sparklogs.data.network_adapter_io.rx_bytes_per_s_avg | float | bytes_per_second | Bytes received per second over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.tx_bytes_per_s_avg | float | bytes_per_second | Bytes sent per second over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.rx_packets_per_s_avg | float | per_second | Unicast and non-unicast packets received per second over the same physical observed_ms as rx_bytes. Absent without physical support. |
sparklogs.data.network_adapter_io.tx_packets_per_s_avg | float | per_second | Unicast and non-unicast packets sent per second over the same physical observed_ms as tx_bytes. Absent without physical support. |
sparklogs.data.network_adapter_io.packets_per_s_avg | float | per_second | Unicast and non-unicast packets in and out per second over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.error_pct_avg | float | percent | Inbound plus outbound errors as a percent of every packet received or sent over the physical support, errored, discarded and unknown-protocol ones included. Absent when no packet was counted. |
sparklogs.data.network_adapter_io.discard_pct_avg | float | percent | Inbound plus outbound discards as a percent of every packet received or sent over the physical support, errored, discarded and unknown-protocol ones included. Absent when no packet was counted. |
sparklogs.data.network_adapter_io.utilization_pct_avg | float | percent | Time-weighted mean of the larger of received and sent bits per second over that direction's link speed, the higher of its speeds at the interval's start and end, at most 100, over the physical support. Absent without a comparable speed. |
sparklogs.data.network_adapter_io.utilization_pct_max_10s | float | percent | The highest accepted interval utilization over the physical support. Absent without a comparable speed. |
sparklogs.data.network_adapter_io.link_speed_bps | integer | The larger directional link speed at the last accepted physical interval. Absent without a comparable speed. | |
sparklogs.data.network_adapter_io.observed_ms | integer | milliseconds | Accepted physical interval time in the window. Absent without physical support. |
sparklogs.data.network_adapter_io.interval_count | integer | count | Accepted physical intervals in the window. Absent without physical support. |
sparklogs.data.network_adapter_io.rx_bytes | integer | bytes | Bytes received over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.tx_bytes | integer | bytes | Bytes sent over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.rx_packets | integer | count | Unicast and non-unicast packets received over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.tx_packets | integer | count | Unicast and non-unicast packets sent over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.packets | integer | count | Packets in and out over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.errors | integer | count | Inbound plus outbound errors over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.discards | integer | count | Inbound plus outbound discards over the physical support. Absent without physical support. |
sparklogs.data.network_adapter_io.wifi_connected | bool | Whether the WLAN service listed this Wi-Fi radio as connected in any accepted interval of the window. Absent for an adapter that is not a radio the service lists. | |
sparklogs.data.network_adapter_io.wifi_rssi_dbm_avg | float | Time-weighted mean of the radio's plausible signal strength samples in dBm: -200 through -1 while connected. Absent without a plausible sample. | |
sparklogs.data.network_adapter_io.wifi_rssi_status | string | The plausibility of the radio's last signal strength sample: plausible, unavailable (zero) or invalid (positive or below -200, never negated or averaged). Absent when no sample was read at its last accepted interval. | |
sparklogs.data.network_adapter_io.wifi_rssi_raw | integer | The radio's last signal strength sample as the driver reported it, plausible or not. Absent when unavailable or not read. | |
sparklogs.data.network_adapter_io.wifi_rssi_outcome | string | What the radio's last signal strength query did: ready, unsupported, access_denied, malformed, deadline or failed. Absent when it was not asked, because it was not connected. | |
sparklogs.data.network_adapter_io.wifi_signal_pct_avg | float | percent | Time-weighted mean of the radio's link quality percent, 0 to 100, as the OS reports it. Absent where the OS or driver does not report it, and without a sample. |
sparklogs.data.network_adapter_io.wifi_signal_outcome | string | What the radio's last link quality query did, as wifi_rssi_outcome: unsupported where the OS predates it. Absent when it was not asked. | |
sparklogs.data.network_adapter_io.wifi_band | string | The band of the radio's channel at its last accepted interval, from the realtime link answer's channel center frequency: 2.4 (2400 to 2500 MHz), 5 (4900 to 5900 MHz) or 6 (5925 to 7125 MHz) GHz. A multi-link connection names a band only when its links agree; links without an in-range frequency are skipped. Changes on a roam. Absent where the OS or driver does not answer the realtime query (wifi_signal_outcome says so), and for a frequency outside those ranges. | |
sparklogs.data.network_adapter_io.wifi_phy | string | The 802.11 generation of the radio's PHY at its last accepted interval, from the realtime link answer: b, g, a, n, ac, ax or be. Changes on a roam. Absent where the OS or driver does not answer the realtime query, and for any other PHY type. | |
sparklogs.data.network_adapter_io.wifi_channel_changes | integer | count | How many times the radio's channel center frequency changed (for a multi-link connection, its set of link frequencies) between consecutive realtime link readings in the window that named one; a reading while disconnected, or without an answer, is skipped. Not a roam count: a roam to an access point on the same channel is missed, and an access point's own channel switch counts. 0 is a measured zero. Absent where the OS or driver does not answer the realtime query, and with fewer than two such readings in the window. |
sparklogs.data.network_adapter_io.wifi_tx_frames | integer | count | Frames the radio transmitted successfully, summed over its PHYs, over the intervals its PHY counters paired. Absent without such an interval. |
sparklogs.data.network_adapter_io.wifi_tx_retried_frames | integer | count | Of wifi_tx_frames, the ones that needed at least one retry. Absent without such an interval. |
sparklogs.data.network_adapter_io.wifi_tx_failed_frames | integer | count | Frames the radio dropped after its retry limit, summed over its PHYs, over the same intervals as wifi_tx_frames: never transmitted, so not among wifi_tx_frames; the failed share is this over wifi_tx_frames plus this. Absent without such an interval. |
sparklogs.data.network_adapter_io.wifi_statistics_observed_ms | integer | milliseconds | Accepted interval time over which the radio's PHY counters paired: the time wifi_tx_frames, wifi_tx_retried_frames and wifi_tx_failed_frames cover. Absent without such an interval. |
sparklogs.data.network_adapter_io.wifi_statistics_outcome | string | What the radio's last PHY counter query did, as wifi_rssi_outcome. Absent for an adapter that is not a radio the service lists. | |
sparklogs.data.network_adapter_io.other_support | object_array | The window's intervals under any class but physical, one entry per class (unknown: the inventory had not classified it; non_physical: a virtual, tunnel, miniport, loopback or not-present adapter, or a radio's virtual port), each with its own counts. At most two entries. Absent when every interval was physical. | |
sparklogs.data.network_adapter_io.other_support[].class | string | In each other_support entry. | |
sparklogs.data.network_adapter_io.other_support[].observed_ms | integer | milliseconds | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].interval_count | integer | count | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].rx_bytes | integer | bytes | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].tx_bytes | integer | bytes | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].rx_packets | integer | count | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].tx_packets | integer | count | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].packets | integer | count | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].errors | integer | count | In each other_support entry. |
sparklogs.data.network_adapter_io.other_support[].discards | integer | count | In each other_support entry. |
This topic reports what the host looks like rather than scoring a condition on it. The values it carries are queryable on their own.
Example
Inventory (every 5 minutes)
3 adapters measured.
sparklogs.data.network_adapter_io.adapter: network_adapter:0006008004000000
SparkLogs: CONTEXT, Info, network_adapter_io: INVENTORY: 3 adapters measured.