18 Возвращаемые значения для net.if.get

Обзор

В этом разделе приведены сведения о возвращаемом значении для элемента данных net.if.get. Этот элемент данных поддерживается в Linux агентом Zabbix и Zabbix agent 2.

Подробности

Этот элемент данных возвращает подробную информацию о сетевых интерфейсах, имена которых соответствуют заданному регулярному выражению. Вывод структурирован как JSON-объект, содержащий массивы config и values.

Вывод содержит следующие свойства:

  • name - имя интерфейса, считывается из /proc/net/dev;
  • ifalias - псевдоним интерфейса, считывается из /sys/class/net/<name>/ifalias;
  • mac - MAC-адрес интерфейса, считывается из /sys/class/net/<name>/address;
  • type - тип интерфейса (physical, virtual, loopback);
  • speed - скорость соединения в Мбит/с, специфично для Ethernet, считывается из /sys/class/net/<name>/speed;
  • duplex - последнее или текущее значение дуплекса интерфейса (half, full), специфично для Ethernet, считывается из /sys/class/net/<name>/duplex;
  • administrative_state - настроенное состояние (down, up), считывается из /sys/class/net/<name>/flags;
  • operational_state - рабочее состояние интерфейса согласно RFC2863 (unknown, notpresent, down, lowerlayerdown, testing, dormant, up), считывается из sys/class/net/<name>/operstate;
  • carrier - наличие физического соединения (0 - физическое соединение неактивно, 1 - физическое соединение активно), считывается из /sys/class/net/<name>/carrier;
  • carrier_changes - общее количество изменений состояния соединения с up на down и наоборот, считывается из /sys/class/net/<name>/carrier_changes;
  • carrier_up_count - количество раз, когда соединение становилось активным, считывается из /sys/class/net/<name>/carrier_up_count;
  • carrier_down_count - количество раз, когда соединение становилось неактивным, считывается из /sys/class/net/<name>/carrier_down_count;
  • in - входящий трафик, считывается из /proc/net/dev. Содержит счетчики интерфейса:
    • bytes - количество корректных байтов;
    • packets - количество корректных пакетов;
    • errors - общее количество некорректных пакетов;
    • dropped - количество полученных, но не обработанных пакетов + количество пакетов, пропущенных узлом сети;
    • overruns - количество событий переполнения;
    • frame - количество пакетов с ошибками кадрирования;
    • compressed - количество корректно полученных сжатых пакетов;
    • multicast - количество полученных multicast-пакетов.
  • out - исходящий трафик, считывается из /proc/net/dev. Содержит счетчики интерфейса:
    • bytes - количество корректных байтов;
    • packets - количество корректных пакетов;
    • errors - общее количество некорректных пакетов;
    • dropped - количество полученных, но не обработанных пакетов + количество пакетов, пропущенных узлом сети;
    • overruns - количество событий переполнения;
    • collisions - количество коллизий при передаче пакетов;
    • carrier - количество ошибок передачи кадров из-за потери несущей во время передачи;
    • compressed - количество переданных сжатых пакетов.

Недоступные метрики исключаются из JSON-вывода. В следующем примере для интерфейса "lo" не настроен псевдоним, поэтому свойство ifalias исключено.

Пример:

{
    "config": [
        {
            "name": "lo",
            "mac": "00:00:00:00:00:00",
            "type": "loopback",
            "administrative_state": "up",
            "operational_state": "unknown",
            "carrier": 1
        },
        {
            "name": "enp3s0",
            "ifalias": "Wired Ethernet connection",
            "mac": "8c:16:45:e3:1d:58",
            "type": "physical",
            "duplex": "unknown",
            "administrative_state": "up",
            "operational_state": "down",
            "carrier": 0
        },
        {
            "name": "wlp5s0",
            "ifalias": "Wi-Fi network adapter",
            "mac": "34:e1:2d:72:67:c6",
            "type": "physical",
            "administrative_state": "up",
            "operational_state": "up",
            "carrier": 1
        }
    ],
    "values": [
        {
            "name": "lo",
            "mac": "00:00:00:00:00:00",
            "carrier": 1,
            "carrier_changes": 0,
            "carrier_up_count": 0,
            "carrier_down_count": 0,
            "in": {
                "bytes": 1040047,
                "packets": 10784,
                "errors": 0,
                "dropped": 0,
                "overruns": 0,
                "frame": 0,
                "compressed": 0,
                "multicast": 0
            },
            "out": {
                "bytes": 1040047,
                "packets": 10784,
                "errors": 0,
                "dropped": 0,
                "overruns": 0,
                "collisions": 0,
                "carrier": 0,
                "compressed": 0
            }
        },
        {
            "name": "enp3s0",
            "ifalias": "Wired Ethernet connection",
            "mac": "8c:16:45:e3:1d:58",
            "carrier": 0,
            "carrier_changes": 1,
            "carrier_up_count": 0,
            "carrier_down_count": 1,
            "in": {
                "bytes": 0,
                "packets": 0,
                "errors": 0,
                "dropped": 0,
                "overruns": 0,
                "frame": 0,
                "compressed": 0,
                "multicast": 0
            },
            "out": {
                "bytes": 0,
                "packets": 0,
                "errors": 0,
                "dropped": 0,
                "overruns": 0,
                "collisions": 0,
                "carrier": 0,
                "compressed": 0
            }
        },
        {
            "name": "wlp5s0",
            "ifalias": "Wi-Fi network adapter",
            "mac": "34:e1:2d:72:67:c6",
            "carrier": 1,
            "carrier_changes": 6,
            "carrier_up_count": 3,
            "carrier_down_count": 3,
            "in": {
                "bytes": 165537298,
                "packets": 216182,
                "errors": 0,
                "dropped": 291,
                "overruns": 0,
                "frame": 0,
                "compressed": 0,
                "multicast": 0
            },
            "out": {
                "bytes": 252574347,
                "packets": 246607,
                "errors": 0,
                "dropped": 0,
                "overruns": 0,
                "collisions": 0,
                "carrier": 0,
                "compressed": 0
            }
        }
    ]
}

См. также

Дополнительную информацию о sysfs ABI для сетевых устройств см. в: