From cd09d998b89d4d0958d6b4834c9ed2ea4bae018b Mon Sep 17 00:00:00 2001 From: Lucas Date: Mon, 23 Dec 2024 09:42:43 +0100 Subject: [PATCH] fix: Override history to 7d in discovered items and windows_active --- Overrides/Linux_by_Zabbix_agent/7.0/DIFF.md | 184 ++ .../7.0/Linux_by_Zabbix_agent.yaml | 23 + Overrides/Linux_by_Zabbix_agent/7.0/README.md | 23 + .../7.0/DIFF.md | 284 +++ .../7.0/README.md | 1844 ++++++++++++++++ .../7.0/Windows_by_Zabbix_agent_active.yaml | 1916 +++++++++++++++++ .../7.0/docs/gen_ref_pages.py | 6 + .../7.0/mkdocs.yaml | 17 + README.md | 1 + catalog-info.yaml | 28 + hack/plays/manage.yml | 2 + 11 files changed, 4328 insertions(+) create mode 100644 Overrides/Windows_by_Zabbix_agent_active/7.0/DIFF.md create mode 100644 Overrides/Windows_by_Zabbix_agent_active/7.0/README.md create mode 100644 Overrides/Windows_by_Zabbix_agent_active/7.0/Windows_by_Zabbix_agent_active.yaml create mode 100644 Overrides/Windows_by_Zabbix_agent_active/7.0/docs/gen_ref_pages.py create mode 100644 Overrides/Windows_by_Zabbix_agent_active/7.0/mkdocs.yaml diff --git a/Overrides/Linux_by_Zabbix_agent/7.0/DIFF.md b/Overrides/Linux_by_Zabbix_agent/7.0/DIFF.md index fb9c27e0..35caa8d3 100644 --- a/Overrides/Linux_by_Zabbix_agent/7.0/DIFF.md +++ b/Overrides/Linux_by_Zabbix_agent/7.0/DIFF.md @@ -342,6 +342,190 @@ Original: [Linux by Zabbix agent](https://raw.githubusercontent.com/zabbix/zabbi description: 'Used for monitoring the availability status of the agent.' valuemap: name: zabbix.host.available +@@ -641,6 +683,7 @@ + name: 'Interface {#IFNAME}: Inbound packets discarded' + key: 'net.if.in["{#IFNAME}",dropped]' + delay: 3m ++ history: 7d + preprocessing: + - type: CHANGE_PER_SECOND + parameters: +@@ -654,6 +697,7 @@ + name: 'Interface {#IFNAME}: Inbound packets with errors' + key: 'net.if.in["{#IFNAME}",errors]' + delay: 3m ++ history: 7d + preprocessing: + - type: CHANGE_PER_SECOND + parameters: +@@ -667,6 +711,7 @@ + name: 'Interface {#IFNAME}: Bits received' + key: 'net.if.in["{#IFNAME}"]' + delay: 3m ++ history: 7d + units: bps + preprocessing: + - type: CHANGE_PER_SECOND +@@ -684,6 +729,7 @@ + name: 'Interface {#IFNAME}: Outbound packets discarded' + key: 'net.if.out["{#IFNAME}",dropped]' + delay: 3m ++ history: 7d + preprocessing: + - type: CHANGE_PER_SECOND + parameters: +@@ -697,6 +743,7 @@ + name: 'Interface {#IFNAME}: Outbound packets with errors' + key: 'net.if.out["{#IFNAME}",errors]' + delay: 3m ++ history: 7d + preprocessing: + - type: CHANGE_PER_SECOND + parameters: +@@ -710,6 +757,7 @@ + name: 'Interface {#IFNAME}: Bits sent' + key: 'net.if.out["{#IFNAME}"]' + delay: 3m ++ history: 7d + units: bps + preprocessing: + - type: CHANGE_PER_SECOND +@@ -726,6 +774,7 @@ + - uuid: 3efd24ad36b04eb995cfeab82721c2fe + name: 'Interface {#IFNAME}: Operational status' + key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]' ++ history: 7d + trends: '0' + description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt' + valuemap: +@@ -788,6 +837,7 @@ + name: 'Interface {#IFNAME}: Speed' + key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]' + delay: 5m ++ history: 7d + trends: '0' + units: bps + description: | +@@ -811,6 +861,7 @@ + name: 'Interface {#IFNAME}: Interface type' + key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]' + delay: 1h ++ history: 7d + trends: '0' + description: | + It indicates the interface protocol type as a decimal value. +@@ -958,6 +1009,7 @@ + type: DEPENDENT + key: 'vfs.dev.queue_size[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + description: 'The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected.' + preprocessing: +@@ -981,6 +1033,7 @@ + name: '{#DEVNAME}: Disk read request avg waiting time (r_await)' + type: CALCULATED + key: 'vfs.dev.read.await[{#DEVNAME}]' ++ history: 7d + value_type: FLOAT + units: '!ms' + params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)' +@@ -995,6 +1048,7 @@ + type: DEPENDENT + key: 'vfs.dev.read.rate[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + units: '!r/s' + description: 'r/s (read operations per second) - the number (after merges) of read requests completed per second for the device.' +@@ -1017,6 +1071,7 @@ + type: DEPENDENT + key: 'vfs.dev.read.time.rate[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + description: 'The rate of total read time counter; used in `r_await` calculation.' + preprocessing: +@@ -1041,6 +1096,7 @@ + type: DEPENDENT + key: 'vfs.dev.util[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests.' +@@ -1065,6 +1121,7 @@ + name: '{#DEVNAME}: Disk write request avg waiting time (w_await)' + type: CALCULATED + key: 'vfs.dev.write.await[{#DEVNAME}]' ++ history: 7d + value_type: FLOAT + units: '!ms' + params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)' +@@ -1079,6 +1136,7 @@ + type: DEPENDENT + key: 'vfs.dev.write.rate[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + units: '!w/s' + description: 'w/s (write operations per second) - the number (after merges) of write requests completed per second for the device.' +@@ -1101,6 +1159,7 @@ + type: DEPENDENT + key: 'vfs.dev.write.time.rate[{#DEVNAME}]' + delay: '0' ++ history: 7d + value_type: FLOAT + description: 'The rate of total write time counter; used in `w_await` calculation.' + preprocessing: +@@ -1215,6 +1274,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent.inode[{#FSNAME},pfree]' + delay: '0' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'Free metadata space expressed in %.' +@@ -1264,6 +1324,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},free]' + delay: '0' ++ history: 7d + units: B + description: 'Available storage space expressed in bytes.' + preprocessing: +@@ -1284,6 +1345,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},pused]' + delay: '0' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'Calculated as the percentage of currently used space compared to the maximum available space.' +@@ -1341,6 +1403,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},total]' + delay: '0' ++ history: 7d + units: B + description: 'Total space expressed in bytes.' + preprocessing: +@@ -1361,6 +1424,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},used]' + delay: '0' ++ history: 7d + units: B + description: 'Used storage expressed in bytes.' + preprocessing: +@@ -1405,6 +1469,7 @@ + type: DEPENDENT + key: 'vfs.fs.dependent[{#FSNAME},readonly]' + delay: '0' ++ history: 7d + description: 'The filesystem is mounted as read-only. It is available only for Zabbix agents 6.4 and higher.' + preprocessing: + - type: JSONPATH ``` diff --git a/Overrides/Linux_by_Zabbix_agent/7.0/Linux_by_Zabbix_agent.yaml b/Overrides/Linux_by_Zabbix_agent/7.0/Linux_by_Zabbix_agent.yaml index 41fe757d..764b5636 100644 --- a/Overrides/Linux_by_Zabbix_agent/7.0/Linux_by_Zabbix_agent.yaml +++ b/Overrides/Linux_by_Zabbix_agent/7.0/Linux_by_Zabbix_agent.yaml @@ -683,6 +683,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Inbound packets discarded' key: 'net.if.in["{#IFNAME}",dropped]' delay: 3m + history: 7d preprocessing: - type: CHANGE_PER_SECOND parameters: @@ -696,6 +697,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Inbound packets with errors' key: 'net.if.in["{#IFNAME}",errors]' delay: 3m + history: 7d preprocessing: - type: CHANGE_PER_SECOND parameters: @@ -709,6 +711,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Bits received' key: 'net.if.in["{#IFNAME}"]' delay: 3m + history: 7d units: bps preprocessing: - type: CHANGE_PER_SECOND @@ -726,6 +729,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Outbound packets discarded' key: 'net.if.out["{#IFNAME}",dropped]' delay: 3m + history: 7d preprocessing: - type: CHANGE_PER_SECOND parameters: @@ -739,6 +743,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Outbound packets with errors' key: 'net.if.out["{#IFNAME}",errors]' delay: 3m + history: 7d preprocessing: - type: CHANGE_PER_SECOND parameters: @@ -752,6 +757,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Bits sent' key: 'net.if.out["{#IFNAME}"]' delay: 3m + history: 7d units: bps preprocessing: - type: CHANGE_PER_SECOND @@ -768,6 +774,7 @@ zabbix_export: - uuid: 3efd24ad36b04eb995cfeab82721c2fe name: 'Interface {#IFNAME}: Operational status' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/operstate"]' + history: 7d trends: '0' description: 'Reference: https://www.kernel.org/doc/Documentation/networking/operstates.txt' valuemap: @@ -830,6 +837,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Speed' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/speed"]' delay: 5m + history: 7d trends: '0' units: bps description: | @@ -853,6 +861,7 @@ zabbix_export: name: 'Interface {#IFNAME}: Interface type' key: 'vfs.file.contents["/sys/class/net/{#IFNAME}/type"]' delay: 1h + history: 7d trends: '0' description: | It indicates the interface protocol type as a decimal value. @@ -1000,6 +1009,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.queue_size[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT description: 'The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected.' preprocessing: @@ -1023,6 +1033,7 @@ zabbix_export: name: '{#DEVNAME}: Disk read request avg waiting time (r_await)' type: CALCULATED key: 'vfs.dev.read.await[{#DEVNAME}]' + history: 7d value_type: FLOAT units: '!ms' params: '(last(//vfs.dev.read.time.rate[{#DEVNAME}])/(last(//vfs.dev.read.rate[{#DEVNAME}])+(last(//vfs.dev.read.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.read.rate[{#DEVNAME}]) > 0)' @@ -1037,6 +1048,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.read.rate[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT units: '!r/s' description: 'r/s (read operations per second) - the number (after merges) of read requests completed per second for the device.' @@ -1059,6 +1071,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.read.time.rate[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT description: 'The rate of total read time counter; used in `r_await` calculation.' preprocessing: @@ -1083,6 +1096,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.util[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT units: '%' description: 'The percentage of elapsed time during which the selected disk drive was busy while servicing read or write requests.' @@ -1107,6 +1121,7 @@ zabbix_export: name: '{#DEVNAME}: Disk write request avg waiting time (w_await)' type: CALCULATED key: 'vfs.dev.write.await[{#DEVNAME}]' + history: 7d value_type: FLOAT units: '!ms' params: '(last(//vfs.dev.write.time.rate[{#DEVNAME}])/(last(//vfs.dev.write.rate[{#DEVNAME}])+(last(//vfs.dev.write.rate[{#DEVNAME}])=0)))*1000*(last(//vfs.dev.write.rate[{#DEVNAME}]) > 0)' @@ -1121,6 +1136,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.write.rate[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT units: '!w/s' description: 'w/s (write operations per second) - the number (after merges) of write requests completed per second for the device.' @@ -1143,6 +1159,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.dev.write.time.rate[{#DEVNAME}]' delay: '0' + history: 7d value_type: FLOAT description: 'The rate of total write time counter; used in `w_await` calculation.' preprocessing: @@ -1257,6 +1274,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent.inode[{#FSNAME},pfree]' delay: '0' + history: 7d value_type: FLOAT units: '%' description: 'Free metadata space expressed in %.' @@ -1306,6 +1324,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},free]' delay: '0' + history: 7d units: B description: 'Available storage space expressed in bytes.' preprocessing: @@ -1326,6 +1345,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},pused]' delay: '0' + history: 7d value_type: FLOAT units: '%' description: 'Calculated as the percentage of currently used space compared to the maximum available space.' @@ -1383,6 +1403,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},total]' delay: '0' + history: 7d units: B description: 'Total space expressed in bytes.' preprocessing: @@ -1403,6 +1424,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent.size[{#FSNAME},used]' delay: '0' + history: 7d units: B description: 'Used storage expressed in bytes.' preprocessing: @@ -1447,6 +1469,7 @@ zabbix_export: type: DEPENDENT key: 'vfs.fs.dependent[{#FSNAME},readonly]' delay: '0' + history: 7d description: 'The filesystem is mounted as read-only. It is available only for Zabbix agents 6.4 and higher.' preprocessing: - type: JSONPATH diff --git a/Overrides/Linux_by_Zabbix_agent/7.0/README.md b/Overrides/Linux_by_Zabbix_agent/7.0/README.md index 7a62491b..5a0476f3 100644 --- a/Overrides/Linux_by_Zabbix_agent/7.0/README.md +++ b/Overrides/Linux_by_Zabbix_agent/7.0/README.md @@ -957,6 +957,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Inbound packets with errors @@ -972,6 +973,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Bits received @@ -987,6 +989,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Outbound packets discarded @@ -1002,6 +1005,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Outbound packets with errors @@ -1017,6 +1021,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Bits sent @@ -1032,6 +1037,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Operational status @@ -1047,6 +1053,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Speed @@ -1066,6 +1073,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | ##### Discovery Rule: Network interface discovery: Item Prototype: Interface {#IFNAME}: Interface type @@ -1084,6 +1092,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | +| History | 7d | #### Discovery Rule: Network interface discovery: Discovery Triggers @@ -1147,6 +1156,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1173,6 +1183,7 @@ Settings: | ------------ | ----- | | Type | CALCULATED | | Value type | FLOAT in !ms | +| History | 7d | ##### Discovery Rule: Block devices discovery: Item Prototype: {#DEVNAME}: Disk read rate @@ -1190,6 +1201,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT in !r/s | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1215,6 +1227,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1241,6 +1254,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT in % | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1267,6 +1281,7 @@ Settings: | ------------ | ----- | | Type | CALCULATED | | Value type | FLOAT in !ms | +| History | 7d | ##### Discovery Rule: Block devices discovery: Item Prototype: {#DEVNAME}: Disk write rate @@ -1284,6 +1299,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT in !w/s | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1309,6 +1325,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT | +| History | 7d | | Source item | `vfs.file.contents[/sys/block/{#DEVNAME}/stat]` | Preprocessing steps: @@ -1384,6 +1401,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT in % | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: @@ -1407,6 +1425,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | | Type | DEPENDENT | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: @@ -1431,6 +1450,7 @@ Settings: | ------------ | ----- | | Type | DEPENDENT | | Value type | FLOAT in % | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: @@ -1454,6 +1474,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | | Type | DEPENDENT | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: @@ -1477,6 +1498,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | | Type | DEPENDENT | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: @@ -1525,6 +1547,7 @@ Settings: | Item Setting | Value | | ------------ | ----- | | Type | DEPENDENT | +| History | 7d | | Source item | `vfs.fs.dependent[{#FSNAME},data]` | Preprocessing steps: diff --git a/Overrides/Windows_by_Zabbix_agent_active/7.0/DIFF.md b/Overrides/Windows_by_Zabbix_agent_active/7.0/DIFF.md new file mode 100644 index 00000000..ef637469 --- /dev/null +++ b/Overrides/Windows_by_Zabbix_agent_active/7.0/DIFF.md @@ -0,0 +1,284 @@ +# Compare Rabe Override with Upstream Template + +Original: [Windows by Zabbix agent active](https://raw.githubusercontent.com/zabbix/zabbix/release/7.0/templates/os/windows_agent_active/template_os_windows_agent_active.yaml) + +## Diff + +```diff +--- before ++++ after +@@ -24,6 +24,7 @@ + type: ZABBIX_ACTIVE + key: agent.hostname + delay: 1h ++ history: 7d + value_type: CHAR + trends: '0' + preprocessing: +@@ -37,6 +38,7 @@ + name: 'Zabbix agent ping' + type: ZABBIX_ACTIVE + key: agent.ping ++ history: 7d + description: 'The agent always returns "1" for this item. May be used in combination with `nodata()` for the availability check.' + valuemap: + name: 'Zabbix agent ping status' +@@ -59,6 +61,7 @@ + type: ZABBIX_ACTIVE + key: agent.version + delay: 1h ++ history: 7d + value_type: CHAR + trends: '0' + preprocessing: +@@ -72,6 +75,7 @@ + name: 'Cache bytes' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Cache Bytes"]' ++ history: 7d + units: B + description: 'Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes, Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays the last observed value only; it is not an average.' + tags: +@@ -81,6 +85,7 @@ + name: 'Free system page table entries' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Free System Page Table Entries"]' ++ history: 7d + description: 'This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may be a memory leak or you running out of memory.' + tags: + - tag: component +@@ -102,6 +107,7 @@ + name: 'Memory page faults per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Page Faults/sec"]' ++ history: 7d + value_type: FLOAT + description: 'Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages faulted per second because only one page is faulted in each fault operation, hence this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays.' + tags: +@@ -111,6 +117,7 @@ + name: 'Memory pages per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Pages/sec"]' ++ history: 7d + value_type: FLOAT + description: | + This measures the rate at which pages are read from or written to disk to resolve hard page faults. +@@ -135,6 +142,7 @@ + name: 'Memory pool non-paged' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]' ++ history: 7d + units: B + description: | + This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. +@@ -146,6 +154,7 @@ + name: 'Used swap space in %' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Paging file(_Total)\% Usage"]' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The used space of swap volume/file in percent.' +@@ -158,6 +167,7 @@ + name: 'CPU DPC time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. `% DPC Time` is a component of `% Privileged Time` because DPCs are executed in privileged mode. If a high `% DPC Time` is sustained, there may be a processor bottleneck or an application or hardware related issue that can significantly diminish overall system performance.' +@@ -168,6 +178,7 @@ + name: 'CPU interrupt time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% Interrupt Time` counter indicates how much time the processor spends handling hardware interrupts during sample intervals. It reflects the activity of devices like the system clock, mouse, disk drivers, and network cards. A value above 20% suggests possible hardware issues.' +@@ -191,6 +202,7 @@ + name: 'CPU privileged time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% Privileged Time` counter shows the percent of time that the processor is spent executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode functions of the Windows Operating System.' +@@ -216,6 +228,7 @@ + name: 'CPU user time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% User Time"]' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% User Time` counter shows the percent of time that the processor(s) is spent executing in User mode.' +@@ -226,6 +239,7 @@ + name: 'Context switches per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Context Switches/sec"]' ++ history: 7d + value_type: FLOAT + description: | + Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. +@@ -239,6 +253,7 @@ + name: 'CPU queue length' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Processor Queue Length"]' ++ history: 7d + value_type: FLOAT + description: 'The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue and are waiting to be executed.' + tags: +@@ -248,6 +263,7 @@ + name: 'Number of threads' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Threads"]' ++ history: 7d + description: 'The number of threads used by all running processes.' + tags: + - tag: component +@@ -256,6 +272,7 @@ + name: 'Number of processes' + type: ZABBIX_ACTIVE + key: 'proc.num[]' ++ history: 7d + description: 'The number of processes.' + tags: + - tag: component +@@ -264,6 +281,7 @@ + name: 'CPU utilization' + type: ZABBIX_ACTIVE + key: system.cpu.util ++ history: 7d + value_type: FLOAT + units: '%' + description: 'CPU utilization expressed in %.' +@@ -286,6 +304,7 @@ + type: ZABBIX_ACTIVE + key: system.hostname + delay: 1h ++ history: 7d + value_type: CHAR + trends: '0' + description: 'The host name of the system.' +@@ -312,6 +331,7 @@ + name: 'System local time' + type: ZABBIX_ACTIVE + key: system.localtime ++ history: 7d + units: unixtime + description: 'The local system time of the host.' + tags: +@@ -322,6 +342,7 @@ + type: ZABBIX_ACTIVE + key: system.sw.arch + delay: 1h ++ history: 7d + value_type: CHAR + trends: '0' + description: 'The architecture of the operating system.' +@@ -337,6 +358,7 @@ + type: ZABBIX_ACTIVE + key: system.sw.os + delay: 1h ++ history: 7d + value_type: CHAR + trends: '0' + inventory_link: OS +@@ -364,6 +386,7 @@ + name: 'Free swap space' + type: CALCULATED + key: system.swap.free ++ history: 7d + units: B + params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])' + description: 'The free space of the swap volume/file expressed in bytes.' +@@ -377,6 +400,7 @@ + type: DEPENDENT + key: system.swap.pfree + delay: '0' ++ history: 7d + value_type: FLOAT + units: '%' + description: 'The free space of the swap volume/file expressed in %.' +@@ -395,6 +419,7 @@ + name: 'Total swap space' + type: ZABBIX_ACTIVE + key: 'system.swap.size[,total]' ++ history: 7d + units: B + description: 'The total space of the swap volume/file expressed in bytes.' + tags: +@@ -407,6 +432,7 @@ + type: ZABBIX_ACTIVE + key: system.uname + delay: 15m ++ history: 7d + value_type: CHAR + trends: '0' + description: 'System description of the host.' +@@ -422,6 +448,7 @@ + type: ZABBIX_ACTIVE + key: system.uptime + delay: 30s ++ history: 7d + trends: '0' + units: uptime + description: 'The system uptime expressed in the following format: "N days, hh:mm:ss".' +@@ -454,6 +481,7 @@ + name: 'Total memory' + type: ZABBIX_ACTIVE + key: 'vm.memory.size[total]' ++ history: 7d + units: B + description: 'Total memory expressed in bytes.' + tags: +@@ -463,6 +491,7 @@ + name: 'Used memory' + type: ZABBIX_ACTIVE + key: 'vm.memory.size[used]' ++ history: 7d + units: B + description: 'Used memory in bytes.' + tags: +@@ -472,6 +501,7 @@ + name: 'Memory utilization' + type: CALCULATED + key: vm.memory.util ++ history: 7d + value_type: FLOAT + units: '%' + params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100' +@@ -510,6 +540,7 @@ + name: 'Number of cores' + type: ZABBIX_ACTIVE + key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]' ++ history: 7d + description: 'The number of logical processors available on the computer.' + tags: + - tag: component +@@ -518,6 +549,7 @@ + name: 'Active agent availability' + type: INTERNAL + key: 'zabbix[host,active_agent,available]' ++ history: 7d + description: | + Availability of active checks on the host. The value of this item corresponds to availability icons in the host list. + Possible values: +@@ -1782,6 +1814,15 @@ + newvalue: available + - value: '2' + newvalue: 'not available' ++ - uuid: 9c0c0eb0ed7e495b9d4d487df7af0acd ++ name: zabbix.host.available ++ mappings: ++ - value: '0' ++ newvalue: 'not available' ++ - value: '1' ++ newvalue: available ++ - value: '2' ++ newvalue: unknown + - uuid: 0b50ea7e6695421da023ece0a23bed10 + name: 'Zabbix agent ping status' + mappings: + + +``` diff --git a/Overrides/Windows_by_Zabbix_agent_active/7.0/README.md b/Overrides/Windows_by_Zabbix_agent_active/7.0/README.md new file mode 100644 index 00000000..b54306a6 --- /dev/null +++ b/Overrides/Windows_by_Zabbix_agent_active/7.0/README.md @@ -0,0 +1,1844 @@ +# Zabbix Template: Windows by Zabbix agent active + +![class: os](https://img.shields.io/badge/class-os-00c9bf) ![target: windows](https://img.shields.io/badge/target-windows-00c9bf) ![vendor: Zabbix](https://img.shields.io/badge/vendor-Zabbix-00c9bf) ![version: 7.0-0](https://img.shields.io/badge/version-7.0--0-00c9bf) + +This is an official Windows template. It requires Zabbix agent 7.0 or newer. + +You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows + +Generated by official Zabbix template tool "Templator" + +## Items + +### Item: Host name of Zabbix agent running + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + + + +```console +agent.hostname +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: Zabbix agent ping + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + +The agent always returns "1" for this item. May be used in combination with `nodata()` for the availability check. + +```console +agent.ping +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Version of Zabbix agent running + +![component: application](https://img.shields.io/badge/component-application-00c9bf) + + + +```console +agent.version +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: Cache bytes + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes, Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays the last observed value only; it is not an average. + +```console +perf_counter_en["\Memory\Cache Bytes"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Free system page table entries + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may be a memory leak or you running out of memory. + +```console +perf_counter_en["\Memory\Free System Page Table Entries"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Memory page faults per second + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages faulted per second because only one page is faulted in each fault operation, hence this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays. + +```console +perf_counter_en["\Memory\Page Faults/sec"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | +| History | 7d | + +### Item: Memory pages per second + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +This measures the rate at which pages are read from or written to disk to resolve hard page faults. +If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. + +```console +perf_counter_en["\Memory\Pages/sec"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | +| History | 7d | + +### Item: Memory pool non-paged + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. +There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch). Consequently, Event ID 2019 is recorded in the system event log. + +```console +perf_counter_en["\Memory\Pool Nonpaged Bytes"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Used swap space in % + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) ![component: storage](https://img.shields.io/badge/component-storage-00c9bf) + +The used space of swap volume/file in percent. + +```console +perf_counter_en["\Paging file(_Total)\% Usage"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: CPU DPC time + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. `% DPC Time` is a component of `% Privileged Time` because DPCs are executed in privileged mode. If a high `% DPC Time` is sustained, there may be a processor bottleneck or an application or hardware related issue that can significantly diminish overall system performance. + +```console +perf_counter_en["\Processor Information(_total)\% DPC Time"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: CPU interrupt time + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +The processor information `% Interrupt Time` counter indicates how much time the processor spends handling hardware interrupts during sample intervals. It reflects the activity of devices like the system clock, mouse, disk drivers, and network cards. A value above 20% suggests possible hardware issues. + +```console +perf_counter_en["\Processor Information(_total)\% Interrupt Time"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: CPU privileged time + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +The processor information `% Privileged Time` counter shows the percent of time that the processor is spent executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode functions of the Windows Operating System. + +```console +perf_counter_en["\Processor Information(_total)\% Privileged Time"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: CPU user time + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +The processor information `% User Time` counter shows the percent of time that the processor(s) is spent executing in User mode. + +```console +perf_counter_en["\Processor Information(_total)\% User Time"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: Context switches per second + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. +Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service. +It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches. +There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. + +```console +perf_counter_en["\System\Context Switches/sec"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | +| History | 7d | + +### Item: CPU queue length + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue and are waiting to be executed. + +```console +perf_counter_en["\System\Processor Queue Length"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | +| History | 7d | + +### Item: Number of threads + +![component: os](https://img.shields.io/badge/component-os-00c9bf) + +The number of threads used by all running processes. + +```console +perf_counter_en["\System\Threads"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Number of processes + +![component: os](https://img.shields.io/badge/component-os-00c9bf) + +The number of processes. + +```console +proc.num[] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: CPU utilization + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +CPU utilization expressed in %. + +```console +system.cpu.util +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | +| History | 7d | + +### Item: System name + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + +The host name of the system. + +```console +system.hostname +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: System local time + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + +The local system time of the host. + +```console +system.localtime +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Operating system architecture + +![component: os](https://img.shields.io/badge/component-os-00c9bf) + +The architecture of the operating system. + +```console +system.sw.arch +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: Operating system + +![component: os](https://img.shields.io/badge/component-os-00c9bf) + + + +```console +system.sw.os +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: Free swap space + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) ![component: storage](https://img.shields.io/badge/component-storage-00c9bf) + +The free space of the swap volume/file expressed in bytes. + +```console +system.swap.free +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | CALCULATED | +| History | 7d | + +### Item: Free swap space in % + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) ![component: storage](https://img.shields.io/badge/component-storage-00c9bf) + +The free space of the swap volume/file expressed in %. + +```console +system.swap.pfree +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Value type | FLOAT in % | +| History | 7d | +| Source item | `perf_counter_en["\Paging file(_Total)\% Usage"]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JAVASCRIPT | `["return (100 - value)"]` | + +### Item: Total swap space + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) ![component: storage](https://img.shields.io/badge/component-storage-00c9bf) + +The total space of the swap volume/file expressed in bytes. + +```console +system.swap.size[,total] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: System description + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + +System description of the host. + +```console +system.uname +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | CHAR | +| History | 7d | + +### Item: Uptime + +![component: system](https://img.shields.io/badge/component-system-00c9bf) + +The system uptime expressed in the following format: "N days, hh:mm:ss". + +```console +system.uptime +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Get filesystems + +![component: raw](https://img.shields.io/badge/component-raw-00c9bf) + +The `vfs.fs.get` key acquires raw information set about the filesystems. Later to be extracted by preprocessing in dependent items. + +```console +vfs.fs.get +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | TEXT | + +### Item: Total memory + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +Total memory expressed in bytes. + +```console +vm.memory.size[total] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Used memory + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +Used memory in bytes. + +```console +vm.memory.size[used] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Memory utilization + +![component: memory](https://img.shields.io/badge/component-memory-00c9bf) + +Memory utilization in %. + +```console +vm.memory.util +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | CALCULATED | +| Value type | FLOAT in % | +| History | 7d | + +### Item: Windows: Network interfaces WMI get + +![component: raw](https://img.shields.io/badge/component-raw-00c9bf) + +Raw data of `win32_networkadapter.` + +```console +wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | TEXT | + +### Item: Number of cores + +![component: cpu](https://img.shields.io/badge/component-cpu-00c9bf) + +The number of logical processors available on the computer. + +```console +wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| History | 7d | + +### Item: Active agent availability + +![component: health](https://img.shields.io/badge/component-health-00c9bf) ![component: network](https://img.shields.io/badge/component-network-00c9bf) + +Availability of active checks on the host. The value of this item corresponds to availability icons in the host list. +Possible values: +0 - unknown +1 - available +2 - not available + +```console +zabbix[host,active_agent,available] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | INTERNAL | +| History | 7d | + +## Triggers + +### Trigger: Zabbix agent is not available + +![scope: availability](https://img.shields.io/badge/scope-availability-00c9bf) + +For active agents, `nodata()` with `agent.ping` is used with `{$AGENT.NODATA_TIMEOUT}` as a time threshold. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | AVERAGE | +| Manual close | YES | + +```console +nodata(/Windows by Zabbix agent active/agent.ping,{$AGENT.NODATA_TIMEOUT})=1 +``` + +### Trigger: Number of free system page table entries is too low + +![scope: capacity](https://img.shields.io/badge/scope-capacity-00c9bf) + +`Memory\Free System Page Table Entries` has been less than `{$MEM.PAGE_TABLE_CRIT.MIN}` for 5 minutes. If the number is less than 5,000, there may be a memory leak. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | + +```console +max(/Windows by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN} +``` + +### Trigger: The Memory Pages/sec is too high + +![scope: capacity](https://img.shields.io/badge/scope-capacity-00c9bf) + +The Memory Pages/sec in the last 5 minutes exceeds `{$MEM.PAGE_SEC.CRIT.MAX}`. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX} +``` + +### Trigger: CPU interrupt time is too high + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +The CPU Interrupt Time in the last 5 minutes exceeds `{$CPU.INTERRUPT.CRIT.MAX}`%. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX} +``` + +### Trigger: CPU privileged time is too high + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX} +``` + +### Trigger: High CPU utilization + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +CPU utilization is too high. The system might be slow to respond. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | + +```console +min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT} +``` + +### Trigger: System name has changed + +![scope: notice](https://img.shields.io/badge/scope-notice-00c9bf) + +The name of the system has changed. Acknowledge to close the problem manually. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | INFO | +| Manual close | YES | + +```console +change(/Windows by Zabbix agent active/system.hostname) and length(last(/Windows by Zabbix agent active/system.hostname))>0 +``` + +### Trigger: Operating system description has changed + +![scope: notice](https://img.shields.io/badge/scope-notice-00c9bf) + +The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | INFO | +| Manual close | YES | + +```console +change(/Windows by Zabbix agent active/system.sw.os) and length(last(/Windows by Zabbix agent active/system.sw.os))>0 +``` + +### Trigger: Host has been restarted + +![scope: notice](https://img.shields.io/badge/scope-notice-00c9bf) + +The device uptime is less than 10 minutes. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | +| Manual close | YES | + +```console +last(/Windows by Zabbix agent active/system.uptime)<10m +``` + +### Trigger: High memory utilization + +![scope: capacity](https://img.shields.io/badge/scope-capacity-00c9bf) ![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +The system is running out of free memory. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | AVERAGE | + +```console +min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX} +``` + +### Trigger: Active checks are not available + +![scope: availability](https://img.shields.io/badge/scope-availability-00c9bf) + +Active checks are considered unavailable. Agent has not sent a heartbeat for a prolonged time. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | HIGH | + +```console +min(/Windows by Zabbix agent active/zabbix[host,active_agent,available],{$AGENT.TIMEOUT})=2 +``` + +## Discovery Rules + +### Discovery Rule: Network interfaces discovery + +Discovery of installed network interfaces. + +```console +net.if.discovery +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JAVASCRIPT | `["output = JSON.parse(value).map(function(net){\n\treturn {\n\t\t\"{#IFNAME}\": net.Name,\n\t\t\"{#IFDESCR}\": net.Description,\n\t\t\"{#IFALIAS}\": net.NetConnectionID,\n\t\t\"{#IFGUID}\": net.GUID\n\t}})\nreturn JSON.stringify({\"data\": output})\n"]` | +| DISCARD_UNCHANGED_HEARTBEAT | `["1h"]` | + +#### Discovery Rule: Network interfaces discovery: Item Prototypes + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The number of incoming packets dropped on the network interface. + +```console +net.if.in["{#IFGUID}",dropped] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The number of incoming packets with errors on the network interface. + +```console +net.if.in["{#IFGUID}",errors] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Bits received + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +Incoming traffic on the network interface. + +```console +net.if.in["{#IFGUID}"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The number of outgoing packets dropped on the network interface. + +```console +net.if.out["{#IFGUID}",dropped] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The number of outgoing packets with errors on the network interface. + +```console +net.if.out["{#IFGUID}",errors] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Bits sent + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +Outgoing traffic on the network interface. + +```console +net.if.out["{#IFGUID}"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Speed + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +Estimated bandwidth of the network interface if any. + +```console +net.if.speed["{#IFGUID}"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$[?(@.GUID == \"{#IFGUID}\")].Speed.first()"]` | +| JAVASCRIPT | `["return (value=='9223372036854775807' ? 0 : value)"]` | +| DISCARD_UNCHANGED_HEARTBEAT | `["1h"]` | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Operational status + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The operational status of the network interface. + +```console +net.if.status["{#IFGUID}"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$[?(@.GUID == \"{#IFGUID}\")].NetConnectionStatus.first()"]` | +| DISCARD_UNCHANGED_HEARTBEAT | `["1d"]` | + +##### Discovery Rule: Network interfaces discovery: Item Prototype: Interface {#IFNAME}({#IFALIAS}): Interface type + +![component: network](https://img.shields.io/badge/component-network-00c9bf) ![description: {#IFALIAS}](https://img.shields.io/badge/description-{#IFALIAS}-00c9bf) ![interface: {#IFNAME}](https://img.shields.io/badge/interface-{#IFNAME}-00c9bf) + +The type of the network interface. + +```console +net.if.type["{#IFGUID}"] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$[?(@.GUID == \"{#IFGUID}\")].AdapterTypeId.first()"]` | +| DISCARD_UNCHANGED_HEARTBEAT | `["1d"]` | + +#### Discovery Rule: Network interfaces discovery: Discovery Triggers + +##### Discovery Rule: Network interfaces discovery: Trigger Prototype: Interface {#IFNAME}({#IFALIAS}): Link down + +![scope: availability](https://img.shields.io/badge/scope-availability-00c9bf) + +This trigger expression works as follows: +1. It can be triggered if the operations status is down. +2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. +No new trigger will be fired if this interface is down. +3. `last(/TEMPLATE_NAME/METRIC,#1)<>last(/TEMPLATE_NAME/METRIC,#2)` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.) + +WARNING: if closed manually - it will not fire again on the next poll, because of .diff. + +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | AVERAGE | +| Manual close | YES | + +```console +{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2)) +``` + +#### Discovery Rule: Network interfaces discovery: Graph Prototypes + +The following graph prototypes are defined by this Template + +* Interface {#IFNAME}({#IFALIAS}): Network traffic + + +### Discovery Rule: Physical disks discovery + +Discovery of installed physical disks. + +```console +perf_instance_en.discovery[PhysicalDisk] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +#### Discovery Rule: Physical disks discovery: Item Prototypes + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk utilization by idle time + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in % | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Average disk read queue length + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk read request avg waiting time + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in s | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk write request avg waiting time + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in s | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Average disk write queue length + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk average queue size (avgqu-sz) + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk read rate + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +Rate of read operations on the disk. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in !r/s | + +##### Discovery Rule: Physical disks discovery: Item Prototype: {#DEVNAME}: Disk write rate + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![disk: {#DEVNAME}](https://img.shields.io/badge/disk-{#DEVNAME}-00c9bf) + +Rate of write operations on the disk. + +```console +perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | +| Value type | FLOAT in !w/s | + +#### Discovery Rule: Physical disks discovery: Discovery Triggers + +##### Discovery Rule: Physical disks discovery: Trigger Prototype: {#DEVNAME}: Disk is overloaded + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +The disk appears to be under heavy load. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | +| Manual close | YES | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN} +``` + +##### Discovery Rule: Physical disks discovery: Trigger Prototype: {#DEVNAME}: Disk read request responses are too high + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +This trigger might indicate the disk {#DEVNAME} saturation. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | +| Manual close | YES | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"} +``` + +##### Discovery Rule: Physical disks discovery: Trigger Prototype: {#DEVNAME}: Disk write request responses are too high + +![scope: performance](https://img.shields.io/badge/scope-performance-00c9bf) + +This trigger might indicate the disk {#DEVNAME} saturation. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | +| Manual close | YES | + +```console +min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"} +``` + +#### Discovery Rule: Physical disks discovery: Graph Prototypes + +The following graph prototypes are defined by this Template + +* {#DEVNAME}: Disk average queue length +* {#DEVNAME}: Disk average waiting time +* {#DEVNAME}: Disk read/write rates +* {#DEVNAME}: Disk utilization and queue + + +### Discovery Rule: Windows services discovery + +Used for the discovery of Windows services of different types as defined in the template's macros. + +```console +service.discovery +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +#### Discovery Rule: Windows services discovery: Item Prototypes + +##### Discovery Rule: Windows services discovery: Item Prototype: State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) + +![component: system](https://img.shields.io/badge/component-system-00c9bf) ![name: {#SERVICE.DISPLAYNAME}](https://img.shields.io/badge/name-{#SERVICE.DISPLAYNAME}-00c9bf) ![service: {#SERVICE.NAME}](https://img.shields.io/badge/service-{#SERVICE.NAME}-00c9bf) + + + +```console +service.info["{#SERVICE.NAME}",state] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | ZABBIX_ACTIVE | + +#### Discovery Rule: Windows services discovery: Discovery Triggers + +##### Discovery Rule: Windows services discovery: Trigger Prototype: "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running + +![scope: notice](https://img.shields.io/badge/scope-notice-00c9bf) + +The service has a state other than "Running" for the last three times. +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | AVERAGE | + +```console +min(/Windows by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0 +``` + +### Discovery Rule: Mounted filesystem discovery + +Discovery of filesystems of different types. + +```console +vfs.fs.dependent.discovery +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `vfs.fs.get` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JAVASCRIPT | `["var filesystems = JSON.parse(value);\n\nresult = filesystems.map(function (filesystem) {\n\treturn {\n\t\t'fsname': filesystem.fsname,\n\t\t'fstype': filesystem.fstype,\n\t\t'fslabel': filesystem.fslabel,\n\t\t'fsdrivetype': filesystem.fsdrivetype\n\t};\n});\n\nreturn JSON.stringify(result);\n"]` | +| DISCARD_UNCHANGED_HEARTBEAT | `["1h"]` | + +#### Discovery Rule: Mounted filesystem discovery: Item Prototypes + +##### Discovery Rule: Mounted filesystem discovery: Item Prototype: FS [{#FSLABEL}({#FSNAME})]: Space: Available + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![filesystem: {#FSNAME}](https://img.shields.io/badge/filesystem-{#FSNAME}-00c9bf) ![fstype: {#FSTYPE}](https://img.shields.io/badge/fstype-{#FSTYPE}-00c9bf) + +Available storage space expressed in bytes. + +```console +vfs.fs.dependent.size[{#FSNAME},free] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `vfs.fs.dependent[{#FSNAME},data]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$.bytes.free"]` | + +##### Discovery Rule: Mounted filesystem discovery: Item Prototype: FS [{#FSLABEL}({#FSNAME})]: Space: Used, in % + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![filesystem: {#FSNAME}](https://img.shields.io/badge/filesystem-{#FSNAME}-00c9bf) ![fstype: {#FSTYPE}](https://img.shields.io/badge/fstype-{#FSTYPE}-00c9bf) + +Calculated as the percentage of currently used space compared to the maximum available space. + +```console +vfs.fs.dependent.size[{#FSNAME},pused] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Value type | FLOAT in % | +| Source item | `vfs.fs.dependent[{#FSNAME},data]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$.bytes.pused"]` | + +##### Discovery Rule: Mounted filesystem discovery: Item Prototype: FS [{#FSLABEL}({#FSNAME})]: Space: Total + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![filesystem: {#FSNAME}](https://img.shields.io/badge/filesystem-{#FSNAME}-00c9bf) ![fstype: {#FSTYPE}](https://img.shields.io/badge/fstype-{#FSTYPE}-00c9bf) + +Total space expressed in bytes. + +```console +vfs.fs.dependent.size[{#FSNAME},total] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `vfs.fs.dependent[{#FSNAME},data]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$.bytes.total"]` | + +##### Discovery Rule: Mounted filesystem discovery: Item Prototype: FS [{#FSLABEL}({#FSNAME})]: Space: Used + +![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![filesystem: {#FSNAME}](https://img.shields.io/badge/filesystem-{#FSNAME}-00c9bf) ![fstype: {#FSTYPE}](https://img.shields.io/badge/fstype-{#FSTYPE}-00c9bf) + +Used storage expressed in bytes. + +```console +vfs.fs.dependent.size[{#FSNAME},used] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Source item | `vfs.fs.dependent[{#FSNAME},data]` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$.bytes.used"]` | + +##### Discovery Rule: Mounted filesystem discovery: Item Prototype: FS [{#FSLABEL}({#FSNAME})]: Get data + +![component: raw](https://img.shields.io/badge/component-raw-00c9bf) ![component: storage](https://img.shields.io/badge/component-storage-00c9bf) ![filesystem: {#FSNAME}](https://img.shields.io/badge/filesystem-{#FSNAME}-00c9bf) ![fstype: {#FSTYPE}](https://img.shields.io/badge/fstype-{#FSTYPE}-00c9bf) + +Intermediate data of `{#FSNAME}` filesystem. + +```console +vfs.fs.dependent[{#FSNAME},data] +``` + +Settings: + +| Item Setting | Value | +| ------------ | ----- | +| Type | DEPENDENT | +| Value type | TEXT | +| History | 1h | +| Source item | `vfs.fs.get` | + +Preprocessing steps: + +| Type | Parameters | +| ---- | ---------- | +| JSONPATH | `["$.[?(@.fsname=='{#FSNAME}')].first()"]` | + +#### Discovery Rule: Mounted filesystem discovery: Discovery Triggers + +##### Discovery Rule: Mounted filesystem discovery: Trigger Prototype: FS [{#FSLABEL}({#FSNAME})]: Space is critically low + +![scope: availability](https://img.shields.io/badge/scope-availability-00c9bf) ![scope: capacity](https://img.shields.io/badge/scope-capacity-00c9bf) + +The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%` limit. +The trigger expression is based on the current used and maximum available spaces. +Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. + +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | AVERAGE | +| Manual close | YES | + +```console +min(/Windows by Zabbix agent active/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSLABEL}({#FSNAME})"} +``` + +##### Discovery Rule: Mounted filesystem discovery: Trigger Prototype: FS [{#FSLABEL}({#FSNAME})]: Space is low + +![scope: availability](https://img.shields.io/badge/scope-availability-00c9bf) ![scope: capacity](https://img.shields.io/badge/scope-capacity-00c9bf) + +The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%` limit. +The trigger expression is based on the current used and maximum available spaces. +Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. + +Settings: + +| Trigger Setting | Values | +| --------------- | ------ | +| Priority | WARNING | +| Manual close | YES | + +```console +min(/Windows by Zabbix agent active/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.WARN:"{#FSLABEL}({#FSNAME})"} +``` + +#### Discovery Rule: Mounted filesystem discovery: Graph Prototypes + +The following graph prototypes are defined by this Template + +* FS [{#FSLABEL}({#FSNAME})]: Space usage graph, in % +* FS [{#FSLABEL}({#FSNAME})]: Space utilization chart + + +## Macros + +The following Zabbix macros are configured via this template. + +### Macro: `{$AGENT.NODATA_TIMEOUT}` + +No data timeout for active agents. Consider to keep it relatively high. + +Default: + +```console +30m +``` + +### Macro: `{$AGENT.TIMEOUT}` + +Timeout after which agent is considered unavailable. + +Default: + +```console +5m +``` + +### Macro: `{$CPU.INTERRUPT.CRIT.MAX}` + +The critical threshold of the % Interrupt Time counter. + +Default: + +```console +50 +``` + +### Macro: `{$CPU.PRIV.CRIT.MAX}` + +The threshold of the % Privileged Time counter. + +Default: + +```console +30 +``` + +### Macro: `{$CPU.QUEUE.CRIT.MAX}` + +The threshold of the Processor Queue Length counter. + +Default: + +```console +3 +``` + +### Macro: `{$CPU.UTIL.CRIT}` + +The critical threshold of the CPU utilization expressed in %. + +Default: + +```console +90 +``` + +### Macro: `{$IF.ERRORS.WARN}` + +Warning threshold of error packet rate. Can be used with interface name as context. + +Default: + +```console +2 +``` + +### Macro: `{$IF.UTIL.MAX}` + +Used as a threshold in the interface utilization trigger. + +Default: + +```console +90 +``` + +### Macro: `{$IFCONTROL}` + +Macro for the interface operational state for the "link down" trigger. Can be used with interface name as context. + +Default: + +```console +1 +``` + +### Macro: `{$MEM.PAGE_SEC.CRIT.MAX}` + +The warning threshold of the Memory Pages/sec counter. + +Default: + +```console +1000 +``` + +### Macro: `{$MEM.PAGE_TABLE_CRIT.MIN}` + +The warning threshold of the Free System Page Table Entries counter. + +Default: + +```console +5000 +``` + +### Macro: `{$MEMORY.UTIL.MAX}` + +The warning threshold of the Memory util item. + +Default: + +```console +90 +``` + +### Macro: `{$NET.IF.IFALIAS.MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$NET.IF.IFALIAS.NOT_MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +CHANGE_THIS +``` + +### Macro: `{$NET.IF.IFDESCR.MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$NET.IF.IFDESCR.NOT_MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +CHANGE_THIS +``` + +### Macro: `{$NET.IF.IFNAME.MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$NET.IF.IFNAME.NOT_MATCHES}` + +Used in Network interface discovery. Can be overridden on the host or linked template level. + +Default: + +```console +Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer +``` + +### Macro: `{$SERVICE.NAME.MATCHES}` + +Used in Service discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^.*$ +``` + +### Macro: `{$SERVICE.NAME.NOT_MATCHES}` + +Used in Service discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc|CDPUserSvc_.+|WpnUserService_.+|OneSyncSvc_.+|WbioSrvc|BITS|tiledatamodelsvc|GISvc|ShellHWDetection|TrustedInstaller|TabletInputService|CDPSvc|wuauserv|edgeupdate|cbdhsvc_.+)$ +``` + +### Macro: `{$SERVICE.STARTUPNAME.MATCHES}` + +Used in Service discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^(?:automatic|automatic delayed)$ +``` + +### Macro: `{$SERVICE.STARTUPNAME.NOT_MATCHES}` + +Used in Service discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^(?:manual|disabled)$ +``` + +### Macro: `{$SWAP.PFREE.MIN.WARN}` + +The warning threshold of the minimum free swap. + +Default: + +```console +20 +``` + +### Macro: `{$VFS.DEV.DEVNAME.MATCHES}` + +Used in physical disk discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$VFS.DEV.DEVNAME.NOT_MATCHES}` + +Used in physical disk discovery. Can be overridden on the host or linked template level. + +Default: + +```console +_Total +``` + +### Macro: `{$VFS.DEV.READ.AWAIT.WARN}` + +Disk read average response time (in s) before the trigger fires. + +Default: + +```console +0.02 +``` + +### Macro: `{$VFS.DEV.UTIL.MAX.WARN}` + +The warning threshold of disk time utilization in percent. + +Default: + +```console +95 +``` + +### Macro: `{$VFS.DEV.WRITE.AWAIT.WARN}` + +Disk write average response time (in s) before the trigger fires. + +Default: + +```console +0.02 +``` + +### Macro: `{$VFS.FS.FSDRIVETYPE.MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +fixed +``` + +### Macro: `{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^\s$ +``` + +### Macro: `{$VFS.FS.FSNAME.MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$VFS.FS.FSNAME.NOT_MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^(?:/dev|/sys|/run|/proc|.+/shm$) +``` + +### Macro: `{$VFS.FS.FSTYPE.MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +.* +``` + +### Macro: `{$VFS.FS.FSTYPE.NOT_MATCHES}` + +Used in filesystem discovery. Can be overridden on the host or linked template level. + +Default: + +```console +^\s$ +``` + +### Macro: `{$VFS.FS.PUSED.MAX.CRIT}` + +The critical threshold of the filesystem utilization. + +Default: + +```console +90 +``` + +### Macro: `{$VFS.FS.PUSED.MAX.WARN}` + +The warning threshold of the filesystem utilization. + +Default: + +```console +80 +``` + +## Dashboards + +The following Zabbix dashboards are included in this template. + +* Filesystems +* Network interfaces +* System performance diff --git a/Overrides/Windows_by_Zabbix_agent_active/7.0/Windows_by_Zabbix_agent_active.yaml b/Overrides/Windows_by_Zabbix_agent_active/7.0/Windows_by_Zabbix_agent_active.yaml new file mode 100644 index 00000000..aa5706b0 --- /dev/null +++ b/Overrides/Windows_by_Zabbix_agent_active/7.0/Windows_by_Zabbix_agent_active.yaml @@ -0,0 +1,1916 @@ +zabbix_export: + version: '7.0' + template_groups: + - uuid: 846977d1dfed4968bc5f8bdb363285bc + name: 'Templates/Operating systems' + templates: + - uuid: 5fdd2ca8b8f84962aaea5a218b46ea7d + template: 'Windows by Zabbix agent active' + name: 'Windows by Zabbix agent active' + description: | + This is an official Windows template. It requires Zabbix agent 7.0 or newer. + + You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows + + Generated by official Zabbix template tool "Templator" + vendor: + name: Zabbix + version: 7.0-0 + groups: + - name: 'Templates/Operating systems' + items: + - uuid: 042ce35b908748c8bdd322f818c52c85 + name: 'Host name of Zabbix agent running' + type: ZABBIX_ACTIVE + key: agent.hostname + delay: 1h + history: 7d + value_type: CHAR + trends: '0' + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: system + - uuid: bd8864ac5450401b9ad479c1ee455805 + name: 'Zabbix agent ping' + type: ZABBIX_ACTIVE + key: agent.ping + history: 7d + description: 'The agent always returns "1" for this item. May be used in combination with `nodata()` for the availability check.' + valuemap: + name: 'Zabbix agent ping status' + tags: + - tag: component + value: system + triggers: + - uuid: e77c3b1849b64d45a3078794057a2582 + expression: 'nodata(/Windows by Zabbix agent active/agent.ping,{$AGENT.NODATA_TIMEOUT})=1' + name: 'Zabbix agent is not available' + event_name: 'Zabbix agent is not available (or nodata for {$AGENT.NODATA_TIMEOUT})' + priority: AVERAGE + description: 'For active agents, `nodata()` with `agent.ping` is used with `{$AGENT.NODATA_TIMEOUT}` as a time threshold.' + manual_close: 'YES' + tags: + - tag: scope + value: availability + - uuid: 41cec8b443a94efc9ebca6f66c46ad8a + name: 'Version of Zabbix agent running' + type: ZABBIX_ACTIVE + key: agent.version + delay: 1h + history: 7d + value_type: CHAR + trends: '0' + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: application + - uuid: 20dceb831b1a4d63af7635656239c495 + name: 'Cache bytes' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Cache Bytes"]' + history: 7d + units: B + description: 'Cache Bytes is the sum of the Memory\\System Cache Resident Bytes, Memory\\System Driver Resident Bytes, Memory\\System Code Resident Bytes, and Memory\\Pool Paged Resident Bytes counters. This counter displays the last observed value only; it is not an average.' + tags: + - tag: component + value: memory + - uuid: 71bb18af403248c7818d16444a2eec06 + name: 'Free system page table entries' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Free System Page Table Entries"]' + history: 7d + description: 'This indicates the number of page table entries not currently in use by the system. If the number is less than 5,000, there may be a memory leak or you running out of memory.' + tags: + - tag: component + value: memory + triggers: + - uuid: 37d6b965dd184b66b37018d4375d3e56 + expression: 'max(/Windows by Zabbix agent active/perf_counter_en["\Memory\Free System Page Table Entries"],5m)<{$MEM.PAGE_TABLE_CRIT.MIN}' + name: 'Number of free system page table entries is too low' + event_name: 'Number of free system page table entries is too low (less {$MEM.PAGE_TABLE_CRIT.MIN} for 5m)' + priority: WARNING + description: '`Memory\Free System Page Table Entries` has been less than `{$MEM.PAGE_TABLE_CRIT.MIN}` for 5 minutes. If the number is less than 5,000, there may be a memory leak.' + dependencies: + - name: 'High memory utilization' + expression: 'min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}' + tags: + - tag: scope + value: capacity + - uuid: 19ec57305ba34ed890e2e4c8a500a214 + name: 'Memory page faults per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Page Faults/sec"]' + history: 7d + value_type: FLOAT + description: 'Page Faults/sec is the average number of pages faulted per second. It is measured in number of pages faulted per second because only one page is faulted in each fault operation, hence this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory.) Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause significant delays.' + tags: + - tag: component + value: memory + - uuid: 920faa3a434d46d48f99395e16ef04ec + name: 'Memory pages per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Pages/sec"]' + history: 7d + value_type: FLOAT + description: | + This measures the rate at which pages are read from or written to disk to resolve hard page faults. + If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak. + tags: + - tag: component + value: memory + triggers: + - uuid: 05da8b30835e440fb1228fb9a0bc24a4 + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\Memory\Pages/sec"],5m)>{$MEM.PAGE_SEC.CRIT.MAX}' + name: 'The Memory Pages/sec is too high' + event_name: 'The Memory Pages/sec is too high (over {$MEM.PAGE_SEC.CRIT.MAX} for 5m)' + priority: WARNING + description: 'The Memory Pages/sec in the last 5 minutes exceeds `{$MEM.PAGE_SEC.CRIT.MAX}`. If the value is greater than 1,000, as a result of excessive paging, there may be a memory leak.' + dependencies: + - name: 'High memory utilization' + expression: 'min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}' + tags: + - tag: scope + value: capacity + - uuid: 3af0a0717da747849c2b5a2ebfa61a2c + name: 'Memory pool non-paged' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Memory\Pool Nonpaged Bytes"]' + history: 7d + units: B + description: | + This measures the size, in bytes, of the non-paged pool. This is an area of system memory for objects that cannot be written to disk but instead must remain in physical memory as long as they are allocated. + There is a possible memory leak if the value is greater than 175MB (or 100MB with the /3GB switch). Consequently, Event ID 2019 is recorded in the system event log. + tags: + - tag: component + value: memory + - uuid: 4f7b86eff6c84193a2f9187fff578416 + name: 'Used swap space in %' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Paging file(_Total)\% Usage"]' + history: 7d + value_type: FLOAT + units: '%' + description: 'The used space of swap volume/file in percent.' + tags: + - tag: component + value: memory + - tag: component + value: storage + - uuid: 553249b52ca7492c87386d051ec53db9 + name: 'CPU DPC time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% DPC Time"]' + history: 7d + value_type: FLOAT + units: '%' + description: 'Processor DPC time is the time that a single processor spent receiving and servicing deferred procedure calls (DPCs). DPCs are interrupts that run at a lower priority than standard interrupts. `% DPC Time` is a component of `% Privileged Time` because DPCs are executed in privileged mode. If a high `% DPC Time` is sustained, there may be a processor bottleneck or an application or hardware related issue that can significantly diminish overall system performance.' + tags: + - tag: component + value: cpu + - uuid: 32a32b9fea5d49989668a96bc52db87b + name: 'CPU interrupt time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]' + history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% Interrupt Time` counter indicates how much time the processor spends handling hardware interrupts during sample intervals. It reflects the activity of devices like the system clock, mouse, disk drivers, and network cards. A value above 20% suggests possible hardware issues.' + tags: + - tag: component + value: cpu + triggers: + - uuid: 2eb661f6a42f40ce8cc25cef542763a9 + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}' + name: 'CPU interrupt time is too high' + event_name: 'CPU interrupt time is too high (over {$CPU.INTERRUPT.CRIT.MAX}% for 5m)' + priority: WARNING + description: 'The CPU Interrupt Time in the last 5 minutes exceeds `{$CPU.INTERRUPT.CRIT.MAX}`%.' + dependencies: + - name: 'High CPU utilization' + expression: 'min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}' + tags: + - tag: scope + value: performance + - uuid: 0747e92e52cc4a6a9b83c6f94889bff1 + name: 'CPU privileged time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]' + history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% Privileged Time` counter shows the percent of time that the processor is spent executing in Kernel (or Privileged) mode. Privileged mode includes services interrupts inside Interrupt Service Routines (ISRs), executing Deferred Procedure Calls (DPCs), Device Driver calls and other kernel-mode functions of the Windows Operating System.' + tags: + - tag: component + value: cpu + triggers: + - uuid: cee69c70da6a415186b922305d0cabdc + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Privileged Time"],5m)>{$CPU.PRIV.CRIT.MAX}' + name: 'CPU privileged time is too high' + event_name: 'CPU privileged time is too high (over {$CPU.PRIV.CRIT.MAX}% for 5m)' + priority: WARNING + description: 'The CPU privileged time in the last 5 minutes exceeds {$CPU.PRIV.CRIT.MAX}%.' + dependencies: + - name: 'CPU interrupt time is too high' + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\Processor Information(_total)\% Interrupt Time"],5m)>{$CPU.INTERRUPT.CRIT.MAX}' + - name: 'High CPU utilization' + expression: 'min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}' + tags: + - tag: scope + value: performance + - uuid: 954a81efad4c4791bee052194b900268 + name: 'CPU user time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\Processor Information(_total)\% User Time"]' + history: 7d + value_type: FLOAT + units: '%' + description: 'The processor information `% User Time` counter shows the percent of time that the processor(s) is spent executing in User mode.' + tags: + - tag: component + value: cpu + - uuid: f23957a6fb9a44a3a7010b19b16e77b5 + name: 'Context switches per second' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Context Switches/sec"]' + history: 7d + value_type: FLOAT + description: | + Context Switches/sec is the combined rate at which all processors on the computer are switched from one thread to another. + Context switches occur when a running thread voluntarily relinquishes the processor, is preempted by a higher priority ready thread, or switches between user-mode and privileged (kernel) mode to use an Executive or subsystem service. + It is the sum of Thread\\Context Switches/sec for all threads running on all processors in the computer and is measured in numbers of switches. + There are context switch counters on the System and Thread objects. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. + tags: + - tag: component + value: cpu + - uuid: c1da358e5c8f40279c703d93896aa571 + name: 'CPU queue length' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Processor Queue Length"]' + history: 7d + value_type: FLOAT + description: 'The Processor Queue Length shows the number of threads that are observed as delayed in the processor Ready Queue and are waiting to be executed.' + tags: + - tag: component + value: cpu + - uuid: c738b97ec0dc49f380ed0e4a27ae9bb6 + name: 'Number of threads' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\System\Threads"]' + history: 7d + description: 'The number of threads used by all running processes.' + tags: + - tag: component + value: os + - uuid: 5229689338ae4a559d3c94a98032131e + name: 'Number of processes' + type: ZABBIX_ACTIVE + key: 'proc.num[]' + history: 7d + description: 'The number of processes.' + tags: + - tag: component + value: os + - uuid: 0f3ffe45092d461a91a1296cd6cfb19f + name: 'CPU utilization' + type: ZABBIX_ACTIVE + key: system.cpu.util + history: 7d + value_type: FLOAT + units: '%' + description: 'CPU utilization expressed in %.' + tags: + - tag: component + value: cpu + triggers: + - uuid: ab3cbf18088a4d7a82f6c678ce49ffce + expression: 'min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}' + name: 'High CPU utilization' + event_name: 'High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)' + opdata: 'Current utilization: {ITEM.LASTVALUE1}' + priority: WARNING + description: 'CPU utilization is too high. The system might be slow to respond.' + tags: + - tag: scope + value: performance + - uuid: 5d99b356e30444a0b99e597506f35a69 + name: 'System name' + type: ZABBIX_ACTIVE + key: system.hostname + delay: 1h + history: 7d + value_type: CHAR + trends: '0' + description: 'The host name of the system.' + inventory_link: NAME + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: system + triggers: + - uuid: 3aea75603e584d2f9dc96e7f3cc2b7fa + expression: 'change(/Windows by Zabbix agent active/system.hostname) and length(last(/Windows by Zabbix agent active/system.hostname))>0' + name: 'System name has changed' + event_name: 'System name has changed (new name: {ITEM.VALUE})' + priority: INFO + description: 'The name of the system has changed. Acknowledge to close the problem manually.' + manual_close: 'YES' + tags: + - tag: scope + value: notice + - uuid: 89f928affba54c4a8dc7abead09cac68 + name: 'System local time' + type: ZABBIX_ACTIVE + key: system.localtime + history: 7d + units: unixtime + description: 'The local system time of the host.' + tags: + - tag: component + value: system + - uuid: 16a7ae509f0c4f9d8631efae88fe6324 + name: 'Operating system architecture' + type: ZABBIX_ACTIVE + key: system.sw.arch + delay: 1h + history: 7d + value_type: CHAR + trends: '0' + description: 'The architecture of the operating system.' + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: os + - uuid: 5159e7263d7a42e499380b70e9d6490a + name: 'Operating system' + type: ZABBIX_ACTIVE + key: system.sw.os + delay: 1h + history: 7d + value_type: CHAR + trends: '0' + inventory_link: OS + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: os + triggers: + - uuid: 01bbea22605947dca9638229cf56e4e1 + expression: 'change(/Windows by Zabbix agent active/system.sw.os) and length(last(/Windows by Zabbix agent active/system.sw.os))>0' + name: 'Operating system description has changed' + priority: INFO + description: 'The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually.' + manual_close: 'YES' + dependencies: + - name: 'System name has changed' + expression: 'change(/Windows by Zabbix agent active/system.hostname) and length(last(/Windows by Zabbix agent active/system.hostname))>0' + tags: + - tag: scope + value: notice + - uuid: 9d6f14cc540846ab98052bf741a4247b + name: 'Free swap space' + type: CALCULATED + key: system.swap.free + history: 7d + units: B + params: 'last(//system.swap.size[,total]) - last(//system.swap.size[,total]) / 100 * last(//perf_counter_en["\Paging file(_Total)\% Usage"])' + description: 'The free space of the swap volume/file expressed in bytes.' + tags: + - tag: component + value: memory + - tag: component + value: storage + - uuid: e91b5f08c6b745bca975797ea4abd02a + name: 'Free swap space in %' + type: DEPENDENT + key: system.swap.pfree + delay: '0' + history: 7d + value_type: FLOAT + units: '%' + description: 'The free space of the swap volume/file expressed in %.' + preprocessing: + - type: JAVASCRIPT + parameters: + - 'return (100 - value)' + master_item: + key: 'perf_counter_en["\Paging file(_Total)\% Usage"]' + tags: + - tag: component + value: memory + - tag: component + value: storage + - uuid: b5af29f7b8ee451895b49c0444e929f4 + name: 'Total swap space' + type: ZABBIX_ACTIVE + key: 'system.swap.size[,total]' + history: 7d + units: B + description: 'The total space of the swap volume/file expressed in bytes.' + tags: + - tag: component + value: memory + - tag: component + value: storage + - uuid: 8fa1259420ad486ab6e2520c9b047073 + name: 'System description' + type: ZABBIX_ACTIVE + key: system.uname + delay: 15m + history: 7d + value_type: CHAR + trends: '0' + description: 'System description of the host.' + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + tags: + - tag: component + value: system + - uuid: 695053710ea14cc48692b5cb260d0dfb + name: Uptime + type: ZABBIX_ACTIVE + key: system.uptime + delay: 30s + history: 7d + trends: '0' + units: uptime + description: 'The system uptime expressed in the following format: "N days, hh:mm:ss".' + tags: + - tag: component + value: system + triggers: + - uuid: 4114e248a3b347f4a2fefc7816f2e940 + expression: 'last(/Windows by Zabbix agent active/system.uptime)<10m' + name: 'Host has been restarted' + event_name: 'Host has been restarted (uptime < 10m)' + priority: WARNING + description: 'The device uptime is less than 10 minutes.' + manual_close: 'YES' + tags: + - tag: scope + value: notice + - uuid: 60a17a94a9ad4e4192547d0a6a1e1d25 + name: 'Get filesystems' + type: ZABBIX_ACTIVE + key: vfs.fs.get + history: '0' + value_type: TEXT + trends: '0' + description: 'The `vfs.fs.get` key acquires raw information set about the filesystems. Later to be extracted by preprocessing in dependent items.' + tags: + - tag: component + value: raw + - uuid: 83185781999742268a7742695c5d3ee3 + name: 'Total memory' + type: ZABBIX_ACTIVE + key: 'vm.memory.size[total]' + history: 7d + units: B + description: 'Total memory expressed in bytes.' + tags: + - tag: component + value: memory + - uuid: f85ec8917f084c7d9b6bc36e186d74d6 + name: 'Used memory' + type: ZABBIX_ACTIVE + key: 'vm.memory.size[used]' + history: 7d + units: B + description: 'Used memory in bytes.' + tags: + - tag: component + value: memory + - uuid: 9b62965a4670472b8c672dc1021bb8fd + name: 'Memory utilization' + type: CALCULATED + key: vm.memory.util + history: 7d + value_type: FLOAT + units: '%' + params: 'last(//vm.memory.size[used]) / last(//vm.memory.size[total]) * 100' + description: 'Memory utilization in %.' + tags: + - tag: component + value: memory + triggers: + - uuid: 610a0893be834c11b35a0472dcabab7c + expression: 'min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}' + name: 'High memory utilization' + event_name: 'High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)' + priority: AVERAGE + description: 'The system is running out of free memory.' + tags: + - tag: scope + value: capacity + - tag: scope + value: performance + - uuid: c35940d1a12e4b96b7114ac8dbbfcec4 + name: 'Windows: Network interfaces WMI get' + type: ZABBIX_ACTIVE + key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]' + history: '0' + value_type: TEXT + trends: '0' + description: 'Raw data of `win32_networkadapter.`' + preprocessing: + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - tag: component + value: raw + - uuid: 3dcf69f6637f496ca0406e0ed403f03c + name: 'Number of cores' + type: ZABBIX_ACTIVE + key: 'wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]' + history: 7d + description: 'The number of logical processors available on the computer.' + tags: + - tag: component + value: cpu + - uuid: 1ac6ebdb5c98415b94cb44da5feeac7f + name: 'Active agent availability' + type: INTERNAL + key: 'zabbix[host,active_agent,available]' + history: 7d + description: | + Availability of active checks on the host. The value of this item corresponds to availability icons in the host list. + Possible values: + 0 - unknown + 1 - available + 2 - not available + valuemap: + name: zabbix.host.active_agent.available + tags: + - tag: component + value: health + - tag: component + value: network + triggers: + - uuid: bad86dfaf5274927bce35ad314a2d21a + expression: 'min(/Windows by Zabbix agent active/zabbix[host,active_agent,available],{$AGENT.TIMEOUT})=2' + name: 'Active checks are not available' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: HIGH + description: 'Active checks are considered unavailable. Agent has not sent a heartbeat for a prolonged time.' + tags: + - tag: scope + value: availability + discovery_rules: + - uuid: c05c8d1be5614ffab1688cc92db32f12 + name: 'Network interfaces discovery' + type: DEPENDENT + key: net.if.discovery + delay: '0' + filter: + evaltype: AND + conditions: + - macro: '{#IFALIAS}' + value: '{$NET.IF.IFALIAS.MATCHES}' + formulaid: A + - macro: '{#IFALIAS}' + value: '{$NET.IF.IFALIAS.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - macro: '{#IFDESCR}' + value: '{$NET.IF.IFDESCR.MATCHES}' + formulaid: C + - macro: '{#IFDESCR}' + value: '{$NET.IF.IFDESCR.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - macro: '{#IFNAME}' + value: '{$NET.IF.IFNAME.MATCHES}' + formulaid: E + - macro: '{#IFNAME}' + value: '{$NET.IF.IFNAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: F + description: 'Discovery of installed network interfaces.' + item_prototypes: + - uuid: 344f0ce5ba5244cb90cc08db556e6f9c + name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded' + type: ZABBIX_ACTIVE + key: 'net.if.in["{#IFGUID}",dropped]' + delay: 3m + description: 'The number of incoming packets dropped on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: a2461163f9b44b678008e3d5fd96a168 + name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors' + type: ZABBIX_ACTIVE + key: 'net.if.in["{#IFGUID}",errors]' + delay: 3m + description: 'The number of incoming packets with errors on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: a8f69dac86d646b194f9b204f22aeb3b + name: 'Interface {#IFNAME}({#IFALIAS}): Bits received' + type: ZABBIX_ACTIVE + key: 'net.if.in["{#IFGUID}"]' + delay: 3m + units: bps + description: 'Incoming traffic on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + - type: MULTIPLIER + parameters: + - '8' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: 46d947876b844223bb500f29cbf82273 + name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded' + type: ZABBIX_ACTIVE + key: 'net.if.out["{#IFGUID}",dropped]' + delay: 3m + description: 'The number of outgoing packets dropped on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: 1f5854d4ad5d4b65b63e5ca9ffa5007c + name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors' + type: ZABBIX_ACTIVE + key: 'net.if.out["{#IFGUID}",errors]' + delay: 3m + description: 'The number of outgoing packets with errors on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: 1adceed263804e089108bb2cc1aa51e1 + name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent' + type: ZABBIX_ACTIVE + key: 'net.if.out["{#IFGUID}"]' + delay: 3m + units: bps + description: 'Outgoing traffic on the network interface.' + preprocessing: + - type: CHANGE_PER_SECOND + parameters: + - '' + - type: MULTIPLIER + parameters: + - '8' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: 820ca9809e6f46af8aa3f41195f246d9 + name: 'Interface {#IFNAME}({#IFALIAS}): Speed' + type: DEPENDENT + key: 'net.if.speed["{#IFGUID}"]' + delay: '0' + trends: '0' + units: bps + description: 'Estimated bandwidth of the network interface if any.' + preprocessing: + - type: JSONPATH + parameters: + - '$[?(@.GUID == "{#IFGUID}")].Speed.first()' + error_handler: CUSTOM_VALUE + error_handler_params: '0' + - type: JAVASCRIPT + parameters: + - 'return (value==''9223372036854775807'' ? 0 : value)' + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + master_item: + key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + - uuid: 929917f16ecd4369a5535fe8178248d6 + name: 'Interface {#IFNAME}({#IFALIAS}): Operational status' + type: DEPENDENT + key: 'net.if.status["{#IFGUID}"]' + delay: '0' + trends: '0' + description: 'The operational status of the network interface.' + valuemap: + name: 'Win32_NetworkAdapter::NetConnectionStatus' + preprocessing: + - type: JSONPATH + parameters: + - '$[?(@.GUID == "{#IFGUID}")].NetConnectionStatus.first()' + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + master_item: + key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + trigger_prototypes: + - uuid: f9d1ac2feb0e43249cc849166ca9014c + expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2))' + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: 'last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0' + name: 'Interface {#IFNAME}({#IFALIAS}): Link down' + opdata: 'Current state: {ITEM.LASTVALUE1}' + priority: AVERAGE + description: | + This trigger expression works as follows: + 1. It can be triggered if the operations status is down. + 2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. + No new trigger will be fired if this interface is down. + 3. `last(/TEMPLATE_NAME/METRIC,#1)<>last(/TEMPLATE_NAME/METRIC,#2)` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.) + + WARNING: if closed manually - it will not fire again on the next poll, because of .diff. + manual_close: 'YES' + tags: + - tag: scope + value: availability + - uuid: 1e513ffd8cd24a39a04b2140dce65b62 + name: 'Interface {#IFNAME}({#IFALIAS}): Interface type' + type: DEPENDENT + key: 'net.if.type["{#IFGUID}"]' + delay: '0' + trends: '0' + description: 'The type of the network interface.' + valuemap: + name: 'Win32_NetworkAdapter::AdapterTypeId' + preprocessing: + - type: JSONPATH + parameters: + - '$[?(@.GUID == "{#IFGUID}")].AdapterTypeId.first()' + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1d + master_item: + key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]' + tags: + - tag: component + value: network + - tag: description + value: '{#IFALIAS}' + - tag: interface + value: '{#IFNAME}' + trigger_prototypes: + - uuid: 27a60f88cbd0457291153105ace75e4d + expression: | + change(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])<0 and + last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 and + last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 + name: 'Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before' + opdata: 'Current reported speed: {ITEM.LASTVALUE1}' + priority: INFO + description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.' + manual_close: 'YES' + dependencies: + - name: 'Interface {#IFNAME}({#IFALIAS}): Link down' + expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2))' + recovery_expression: 'last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0' + tags: + - tag: scope + value: capacity + - uuid: a9ead42a45f5496a84a6a2bc619cece4 + expression: | + (avg(/Windows by Zabbix agent active/net.if.in["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"]) or + avg(/Windows by Zabbix agent active/net.if.out["{#IFGUID}"],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])) and + last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"])>0 + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: | + avg(/Windows by Zabbix agent active/net.if.in["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"]) and + avg(/Windows by Zabbix agent active/net.if.out["{#IFGUID}"],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Windows by Zabbix agent active/net.if.speed["{#IFGUID}"]) + name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage' + event_name: 'Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)' + opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}' + priority: WARNING + description: 'The utilization of the network interface is close to its estimated maximum bandwidth.' + manual_close: 'YES' + dependencies: + - name: 'Interface {#IFNAME}({#IFALIAS}): Link down' + expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2))' + recovery_expression: 'last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0' + tags: + - tag: scope + value: performance + - uuid: 1945fd9bc15c471fb050d0a5430245a6 + expression: | + min(/Windows by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} + or min(/Windows by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} + recovery_mode: RECOVERY_EXPRESSION + recovery_expression: | + max(/Windows by Zabbix agent active/net.if.in["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 + and max(/Windows by Zabbix agent active/net.if.out["{#IFGUID}",errors],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8 + name: 'Interface {#IFNAME}({#IFALIAS}): High error rate' + event_name: 'Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)' + opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}' + priority: WARNING + description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.' + manual_close: 'YES' + dependencies: + - name: 'Interface {#IFNAME}({#IFALIAS}): Link down' + expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])<>2 and (last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#1)<>last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"],#2))' + recovery_expression: 'last(/Windows by Zabbix agent active/net.if.status["{#IFGUID}"])=2 or {$IFCONTROL:"{#IFNAME}"}=0' + tags: + - tag: scope + value: availability + graph_prototypes: + - uuid: 1181f5ffedb643d4953c9fd5df14a21e + name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic' + graph_items: + - drawtype: GRADIENT_LINE + color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.in["{#IFGUID}"]' + - sortorder: '1' + drawtype: BOLD_LINE + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.out["{#IFGUID}"]' + - sortorder: '2' + color: 00611C + yaxisside: RIGHT + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.out["{#IFGUID}",errors]' + - sortorder: '3' + color: F7941D + yaxisside: RIGHT + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.in["{#IFGUID}",errors]' + - sortorder: '4' + color: FC6EA3 + yaxisside: RIGHT + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.out["{#IFGUID}",dropped]' + - sortorder: '5' + color: 6C59DC + yaxisside: RIGHT + item: + host: 'Windows by Zabbix agent active' + key: 'net.if.in["{#IFGUID}",dropped]' + master_item: + key: 'wmi.getall[root\cimv2,"select Name,Description,NetConnectionID,Speed,AdapterTypeId,NetConnectionStatus,GUID from win32_networkadapter where PhysicalAdapter=True and NetConnectionStatus>0"]' + preprocessing: + - type: JAVASCRIPT + parameters: + - | + output = JSON.parse(value).map(function(net){ + return { + "{#IFNAME}": net.Name, + "{#IFDESCR}": net.Description, + "{#IFALIAS}": net.NetConnectionID, + "{#IFGUID}": net.GUID + }}) + return JSON.stringify({"data": output}) + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + - uuid: b2a9c04e3e0846ab89d5dbc39d273567 + name: 'Physical disks discovery' + type: ZABBIX_ACTIVE + key: 'perf_instance_en.discovery[PhysicalDisk]' + delay: 1h + filter: + evaltype: AND + conditions: + - macro: '{#DEVNAME}' + value: '{$VFS.DEV.DEVNAME.MATCHES}' + formulaid: A + - macro: '{#DEVNAME}' + value: '{$VFS.DEV.DEVNAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + description: 'Discovery of installed physical disks.' + item_prototypes: + - uuid: 714bbd069d34400895df413fe4627543 + name: '{#DEVNAME}: Disk utilization by idle time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]' + value_type: FLOAT + units: '%' + description: 'This item is the percentage of elapsed time that the selected disk drive was busy servicing read or writes requests based on idle time.' + preprocessing: + - type: JAVASCRIPT + parameters: + - 'return (100 - value)' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + trigger_prototypes: + - uuid: 00031ae791d6424dbd29c91be91a249f + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60],15m)>{$VFS.DEV.UTIL.MAX.WARN}' + name: '{#DEVNAME}: Disk is overloaded' + event_name: '{#DEVNAME}: Disk is overloaded (util > {$VFS.DEV.UTIL.MAX.WARN}% for 15m)' + priority: WARNING + description: 'The disk appears to be under heavy load.' + manual_close: 'YES' + dependencies: + - name: '{#DEVNAME}: Disk read request responses are too high' + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}' + - name: '{#DEVNAME}: Disk write request responses are too high' + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}' + tags: + - tag: scope + value: performance + - uuid: abdcdffc92114fda93d4893c772cf14a + name: '{#DEVNAME}: Average disk read queue length' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]' + value_type: FLOAT + description: 'Average disk read queue, the number of requests outstanding on the disk at the time the performance data is collected.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + - uuid: 208b3a3868844e85a7e3e5f3940d744d + name: '{#DEVNAME}: Disk read request avg waiting time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]' + value_type: FLOAT + units: s + description: 'The average time for read requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + trigger_prototypes: + - uuid: f6c28fa8eef542a786b29d745dd2e56f + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60],15m) > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}' + name: '{#DEVNAME}: Disk read request responses are too high' + event_name: '{#DEVNAME}: Disk read request responses are too high (read > {$VFS.DEV.READ.AWAIT.WARN:"{#DEVNAME}"}s for 15m)' + priority: WARNING + description: 'This trigger might indicate the disk {#DEVNAME} saturation.' + manual_close: 'YES' + tags: + - tag: scope + value: performance + - uuid: 6a162aca790c48a7bd726d54494d67e9 + name: '{#DEVNAME}: Disk write request avg waiting time' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]' + value_type: FLOAT + units: s + description: 'The average time for write requests issued to the device to be served. This includes the time spent by the requests in queue and the time spent servicing them.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + trigger_prototypes: + - uuid: 9a0c7aa60e0e40d8abec9be6d6d49190 + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60],15m) > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}' + name: '{#DEVNAME}: Disk write request responses are too high' + event_name: '{#DEVNAME}: Disk write request responses are too high (write > {$VFS.DEV.WRITE.AWAIT.WARN:"{#DEVNAME}"}s for 15m)' + priority: WARNING + description: 'This trigger might indicate the disk {#DEVNAME} saturation.' + manual_close: 'YES' + tags: + - tag: scope + value: performance + - uuid: ba3a369741544f6c88a476a4f2d30ab2 + name: '{#DEVNAME}: Average disk write queue length' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]' + value_type: FLOAT + description: 'Average disk write queue, the number of requests outstanding on the disk at the time the performance data is collected.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + - uuid: 24d15f53439148919e11d5811f25adf1 + name: '{#DEVNAME}: Disk average queue size (avgqu-sz)' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]' + value_type: FLOAT + description: 'The current average disk queue; the number of requests outstanding on the disk while the performance data is being collected.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + - uuid: c1424c1c2fe647a8baf3357c34ae261e + name: '{#DEVNAME}: Disk read rate' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]' + value_type: FLOAT + units: '!r/s' + description: 'Rate of read operations on the disk.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + - uuid: 4d10e563bbd1402daa1c9c8516095aa8 + name: '{#DEVNAME}: Disk write rate' + type: ZABBIX_ACTIVE + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]' + value_type: FLOAT + units: '!w/s' + description: 'Rate of write operations on the disk.' + tags: + - tag: component + value: storage + - tag: disk + value: '{#DEVNAME}' + graph_prototypes: + - uuid: e249ca7462a14508bdbdbf748102015a + name: '{#DEVNAME}: Disk average queue length' + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Read Queue Length",60]' + - sortorder: '1' + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk Write Queue Length",60]' + - uuid: 790265fa66e14e97badadfce392ef8df + name: '{#DEVNAME}: Disk average waiting time' + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Read",60]' + - sortorder: '1' + drawtype: GRADIENT_LINE + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Avg. Disk sec/Write",60]' + - uuid: 024945537eab4facb18483b6f3ce8d3e + name: '{#DEVNAME}: Disk read/write rates' + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Reads/sec",60]' + - sortorder: '1' + drawtype: GRADIENT_LINE + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Disk Writes/sec",60]' + - uuid: 70de55df5604410d8a67cdca31957b03 + name: '{#DEVNAME}: Disk utilization and queue' + graph_items: + - color: 199C0D + yaxisside: RIGHT + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\Current Disk Queue Length",60]' + - sortorder: '1' + drawtype: GRADIENT_LINE + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\PhysicalDisk({#DEVNAME})\% Idle Time",60]' + preprocessing: + - type: STR_REPLACE + parameters: + - '{#INSTANCE}' + - '{#DEVNAME}' + - uuid: dbde6e6c7c13436b9bd20230f1d309ed + name: 'Windows services discovery' + type: ZABBIX_ACTIVE + key: service.discovery + delay: 1h + filter: + evaltype: AND + conditions: + - macro: '{#SERVICE.NAME}' + value: '{$SERVICE.NAME.MATCHES}' + formulaid: A + - macro: '{#SERVICE.NAME}' + value: '{$SERVICE.NAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - macro: '{#SERVICE.STARTUPNAME}' + value: '{$SERVICE.STARTUPNAME.MATCHES}' + formulaid: C + - macro: '{#SERVICE.STARTUPNAME}' + value: '{$SERVICE.STARTUPNAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + description: 'Used for the discovery of Windows services of different types as defined in the template''s macros.' + item_prototypes: + - uuid: d6379e85f1974734abbe60fef1a6ca1d + name: 'State of service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME})' + type: ZABBIX_ACTIVE + key: 'service.info["{#SERVICE.NAME}",state]' + valuemap: + name: 'Windows service state' + tags: + - tag: component + value: system + - tag: name + value: '{#SERVICE.DISPLAYNAME}' + - tag: service + value: '{#SERVICE.NAME}' + trigger_prototypes: + - uuid: c6f2c1c32cdf401091e4439624a24fab + expression: 'min(/Windows by Zabbix agent active/service.info["{#SERVICE.NAME}",state],#3)<>0' + name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running' + event_name: '"{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME})' + priority: AVERAGE + description: 'The service has a state other than "Running" for the last three times.' + tags: + - tag: scope + value: notice + - uuid: 4fbbdf83609e48e68011f6c394c652f9 + name: 'Mounted filesystem discovery' + type: DEPENDENT + key: vfs.fs.dependent.discovery + delay: '0' + filter: + evaltype: AND + conditions: + - macro: '{#FSDRIVETYPE}' + value: '{$VFS.FS.FSDRIVETYPE.MATCHES}' + formulaid: A + - macro: '{#FSDRIVETYPE}' + value: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: B + - macro: '{#FSNAME}' + value: '{$VFS.FS.FSNAME.MATCHES}' + formulaid: C + - macro: '{#FSNAME}' + value: '{$VFS.FS.FSNAME.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: D + - macro: '{#FSTYPE}' + value: '{$VFS.FS.FSTYPE.MATCHES}' + formulaid: E + - macro: '{#FSTYPE}' + value: '{$VFS.FS.FSTYPE.NOT_MATCHES}' + operator: NOT_MATCHES_REGEX + formulaid: F + description: 'Discovery of filesystems of different types.' + item_prototypes: + - uuid: 821daa0e25a2456ca637e441a844dfe6 + name: 'FS [{#FSLABEL}({#FSNAME})]: Space: Available' + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},free]' + delay: '0' + units: B + description: 'Available storage space expressed in bytes.' + preprocessing: + - type: JSONPATH + parameters: + - $.bytes.free + master_item: + key: 'vfs.fs.dependent[{#FSNAME},data]' + tags: + - tag: component + value: storage + - tag: filesystem + value: '{#FSNAME}' + - tag: fstype + value: '{#FSTYPE}' + - uuid: 8949201f93ab46f0a0ad95ca6ce6124c + name: 'FS [{#FSLABEL}({#FSNAME})]: Space: Used, in %' + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},pused]' + delay: '0' + value_type: FLOAT + units: '%' + description: 'Calculated as the percentage of currently used space compared to the maximum available space.' + preprocessing: + - type: JSONPATH + parameters: + - $.bytes.pused + master_item: + key: 'vfs.fs.dependent[{#FSNAME},data]' + tags: + - tag: component + value: storage + - tag: filesystem + value: '{#FSNAME}' + - tag: fstype + value: '{#FSTYPE}' + trigger_prototypes: + - uuid: 5bed682545044584852888d96454df86 + expression: 'min(/Windows by Zabbix agent active/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSLABEL}({#FSNAME})"}' + name: 'FS [{#FSLABEL}({#FSNAME})]: Space is critically low' + event_name: 'FS [{#FSLABEL}({#FSNAME})]: Space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT:"{#FSLABEL}({#FSNAME})"}%, total {{?last(//vfs.fs.dependent.size[{#FSNAME},total])/1024/1024/1024}.fmtnum(1)}GB)' + opdata: 'Space used: {{ITEM.LASTVALUE1}.fmtnum(1)}%' + priority: AVERAGE + description: | + The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"}%` limit. + The trigger expression is based on the current used and maximum available spaces. + Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. + manual_close: 'YES' + tags: + - tag: scope + value: availability + - tag: scope + value: capacity + - uuid: 1e5e9718c5a14099b9421ff7956b2f33 + expression: 'min(/Windows by Zabbix agent active/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.WARN:"{#FSLABEL}({#FSNAME})"}' + name: 'FS [{#FSLABEL}({#FSNAME})]: Space is low' + event_name: 'FS [{#FSLABEL}({#FSNAME})]: Space is low (used > {$VFS.FS.PUSED.MAX.WARN:"{#FSLABEL}({#FSNAME})"}%, total {{?last(//vfs.fs.dependent.size[{#FSNAME},total])/1024/1024/1024}.fmtnum(1)}GB)' + opdata: 'Space used: {{ITEM.LASTVALUE1}.fmtnum(1)}%' + priority: WARNING + description: | + The volume's space usage exceeds the `{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"}%` limit. + The trigger expression is based on the current used and maximum available spaces. + Event name represents the total volume space, which can differ from the maximum available space, depending on the filesystem type. + manual_close: 'YES' + dependencies: + - name: 'FS [{#FSLABEL}({#FSNAME})]: Space is critically low' + expression: 'min(/Windows by Zabbix agent active/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSLABEL}({#FSNAME})"}' + tags: + - tag: scope + value: availability + - tag: scope + value: capacity + - uuid: d45f2c3469dd424486bdee586e4a61eb + name: 'FS [{#FSLABEL}({#FSNAME})]: Space: Total' + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},total]' + delay: '0' + units: B + description: 'Total space expressed in bytes.' + preprocessing: + - type: JSONPATH + parameters: + - $.bytes.total + master_item: + key: 'vfs.fs.dependent[{#FSNAME},data]' + tags: + - tag: component + value: storage + - tag: filesystem + value: '{#FSNAME}' + - tag: fstype + value: '{#FSTYPE}' + - uuid: ddd24d7eaa5742ac9d6cbae42bcfa1ae + name: 'FS [{#FSLABEL}({#FSNAME})]: Space: Used' + type: DEPENDENT + key: 'vfs.fs.dependent.size[{#FSNAME},used]' + delay: '0' + units: B + description: 'Used storage expressed in bytes.' + preprocessing: + - type: JSONPATH + parameters: + - $.bytes.used + master_item: + key: 'vfs.fs.dependent[{#FSNAME},data]' + tags: + - tag: component + value: storage + - tag: filesystem + value: '{#FSNAME}' + - tag: fstype + value: '{#FSTYPE}' + - uuid: b9ad1677ea6841309c7dc3a304b61c37 + name: 'FS [{#FSLABEL}({#FSNAME})]: Get data' + type: DEPENDENT + key: 'vfs.fs.dependent[{#FSNAME},data]' + delay: '0' + history: 1h + value_type: TEXT + trends: '0' + description: 'Intermediate data of `{#FSNAME}` filesystem.' + preprocessing: + - type: JSONPATH + parameters: + - '$.[?(@.fsname==''{#FSNAME}'')].first()' + master_item: + key: vfs.fs.get + tags: + - tag: component + value: raw + - tag: component + value: storage + - tag: filesystem + value: '{#FSNAME}' + - tag: fstype + value: '{#FSTYPE}' + graph_prototypes: + - uuid: 478c7beb397a48318994fc96acc2c4da + name: 'FS [{#FSLABEL}({#FSNAME})]: Space usage graph, in %' + width: '600' + height: '340' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - drawtype: FILLED_REGION + color: F63100 + calc_fnc: LAST + item: + host: 'Windows by Zabbix agent active' + key: 'vfs.fs.dependent.size[{#FSNAME},pused]' + - uuid: 8d0581d07b92406aa9f007f6d03ad24e + name: 'FS [{#FSLABEL}({#FSNAME})]: Space utilization chart' + width: '600' + height: '340' + type: PIE + show_3d: 'YES' + graph_items: + - color: '787878' + calc_fnc: LAST + type: GRAPH_SUM + item: + host: 'Windows by Zabbix agent active' + key: 'vfs.fs.dependent.size[{#FSNAME},total]' + - sortorder: '1' + color: F63100 + calc_fnc: LAST + item: + host: 'Windows by Zabbix agent active' + key: 'vfs.fs.dependent.size[{#FSNAME},used]' + - sortorder: '2' + color: 199C09 + calc_fnc: LAST + item: + host: 'Windows by Zabbix agent active' + key: 'vfs.fs.dependent.size[{#FSNAME},free]' + master_item: + key: vfs.fs.get + lld_macro_paths: + - lld_macro: '{#FSDRIVETYPE}' + path: $.fsdrivetype + - lld_macro: '{#FSLABEL}' + path: $.fslabel + - lld_macro: '{#FSNAME}' + path: $.fsname + - lld_macro: '{#FSTYPE}' + path: $.fstype + preprocessing: + - type: JAVASCRIPT + parameters: + - | + var filesystems = JSON.parse(value); + + result = filesystems.map(function (filesystem) { + return { + 'fsname': filesystem.fsname, + 'fstype': filesystem.fstype, + 'fslabel': filesystem.fslabel, + 'fsdrivetype': filesystem.fsdrivetype + }; + }); + + return JSON.stringify(result); + - type: DISCARD_UNCHANGED_HEARTBEAT + parameters: + - 1h + tags: + - tag: class + value: os + - tag: target + value: windows + macros: + - macro: '{$AGENT.NODATA_TIMEOUT}' + value: 30m + description: 'No data timeout for active agents. Consider to keep it relatively high.' + - macro: '{$AGENT.TIMEOUT}' + value: 5m + description: 'Timeout after which agent is considered unavailable.' + - macro: '{$CPU.INTERRUPT.CRIT.MAX}' + value: '50' + description: 'The critical threshold of the % Interrupt Time counter.' + - macro: '{$CPU.PRIV.CRIT.MAX}' + value: '30' + description: 'The threshold of the % Privileged Time counter.' + - macro: '{$CPU.QUEUE.CRIT.MAX}' + value: '3' + description: 'The threshold of the Processor Queue Length counter.' + - macro: '{$CPU.UTIL.CRIT}' + value: '90' + description: 'The critical threshold of the CPU utilization expressed in %.' + - macro: '{$IF.ERRORS.WARN}' + value: '2' + description: 'Warning threshold of error packet rate. Can be used with interface name as context.' + - macro: '{$IF.UTIL.MAX}' + value: '90' + description: 'Used as a threshold in the interface utilization trigger.' + - macro: '{$IFCONTROL}' + value: '1' + description: 'Macro for the interface operational state for the "link down" trigger. Can be used with interface name as context.' + - macro: '{$MEM.PAGE_SEC.CRIT.MAX}' + value: '1000' + description: 'The warning threshold of the Memory Pages/sec counter.' + - macro: '{$MEM.PAGE_TABLE_CRIT.MIN}' + value: '5000' + description: 'The warning threshold of the Free System Page Table Entries counter.' + - macro: '{$MEMORY.UTIL.MAX}' + value: '90' + description: 'The warning threshold of the Memory util item.' + - macro: '{$NET.IF.IFALIAS.MATCHES}' + value: '.*' + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}' + value: CHANGE_THIS + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$NET.IF.IFDESCR.MATCHES}' + value: '.*' + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}' + value: CHANGE_THIS + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$NET.IF.IFNAME.MATCHES}' + value: '.*' + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$NET.IF.IFNAME.NOT_MATCHES}' + value: Miniport|Virtual|Teredo|Kernel|Loopback|Bluetooth|HTTPS|6to4|QoS|Layer + description: 'Used in Network interface discovery. Can be overridden on the host or linked template level.' + - macro: '{$SERVICE.NAME.MATCHES}' + value: '^.*$' + description: 'Used in Service discovery. Can be overridden on the host or linked template level.' + - macro: '{$SERVICE.NAME.NOT_MATCHES}' + value: '^(?:RemoteRegistry|MMCSS|gupdate|SysmonLog|clr_optimization_v.+|sppsvc|gpsvc|Pml Driver HPZ12|Net Driver HPZ12|MapsBroker|IntelAudioService|Intel\(R\) TPM Provisioning Service|dbupdate|DoSvc|CDPUserSvc_.+|WpnUserService_.+|OneSyncSvc_.+|WbioSrvc|BITS|tiledatamodelsvc|GISvc|ShellHWDetection|TrustedInstaller|TabletInputService|CDPSvc|wuauserv|edgeupdate|cbdhsvc_.+)$' + description: 'Used in Service discovery. Can be overridden on the host or linked template level.' + - macro: '{$SERVICE.STARTUPNAME.MATCHES}' + value: '^(?:automatic|automatic delayed)$' + description: 'Used in Service discovery. Can be overridden on the host or linked template level.' + - macro: '{$SERVICE.STARTUPNAME.NOT_MATCHES}' + value: '^(?:manual|disabled)$' + description: 'Used in Service discovery. Can be overridden on the host or linked template level.' + - macro: '{$SWAP.PFREE.MIN.WARN}' + value: '20' + description: 'The warning threshold of the minimum free swap.' + - macro: '{$VFS.DEV.DEVNAME.MATCHES}' + value: '.*' + description: 'Used in physical disk discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.DEV.DEVNAME.NOT_MATCHES}' + value: _Total + description: 'Used in physical disk discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.DEV.READ.AWAIT.WARN}' + value: '0.02' + description: 'Disk read average response time (in s) before the trigger fires.' + - macro: '{$VFS.DEV.UTIL.MAX.WARN}' + value: '95' + description: 'The warning threshold of disk time utilization in percent.' + - macro: '{$VFS.DEV.WRITE.AWAIT.WARN}' + value: '0.02' + description: 'Disk write average response time (in s) before the trigger fires.' + - macro: '{$VFS.FS.FSDRIVETYPE.MATCHES}' + value: fixed + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.FSDRIVETYPE.NOT_MATCHES}' + value: ^\s$ + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.FSNAME.MATCHES}' + value: '.*' + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.FSNAME.NOT_MATCHES}' + value: '^(?:/dev|/sys|/run|/proc|.+/shm$)' + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.FSTYPE.MATCHES}' + value: '.*' + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.FSTYPE.NOT_MATCHES}' + value: ^\s$ + description: 'Used in filesystem discovery. Can be overridden on the host or linked template level.' + - macro: '{$VFS.FS.PUSED.MAX.CRIT}' + value: '90' + description: 'The critical threshold of the filesystem utilization.' + - macro: '{$VFS.FS.PUSED.MAX.WARN}' + value: '80' + description: 'The warning threshold of the filesystem utilization.' + dashboards: + - uuid: 681dd7ed662243709a406069f4a4a206 + name: Filesystems + pages: + - name: Overview + widgets: + - type: graphprototype + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '3' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'FS [{#FSLABEL}({#FSNAME})]: Space utilization chart' + - type: STRING + name: reference + value: AAAEB + - type: graphprototype + 'y': '5' + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '1' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'FS [{#FSLABEL}({#FSNAME})]: Space usage graph, in %' + - type: STRING + name: reference + value: AAAEC + - uuid: 59033ebe1b084a86b820fc59049db125 + name: 'Network interfaces' + pages: + - name: Overview + widgets: + - type: graphprototype + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '1' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic' + - type: STRING + name: reference + value: AAAAI + - uuid: 234161507ccb4d83b111cb31e0db8ae5 + name: 'System performance' + pages: + - widgets: + - type: graph + width: '36' + height: '5' + fields: + - type: GRAPH + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'Windows: CPU usage' + - type: STRING + name: reference + value: AAAAA + - type: graph + 'y': '5' + width: '36' + height: '5' + fields: + - type: GRAPH + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'Windows: Memory utilization' + - type: STRING + name: reference + value: AAAAC + - type: graphprototype + 'y': '10' + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '3' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'FS [{#FSLABEL}({#FSNAME})]: Space utilization chart' + - type: STRING + name: reference + value: AAAEA + - type: graphprototype + 'y': '15' + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '1' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: '{#DEVNAME}: Disk read/write rates' + - type: STRING + name: reference + value: AAAAF + - type: graphprototype + 'y': '20' + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '1' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: '{#DEVNAME}: Disk utilization and queue' + - type: STRING + name: reference + value: AAAAG + - type: graphprototype + 'y': '25' + width: '72' + height: '5' + fields: + - type: INTEGER + name: columns + value: '1' + - type: GRAPH_PROTOTYPE + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic' + - type: STRING + name: reference + value: AAAAH + - type: graph + x: '36' + width: '36' + height: '5' + fields: + - type: ITEM + name: itemid.0 + value: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\System\Processor Queue Length"]' + - type: STRING + name: reference + value: AAAAB + - type: INTEGER + name: source_type + value: '1' + - type: graph + x: '36' + 'y': '5' + width: '36' + height: '5' + fields: + - type: GRAPH + name: graphid.0 + value: + host: 'Windows by Zabbix agent active' + name: 'Windows: Swap usage' + - type: STRING + name: reference + value: AAAAD + valuemaps: + - uuid: 224ca38281f04c83844763251505cdce + name: 'Win32_NetworkAdapter::AdapterTypeId' + mappings: + - value: '0' + newvalue: 'Ethernet 802.3' + - value: '1' + newvalue: 'Token Ring 802.5' + - value: '2' + newvalue: 'Fiber Distributed Data Interface (FDDI)' + - value: '3' + newvalue: 'Wide Area Network (WAN)' + - value: '4' + newvalue: LocalTalk + - value: '5' + newvalue: 'Ethernet using DIX header format' + - value: '6' + newvalue: ARCNET + - value: '7' + newvalue: 'ARCNET (878.2)' + - value: '8' + newvalue: ATM + - value: '9' + newvalue: Wireless + - value: '10' + newvalue: 'Infrared Wireless' + - value: '11' + newvalue: Bpc + - value: '12' + newvalue: CoWan + - value: '13' + newvalue: '1394' + - uuid: 850e339a24de4ef6a0a881dc57bfa3a6 + name: 'Win32_NetworkAdapter::NetConnectionStatus' + mappings: + - value: '0' + newvalue: Disconnected + - value: '1' + newvalue: Connecting + - value: '2' + newvalue: Connected + - value: '3' + newvalue: Disconnecting + - value: '4' + newvalue: 'Hardware Not Present' + - value: '5' + newvalue: 'Hardware Disabled' + - value: '6' + newvalue: 'Hardware Malfunction' + - value: '7' + newvalue: 'Media Disconnected' + - value: '8' + newvalue: Authenticating + - value: '9' + newvalue: 'Authentication Succeeded' + - value: '10' + newvalue: 'Authentication Failed' + - value: '11' + newvalue: 'Invalid Address' + - value: '12' + newvalue: 'Credentials Required' + - uuid: e29ffb786c21406aa2338e3d35b484ef + name: 'Windows service state' + mappings: + - value: '0' + newvalue: Running + - value: '1' + newvalue: Paused + - value: '2' + newvalue: 'Start pending' + - value: '3' + newvalue: 'Pause pending' + - value: '4' + newvalue: 'Continue pending' + - value: '5' + newvalue: 'Stop pending' + - value: '6' + newvalue: Stopped + - value: '7' + newvalue: Unknown + - value: '255' + newvalue: 'No such service' + - uuid: 131de6a1016e43019d7cac2ce76901d4 + name: zabbix.host.active_agent.available + mappings: + - value: '0' + newvalue: unknown + - value: '1' + newvalue: available + - value: '2' + newvalue: 'not available' + - uuid: 9c0c0eb0ed7e495b9d4d487df7af0acd + name: zabbix.host.available + mappings: + - value: '0' + newvalue: 'not available' + - value: '1' + newvalue: available + - value: '2' + newvalue: unknown + - uuid: 0b50ea7e6695421da023ece0a23bed10 + name: 'Zabbix agent ping status' + mappings: + - value: '1' + newvalue: Up + triggers: + - uuid: 384393bb344e497382ea10e7fce7fcb3 + expression: 'min(/Windows by Zabbix agent active/perf_counter_en["\System\Processor Queue Length"],5m) - last(/Windows by Zabbix agent active/wmi.get[root/cimv2,"Select NumberOfLogicalProcessors from Win32_ComputerSystem"]) * 2 > {$CPU.QUEUE.CRIT.MAX}' + name: 'CPU queue length is too high' + event_name: 'CPU queue length is too high (over {$CPU.QUEUE.CRIT.MAX} for 5m)' + priority: WARNING + description: 'The CPU Queue Length in the last 5 minutes exceeds `{$CPU.QUEUE.CRIT.MAX}`. According to actual observations, PQL should not exceed the number of cores * 2. To fine-tune the conditions, use the macro `{$CPU.QUEUE.CRIT.MAX }`.' + dependencies: + - name: 'High CPU utilization' + expression: 'min(/Windows by Zabbix agent active/system.cpu.util,5m)>{$CPU.UTIL.CRIT}' + tags: + - tag: scope + value: performance + - uuid: ac93631f79584e2d9909f4bb2f12c866 + expression: 'max(/Windows by Zabbix agent active/system.swap.pfree,5m)<{$SWAP.PFREE.MIN.WARN} and last(/Windows by Zabbix agent active/system.swap.size[,total])>0' + name: 'High swap space usage' + event_name: 'High swap space usage (less than {$SWAP.PFREE.MIN.WARN}% free)' + opdata: 'Free: {ITEM.LASTVALUE1}, total: {ITEM.LASTVALUE2}' + priority: WARNING + description: 'This trigger is ignored, if there is no swap configured' + dependencies: + - name: 'High memory utilization' + expression: 'min(/Windows by Zabbix agent active/vm.memory.util,5m)>{$MEMORY.UTIL.MAX}' + tags: + - tag: scope + value: performance + graphs: + - uuid: 133a9930f45b448abbf35fe3a00d10c6 + name: 'Windows: CPU jumps' + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\System\Context Switches/sec"]' + - sortorder: '1' + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\Processor Information(_total)\% Interrupt Time"]' + - uuid: 2a650f6de7804835a9a02db021649fca + name: 'Windows: CPU usage' + type: STACKED + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\Processor Information(_total)\% User Time"]' + - sortorder: '1' + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'perf_counter_en["\Processor Information(_total)\% Privileged Time"]' + - uuid: 0865f60b2cd845aea2f2daad93c3bf83 + name: 'Windows: CPU utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - drawtype: GRADIENT_LINE + color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: system.cpu.util + - uuid: f09c95d4637140c89a7b43165906db96 + name: 'Windows: Memory utilization' + ymin_type_1: FIXED + ymax_type_1: FIXED + graph_items: + - drawtype: GRADIENT_LINE + color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: vm.memory.util + - uuid: 441075d89a7045c283a7da9dd74e2a1b + name: 'Windows: Swap usage' + graph_items: + - color: 199C0D + item: + host: 'Windows by Zabbix agent active' + key: system.swap.free + - sortorder: '1' + color: F63100 + item: + host: 'Windows by Zabbix agent active' + key: 'system.swap.size[,total]' diff --git a/Overrides/Windows_by_Zabbix_agent_active/7.0/docs/gen_ref_pages.py b/Overrides/Windows_by_Zabbix_agent_active/7.0/docs/gen_ref_pages.py new file mode 100644 index 00000000..bd02be1b --- /dev/null +++ b/Overrides/Windows_by_Zabbix_agent_active/7.0/docs/gen_ref_pages.py @@ -0,0 +1,6 @@ +from pathlib import Path + +import mkdocs_gen_files + +with mkdocs_gen_files.open("index.md", "w", encoding="utf-8") as index: + index.writelines(Path("README.md").open("r").read()) diff --git a/Overrides/Windows_by_Zabbix_agent_active/7.0/mkdocs.yaml b/Overrides/Windows_by_Zabbix_agent_active/7.0/mkdocs.yaml new file mode 100644 index 00000000..a8da24f2 --- /dev/null +++ b/Overrides/Windows_by_Zabbix_agent_active/7.0/mkdocs.yaml @@ -0,0 +1,17 @@ +site_name: "Zabbix Template: Windows by Zabbix agent active" +repo_url: https://github.com/radiorabe/rabe-zabbix +repo_name: radiorabe/rabe-zabbix +markdown_extensions: + - pymdownx.highlight: + anchor_linenums: true + - pymdownx.inlinehilite + - pymdownx.snippets + - pymdownx.superfences +plugins: + - search + - gen-files: + scripts: + - docs/gen_ref_pages.py + - literate-nav +nav: + - README: index.md diff --git a/README.md b/README.md index 26582ca4..8333040f 100644 --- a/README.md +++ b/README.md @@ -152,6 +152,7 @@ with a generated diff against its upstream version. | ---- | --- | --- | | Linux by Zabbix agent | | [✅](./Overrides/Linux_by_Zabbix_agent/7.0) | | PFSense by SNMP | | [✅](./Overrides/PFSense_by_SNMP/7.0) | +| Windows by Zabbix agent active | | [✅](./Overrides/Windows_by_Zabbix_agent_active/7.0) | ## Zabbix Version Support diff --git a/catalog-info.yaml b/catalog-info.yaml index 43c3ede5..f0ca27de 100644 --- a/catalog-info.yaml +++ b/catalog-info.yaml @@ -102,6 +102,34 @@ spec: system: rabe-zabbix subcomponentOf: rabe-zabbix-templates --- +# Overrides/Windows_by_Zabbix_agent_active/7.0/Windows_by_Zabbix_agent_active.yaml +apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + name: zabbix-template-Windows_by_Zabbix_agent_active + title: "Zabbix Template: Windows by Zabbix agent active" + description: | + This is an official Windows template. It requires Zabbix agent 7.0 or newer. + + You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows + + Generated by official Zabbix template tool "Templator" + + annotations: + backstage.io/techdocs-ref: dir:./Overrides/Windows_by_Zabbix_agent_active/7.0 + github.com/project-slug: radiorabe/rabe-zabbix + links: + - url: https://github.com/radiorabe/rabe-zabbix/tree/develop/Overrides/Windows_by_Zabbix_agent_active/7.0 + title: GitHub + icon: github + tags: [os, windows] +spec: + type: zabbix-template + lifecycle: experimental + owner: it-reaktion + system: rabe-zabbix + subcomponentOf: rabe-zabbix-templates +--- # Stacks/Applications/Apache_with_TLS_by_HTTP_Stack/7.0/Apache_with_TLS_by_HTTP_Stack.yaml apiVersion: backstage.io/v1alpha1 kind: Component diff --git a/hack/plays/manage.yml b/hack/plays/manage.yml index d30052f6..bf041ff7 100644 --- a/hack/plays/manage.yml +++ b/hack/plays/manage.yml @@ -41,6 +41,8 @@ upstream: "os/linux/template_os_linux.yaml" - template_name: "PFSense by SNMP" upstream: "app/pfsense_snmp/template_app_pfsense_snmp.yaml" + - template_name: "Windows by Zabbix agent active" + upstream: "os/windows_agent_active/template_os_windows_agent_active.yaml" __: # items below are "commented" :) - template_name: "Apache by HTTP" upstream: "app/apache_http/template_app_apache_http.yaml"