Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

3 Обнаружение CPUs и ядер CPU

Аналогично 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.

Notes on discovered performance counter items on NUMA systems

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.