3 CPU un CPU kodolu atklāšana

Līdzīgi kā tiek atklātas failu sistēmas, ir iespējams atklāt arī CPU un CPU kodolus.

Vienuma atslēga

Vienuma atslēga, ko izmantot atklāšanas kārtulā, ir

system.cpu.discovery

Atbalstītie makrosi

Šī atklāšanas atslēga atgriež divus makrosus — {#CPU.NUMBER} un {#CPU.STATUS}, kas attiecīgi identificē CPU kārtas numuru un statusu. Tā uzskaita procesorus no 0 līdz N - 1, kur N ir kopējais procesoru skaits.

[
    {
        "{#CPU.NUMBER}": 0,
        "{#CPU.STATUS}": "online"
    },
    {
        "{#CPU.NUMBER}": 1,
        "{#CPU.STATUS}": "offline"
    },
    {
        "{#CPU.NUMBER}": 2,
        "{#CPU.STATUS}": "unknown" /* "unknown" ir tikai Windows sistēmās */
    },
    {
        "{#CPU.NUMBER}": 3,
        "{#CPU.STATUS}": "online"
    }
]

Ņemiet vērā, ka nav iespējams skaidri nošķirt faktiskos fiziskos procesorus, kodolus un hiperpavedienus. {#CPU.STATUS} Linux, UNIX un BSD sistēmās atgriež procesora statusu, kas var būt vai nu "online", vai "offline". Windows sistēmās šis pats makross var attēlot arī trešo vērtību — "unknown" —, kas norāda, ka procesors ir noteikts, bet informācija par to vēl nav savākta.

CPU atklāšana balstās uz aģenta kolektora procesu, lai saglabātu saskaņotību ar kolektora sniegtajiem datiem un taupītu resursus datu iegūšanas laikā. Tas nozīmē, ka šī vienuma atslēga nedarbojas ar aģenta binārā faila komandrindas karodziņu testēšanai (-t), kas atgriezīs statusu NOT_SUPPORTED un tam pievienotu ziņojumu, ka kolektora process nav palaists.

Vienumu prototipi, ko var izveidot, pamatojoties uz CPU atklāšanu, ietver, piemēram:

  • system.cpu.util[{#CPU.NUMBER},<type>,<mode>]
  • system.hw.cpu[{#CPU.NUMBER},<info>]

Detalizētu vienumu atslēgu aprakstu skatiet sadaļā Zabbix aģenta vienumu atslēgas.

Piezīmes par atklātajiem veiktspējas skaitītāju vienumiem NUMA sistēmās

Daži Windows veiktspējas skaitītāji var nebūt pieejami dažiem loģiskajiem procesoriem NUMA sistēmās.

Piemēram, vienumi, kas atklāti ar vienuma prototipu, izmantojot tālāk norādīto atslēgu, var darboties tikai pirmajam NUMA mezglam. Vienumi citiem NUMA mezgliem var būt neatbalstītā stāvoklī.

perf_counter[\Processor({#CPU.NUMBER})\% Processor Time,60]

Tāpat atklāšanas kārtula ar atslēgu "system.cpu.discovery" nenodrošina nevienu zema līmeņa atklāšanas makro vērtību, ko aizvietot šādos veiktspējas skaitītājos kā:

perf_counter["\Processor Information(<NUMA node index>,<CPU index in NUMA node>)\% Processor Time",60]

Savukārt system.cpu.util vienumi izmanto atšķirīgus veiktspējas skaitītājus, lai uzraudzītu CPU noslodzes procentu atkarībā no procesoru grupu skaita un procesoru skaita. Pastāv arī reta kļūda, kas saistīta ar procesoru grupām Windows vidē.