Аналогично file systems обнаружены, можно также обнаружить CPUs и ядра CPU.
Ключ элемента данных для использования в discovery rule
· system.cpu.discovery
Этот элемент поддерживается, начиная с агента Zabbix 2.4.
Этот ключ обнаружения возвращает два макроса — {#CPU.NUMBER} и {#CPU.STATUS}, определяющий порядковый номер CPU и статус соответственно. Обратите внимание что фактически невозможно провести четкое различие между физическими процессорами, ядрами и гиперпотоками. {#CPU.STATUS} в Linux, UNIX и системах BSD возвращают статус процессора, который может быть либо «online» или «offline». В системах Windows этот же макрос может представлять третье значение — «unknown» — указывает на то что процессор был обнаружен но информация о нем еще не собрана.
Обнаружение CPU полагается на процесс сбора данных агента, чтобы оставаться в соответствии с данными предоставленными сборщиком и экономить ресурсы на получение данных. Это приводит к тому что этот ключ элемента данных не работает с флагом командной строки test (-t) бинарного файла агента который будет возвращать статус NOT_SUPPORTED и сопроводительное сообщение указывающее что процесс сборщика не запущен.
Прототипы элементов данных которые могут быть созданы на основе обнаружения CPU включают, для примера:
system.cpu.util[{#CPU.NUMBER},<type>,<mode>]
system.hw.cpu[{#CPU.NUMBER},<info>]
Подробное описание ключа элемента данных см. в разделе Zabbix agent item keys.
Some Windows performance counters might be not available for some of the logical processors at NUMA systems.
For example, items discovered with an item prototype with the key below might work only for the first NUMA node. Items for the other NUMA nodes might be in unsupported state.
perf_counter[\Processor({#CPU.NUMBER})\% Processor Time,60]
Also, a discovery rule with key "system.cpu.discovery" does not provide any low-level discovery macro values to substitute into such performance counters as:
perf_counter["\Processor Information(<NUMA node index>,<CPU index in NUMA node>)\% Processor Time",60]
While system.cpu.util items rely on different performance counters to monitor CPU utilization percentage depending on the processor group count and processor count. Also, there is a rare bug related to processor groups on Windows.