You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
665 lines
37 KiB
665 lines
37 KiB
zabbix_export:
|
|
version: '7.0'
|
|
template_groups:
|
|
- uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6
|
|
name: Templates/Applications
|
|
templates:
|
|
- uuid: cbf70ed444394566bcf213dd63d4d352
|
|
template: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
name: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
description: |
|
|
The template to monitor Microsoft Exchange Server 2016 by Zabbix that works without any external scripts.
|
|
The metrics are collected by Zabbix agent.
|
|
Recommended to use it with "OS Windows by Zabbix agent" template.
|
|
|
|
You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/415007-discussion-thread-for-official-zabbix-template-microsoft-exchange
|
|
|
|
Generated by official Zabbix template tool "Templator" 2.0.0
|
|
vendor:
|
|
name: Zabbix
|
|
version: 7.0-0
|
|
groups:
|
|
- name: Templates/Applications
|
|
items:
|
|
- uuid: b4978a9a4cff4ce88fbc82683b61eec4
|
|
name: 'MS Exchange: Databases total mounted'
|
|
key: 'perf_counter_en["\MSExchange Active Manager(_total)\Database Mounted"]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
description: 'Shows the number of active database copies on the server.'
|
|
preprocessing:
|
|
- type: DISCARD_UNCHANGED_HEARTBEAT
|
|
parameters:
|
|
- 3h
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 9b59700d8db8472fbde41c85c7a06ffc
|
|
name: 'MS Exchange [Client Access Server]: ActiveSync: ping command pending'
|
|
key: 'perf_counter_en["\MSExchange ActiveSync\Ping Commands Pending", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of ping commands currently pending in the queue.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: fa70b4e2d17c44c6945dd2d1c971c34c
|
|
name: 'MS Exchange [Client Access Server]: ActiveSync: requests per second'
|
|
key: 'perf_counter_en["\MSExchange ActiveSync\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of HTTP requests received from the client via ASP.NET per second. Determines the current Exchange ActiveSync request rate. Used only to determine current user load.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 8528015c73134a239d7ac235464788dd
|
|
name: 'MS Exchange [Client Access Server]: ActiveSync: sync commands per second'
|
|
key: 'perf_counter_en["\MSExchange ActiveSync\Sync Commands/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of sync commands processed per second. Clients use this command to synchronize items within a folder.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 456cb7af0b224a59afabae36d24d2cbc
|
|
name: 'MS Exchange [Client Access Server]: Autodiscover: requests per second'
|
|
key: 'perf_counter_en["\MSExchangeAutodiscover\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of Autodiscover service requests processed each second. Determines current user load.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: b9a539175cbb4259b064a787a25e9dbe
|
|
name: 'MS Exchange [Client Access Server]: Availability Service: availability requests per second'
|
|
key: 'perf_counter_en["\MSExchange Availability Service\Availability Requests (sec)", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of requests serviced per second. The request can be only for free/ busy information or include suggestions. One request may contain multiple mailboxes. Determines the rate at which Availability service requests are occurring.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 3c2a83dfef35497baf8c38b801854882
|
|
name: 'MS Exchange [Client Access Server]: Outlook Web App: current unique users'
|
|
key: 'perf_counter_en["\MSExchange OWA\Current Unique Users", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of unique users currently logged on to Outlook Web App. This value monitors the number of unique active user sessions, so that users are only removed from this counter after they log off or their session times out. Determines current user load.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 2c7fd331673e4d84aa09551222469b08
|
|
name: 'MS Exchange [Client Access Server]: Outlook Web App: requests per second'
|
|
key: 'perf_counter_en["\MSExchange OWA\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of requests handled by Outlook Web App per second. Determines current user load.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
- uuid: 9808449df53148a9a988a69d66944371
|
|
name: 'MS Exchange [Client Access Server]: MSExchangeWS: requests per second'
|
|
key: 'perf_counter_en["\MSExchangeWS\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of requests processed each second. Determines current user load.'
|
|
tags:
|
|
- tag: component
|
|
value: application
|
|
discovery_rules:
|
|
- uuid: f3d6e34eaff844bfab582cb55d679e82
|
|
name: 'Databases discovery'
|
|
key: 'perf_instance.discovery["MSExchange Active Manager"]'
|
|
delay: 1h
|
|
description: 'Discovery of Exchange databases.'
|
|
item_prototypes:
|
|
- uuid: 0b2d46b766f24947b76b49d8368044a5
|
|
name: 'Active Manager [{#INSTANCE}]: Database copy role'
|
|
key: 'perf_counter_en["\MSExchange Active Manager({#INSTANCE})\Database Copy Role Active"]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Database copy active or passive role.'
|
|
valuemap:
|
|
name: 'Exchange database copy role'
|
|
preprocessing:
|
|
- type: DISCARD_UNCHANGED_HEARTBEAT
|
|
parameters:
|
|
- 3h
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 9ad0743878ed411ab1e76b8e774e91e9
|
|
name: 'Information Store [{#INSTANCE}]: Page faults per second'
|
|
key: 'perf_counter_en["\MSExchange Database({#INF.STORE})\Database Page Fault Stalls/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Indicates the rate of page faults that can''t be serviced because there are no pages available for allocation from the database cache. If this counter is above 0, it''s an indication that the MSExchange Database\I/O Database Writes (Attached) Average Latency is too high.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 07e0dce4546b4d15bfbb34fa2044c319
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database({#INF.STORE})\Database Page Fault Stalls/sec", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.FAULTS.TIME})>{$MS.EXCHANGE.DB.FAULTS.WARN}'
|
|
name: 'Information Store [{#INSTANCE}]: Page faults is too high'
|
|
event_name: 'Information Store [{#INSTANCE}]: Page faults is too high (>{$MS.EXCHANGE.DB.FAULTS.WARN} for {$MS.EXCHANGE.DB.FAULTS.TIME})'
|
|
priority: AVERAGE
|
|
description: 'Too much page faults stalls for database "{#INSTANCE}". This counter should be 0 on production servers.'
|
|
tags:
|
|
- tag: scope
|
|
value: notice
|
|
- uuid: 1af9e0b4abb74e07af1d0d183333f0c4
|
|
name: 'Information Store [{#INSTANCE}]: Log records stalled'
|
|
key: 'perf_counter_en["\MSExchange Database({#INF.STORE})\Log Record Stalls/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Indicates the number of log records that can''t be added to the log buffers per second because the log buffers are full. The average value should be below 10 per second. Spikes (maximum values) shouldn''t be higher than 100 per second.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 688cbee95ef2432abc03c81d39049a44
|
|
expression: 'avg(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database({#INF.STORE})\Log Record Stalls/sec", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.LOG.STALLS.TIME})>{$MS.EXCHANGE.LOG.STALLS.WARN}'
|
|
name: 'Information Store [{#INSTANCE}]: Log records stalls is too high'
|
|
event_name: 'Information Store [{#INSTANCE}]: Log records stalls is too high (>{$MS.EXCHANGE.LOG.STALLS.WARN} for {$MS.EXCHANGE.LOG.STALLS.TIME})'
|
|
priority: AVERAGE
|
|
description: 'Stalled log records too high. The average value should be less than 10 threads waiting.'
|
|
tags:
|
|
- tag: scope
|
|
value: notice
|
|
- uuid: 1b53de26c73a49bdb7fe55328db03ddd
|
|
name: 'Information Store [{#INSTANCE}]: Log threads waiting'
|
|
key: 'perf_counter_en["\MSExchange Database({#INF.STORE})\Log Threads Waiting", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Indicates the number of threads waiting to complete an update of the database by writing their data to the log.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 1da31e52e5dd4b72bea5811a9bb06a01
|
|
name: 'Database Counters [{#INSTANCE}]: Active database read operations per second'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Attached)/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of database read operations.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 0bc5750ca13f4f738904e45f9860b76a
|
|
name: 'Database Counters [{#INSTANCE}]: Active database read operations latency'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Shows the average length of time per database read operation. Should be less than 20 ms on average.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 053583bbe81d4ce0961ee365cee5a802
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.ACTIVE.READ.TIME})>{$MS.EXCHANGE.DB.ACTIVE.READ.WARN}'
|
|
name: 'Database Counters [{#INSTANCE}]: Average read time latency is too high'
|
|
event_name: 'Database Counters [{#INSTANCE}]: Average read time latency is too high (>{$MS.EXCHANGE.DB.ACTIVE.READ.WARN}s for {$MS.EXCHANGE.DB.ACTIVE.READ.TIME})'
|
|
priority: WARNING
|
|
description: 'Should be less than 20ms on average.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
- uuid: 3095c843659341fd854fb297a9fdf14a
|
|
name: 'Database Counters [{#INSTANCE}]: Passive database read operations latency'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Shows the average length of time per passive database read operation. Should be less than 200ms on average.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 4a07a86df67b4aa08e538d4463c2d3df
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.PASSIVE.READ.TIME})>{$MS.EXCHANGE.DB.PASSIVE.READ.WARN}'
|
|
name: 'Database Counters [{#INSTANCE}]: Average read time latency is too high'
|
|
event_name: 'Database Counters [{#INSTANCE}]: Average read time latency is too high (>{$MS.EXCHANGE.DB.PASSIVE.READ.WARN}s for {$MS.EXCHANGE.DB.PASSIVE.READ.TIME})'
|
|
priority: WARNING
|
|
description: 'Should be less than 200ms on average.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
- uuid: 7456bcbbac114ead9c417bcbeefa0e1c
|
|
name: 'Database Counters [{#INSTANCE}]: Active database write operations per second'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Attached)/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of database write operations per second for each attached database instance.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: e45413cc0e46458f9a00132b30c7c354
|
|
name: 'Database Counters [{#INSTANCE}]: Active database write operations latency'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Shows the average length of time per database write operation. Should be less than 50ms on average.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 87cc1ca8b39541e89eb02a1c094892c0
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.ACTIVE.WRITE.TIME})>{$MS.EXCHANGE.DB.ACTIVE.WRITE.WARN}'
|
|
name: 'Database Counters [{#INSTANCE}]: Average write time latency is too high for {$MS.EXCHANGE.DB.ACTIVE.WRITE.TIME}'
|
|
priority: WARNING
|
|
description: 'Should be less than 50ms on average.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
- uuid: 5b7fc1949b67404584d2809556f3d595
|
|
name: 'Database Counters [{#INSTANCE}]: Passive database write operations latency'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Shows the average length of time, in ms, per passive database write operation. Should be less than the read latency for the same instance, as measured by the MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency counter.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 6128c55bf63a4c48981dfccd077b4635
|
|
name: 'Information Store [{#INSTANCE}]: Active mailboxes count'
|
|
key: 'perf_counter_en["\MSExchangeIS Store({#INSTANCE})\Active mailboxes"]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Number of active mailboxes in this database.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 4db79306eb044db899be5e7672651959
|
|
name: 'Information Store [{#INSTANCE}]: Database state'
|
|
key: 'perf_counter_en["\MSExchangeIS Store({#INSTANCE})\Database State"]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: |
|
|
Database state. Possible values:
|
|
0: Database without any copy and dismounted.
|
|
1: Database is a primary database and mounted.
|
|
2: Database is a passive copy and the state is healthy.
|
|
valuemap:
|
|
name: 'Exchange database state'
|
|
preprocessing:
|
|
- type: DISCARD_UNCHANGED_HEARTBEAT
|
|
parameters:
|
|
- 3m
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 6bc9bc6d20df4de89ff03d63f21f6eab
|
|
name: 'Information Store [{#INSTANCE}]: RPC requests latency'
|
|
key: 'perf_counter_en["\MSExchangeIS Store({#INSTANCE})\RPC Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'RPC Latency average is the average latency of RPC requests per database. Average is calculated over all RPCs since exrpc32 was loaded. Should be less than 50ms at all times, with spikes less than 100ms.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: b9b2f224082a4ec687d121534402170c
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchangeIS Store({#INSTANCE})\RPC Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.RPC.TIME})>{$MS.EXCHANGE.RPC.WARN}'
|
|
name: 'Information Store [{#INSTANCE}]: RPC Requests latency is too high'
|
|
event_name: 'Information Store [{#INSTANCE}]: RPC Requests latency is too high (>{$MS.EXCHANGE.RPC.WARN}s for {$MS.EXCHANGE.RPC.TIME})'
|
|
priority: WARNING
|
|
description: 'Should be less than 50ms at all times, with spikes less than 100ms.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
- uuid: 5321c367d288406d8d9eac217a444e9c
|
|
name: 'Information Store [{#INSTANCE}]: RPC requests per second'
|
|
key: 'perf_counter_en["\MSExchangeIS Store({#INSTANCE})\RPC Operations/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the number of RPC operations per second for each database instance.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
- uuid: 701d6a4fcfe14f899e0282eb75e08753
|
|
name: 'Information Store [{#INSTANCE}]: RPC requests total'
|
|
key: 'perf_counter_en["\MSExchangeIS Store({#INSTANCE})\RPC requests", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Indicates the overall RPC requests currently executing within the information store process. Should be below 70 at all times.'
|
|
tags:
|
|
- tag: component
|
|
value: database
|
|
- tag: database
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 6349d2b6cd13413187b8c77e10fa96a2
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchangeIS Store({#INSTANCE})\RPC requests", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.RPC.COUNT.TIME})>{$MS.EXCHANGE.RPC.COUNT.WARN}'
|
|
name: 'Information Store [{#INSTANCE}]: RPC Requests total count is too high'
|
|
event_name: 'Information Store [{#INSTANCE}]: RPC Requests total count is too high (>{$MS.EXCHANGE.RPC.COUNT.WARN} for {$MS.EXCHANGE.RPC.COUNT.TIME})'
|
|
priority: WARNING
|
|
description: 'Should be below 70 at all times.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
trigger_prototypes:
|
|
- uuid: 2eb26276a3a24ce4af517ff8740f4566
|
|
expression: 'avg(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.PASSIVE.WRITE.TIME})>avg(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.DB.PASSIVE.WRITE.TIME})'
|
|
name: 'Database Counters [{#INSTANCE}]: Average write time latency is higher than read time latency for {$MS.EXCHANGE.DB.PASSIVE.WRITE.TIME}'
|
|
priority: WARNING
|
|
description: 'Should be less than the read latency for the same instance, as measured by the MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency counter.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
graph_prototypes:
|
|
- uuid: d3de0d2651bf49bc856c3354437cea70
|
|
name: 'Database Counters [{#INSTANCE}]: Read and write stats'
|
|
graph_items:
|
|
- color: 199C0D
|
|
yaxisside: RIGHT
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Attached)/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '1'
|
|
color: F63100
|
|
yaxisside: RIGHT
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Attached)/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '2'
|
|
color: 00611C
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '3'
|
|
color: F7941D
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Reads (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '4'
|
|
color: FC6EA3
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Attached) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '5'
|
|
color: 6C59DC
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Database ==> Instances({#INF.STORE}/_Total)\I/O Database Writes (Recovery) Average Latency", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
preprocessing:
|
|
- type: JAVASCRIPT
|
|
parameters:
|
|
- |
|
|
var data = JSON.parse(value);
|
|
|
|
data.forEach(function(instance) {
|
|
if (instance["{#INSTANCE}"] === '_total') {
|
|
instance["{#INF.STORE}"] = 'Information Store';
|
|
}
|
|
else {
|
|
instance["{#INF.STORE}"] = 'Information Store - ' + instance["{#INSTANCE}"];
|
|
}
|
|
})
|
|
|
|
return JSON.stringify(data);
|
|
- uuid: 635f8c96cf544dcd97e4a58b2e9353de
|
|
name: 'LDAP discovery'
|
|
key: 'perf_instance_en.discovery["MSExchange ADAccess Domain Controllers"]'
|
|
delay: 1h
|
|
description: 'Discovery of domain controller.'
|
|
item_prototypes:
|
|
- uuid: b1c046c5aca04b85bf907f83c05b4142
|
|
name: 'Domain Controller [{#INSTANCE}]: Read time'
|
|
key: 'perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Read Time", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Time that it takes to send an LDAP read request to the domain controller in question and get a response. Should ideally be below 50 ms; spikes below 100 ms are acceptable.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: ldap
|
|
- tag: ldap
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 799366198fd04746bf265431c00269ab
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Read Time", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.LDAP.TIME})>{$MS.EXCHANGE.LDAP.WARN}'
|
|
name: 'Domain Controller [{#INSTANCE}]: LDAP read time is too high'
|
|
event_name: 'Domain Controller [{#INSTANCE}]: LDAP read time is too high (>{$MS.EXCHANGE.LDAP.WARN}s for {$MS.EXCHANGE.LDAP.TIME})'
|
|
priority: AVERAGE
|
|
description: 'Should be less than 50ms at all times, with spikes less than 100ms.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
- uuid: c7326e542e534afd9a1df9a8ec1226e4
|
|
name: 'Domain Controller [{#INSTANCE}]: Search time'
|
|
key: 'perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Search Time", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
units: s
|
|
description: 'Time that it takes to send an LDAP search request and get a response. Should ideally be below 50 ms; spikes below 100 ms are acceptable.'
|
|
preprocessing:
|
|
- type: MULTIPLIER
|
|
parameters:
|
|
- '0.001'
|
|
tags:
|
|
- tag: component
|
|
value: ldap
|
|
- tag: ldap
|
|
value: '{#INSTANCE}'
|
|
trigger_prototypes:
|
|
- uuid: 0db1b4e3f149481e8b04fe8b5eafa508
|
|
expression: 'min(/Microsoft Exchange Server 2016 by Zabbix agent/perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Search Time", {$MS.EXCHANGE.PERF.INTERVAL}],{$MS.EXCHANGE.LDAP.TIME})>{$MS.EXCHANGE.LDAP.WARN}'
|
|
name: 'Domain Controller [{#INSTANCE}]: LDAP search time is too high'
|
|
event_name: 'Domain Controller [{#INSTANCE}]: LDAP search time is too high (>{$MS.EXCHANGE.LDAP.WARN}s for {$MS.EXCHANGE.LDAP.TIME})'
|
|
priority: AVERAGE
|
|
description: 'Should be less than 50ms at all times, with spikes less than 100ms.'
|
|
tags:
|
|
- tag: scope
|
|
value: performance
|
|
graph_prototypes:
|
|
- uuid: 68caa8f72b21476f8f18695843c14328
|
|
name: 'Domain Controller [{#INSTANCE}]: Timings'
|
|
graph_items:
|
|
- color: 199C0D
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Read Time", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '1'
|
|
color: F63100
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange ADAccess Domain Controllers({#INSTANCE})\LDAP Search Time", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- uuid: 8a1cb7e22e55406e8e721a2189d7e00d
|
|
name: 'Web services discovery'
|
|
key: 'perf_instance_en.discovery["Web Service"]'
|
|
delay: 1h
|
|
description: 'Discovery of Exchange web services.'
|
|
item_prototypes:
|
|
- uuid: 3c3d1881bb294a31afa09605699a6965
|
|
name: 'Web Service [{#INSTANCE}]: Current connections'
|
|
key: 'perf_counter_en["\Web Service({#INSTANCE})\Current Connections", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
delay: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
history: 7d
|
|
value_type: FLOAT
|
|
description: 'Shows the current number of connections established to the each Web Service.'
|
|
tags:
|
|
- tag: component
|
|
value: web
|
|
- tag: web
|
|
value: '{#INSTANCE}'
|
|
tags:
|
|
- tag: class
|
|
value: application
|
|
- tag: target
|
|
value: ms-exchange
|
|
macros:
|
|
- macro: '{$MS.EXCHANGE.DB.ACTIVE.READ.TIME}'
|
|
value: 5m
|
|
description: 'The time during which the active database read operations latency may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.DB.ACTIVE.READ.WARN}'
|
|
value: '0.02'
|
|
description: 'Threshold for active database read operations latency trigger.'
|
|
- macro: '{$MS.EXCHANGE.DB.ACTIVE.WRITE.TIME}'
|
|
value: 10m
|
|
description: 'The time during which the active database write operations latency may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.DB.ACTIVE.WRITE.WARN}'
|
|
value: '0.05'
|
|
description: 'Threshold for active database write operations latency trigger.'
|
|
- macro: '{$MS.EXCHANGE.DB.FAULTS.TIME}'
|
|
value: 5m
|
|
description: 'The time during which the database page faults may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.DB.FAULTS.WARN}'
|
|
value: '0'
|
|
description: 'Threshold for database page faults trigger.'
|
|
- macro: '{$MS.EXCHANGE.DB.PASSIVE.READ.TIME}'
|
|
value: 5m
|
|
description: 'The time during which the passive database read operations latency may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.DB.PASSIVE.READ.WARN}'
|
|
value: '0.2'
|
|
description: 'Threshold for passive database read operations latency trigger.'
|
|
- macro: '{$MS.EXCHANGE.DB.PASSIVE.WRITE.TIME}'
|
|
value: 10m
|
|
description: 'The time during which the passive database write operations latency may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.LDAP.TIME}'
|
|
value: 5m
|
|
description: 'The time during which the LDAP metrics may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.LDAP.WARN}'
|
|
value: '0.05'
|
|
description: 'Threshold for LDAP triggers.'
|
|
- macro: '{$MS.EXCHANGE.LOG.STALLS.TIME}'
|
|
value: 10m
|
|
description: 'The time during which the log records stalled may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.LOG.STALLS.WARN}'
|
|
value: '100'
|
|
description: 'Threshold for log records stalled trigger.'
|
|
- macro: '{$MS.EXCHANGE.PERF.INTERVAL}'
|
|
value: '60'
|
|
description: 'Update interval for perf_counter_en items.'
|
|
- macro: '{$MS.EXCHANGE.RPC.COUNT.TIME}'
|
|
value: 5m
|
|
description: 'The time during which the RPC total requests may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.RPC.COUNT.WARN}'
|
|
value: '70'
|
|
description: 'Threshold for LDAP triggers.'
|
|
- macro: '{$MS.EXCHANGE.RPC.TIME}'
|
|
value: 10m
|
|
description: 'The time during which the RPC requests latency may exceed the threshold.'
|
|
- macro: '{$MS.EXCHANGE.RPC.WARN}'
|
|
value: '0.05'
|
|
description: 'Threshold for RPC requests latency trigger.'
|
|
valuemaps:
|
|
- uuid: 4a0e19e58ade4e8c878a6b87f4021416
|
|
name: 'Exchange database copy role'
|
|
mappings:
|
|
- value: '0'
|
|
newvalue: Passive
|
|
- value: '1'
|
|
newvalue: Active
|
|
- uuid: 2d131c4a033c4145a6bd66ec4c0c030a
|
|
name: 'Exchange database state'
|
|
mappings:
|
|
- value: '0'
|
|
newvalue: Dismounted
|
|
- value: '1'
|
|
newvalue: Mounted
|
|
- value: '2'
|
|
newvalue: Healthy
|
|
graphs:
|
|
- uuid: 47dd0ffded994286a6110082c1693433
|
|
name: 'MS Exchange [Client Access Server]: Request rate'
|
|
graph_items:
|
|
- color: 199C0D
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange ActiveSync\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '1'
|
|
color: F63100
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange Availability Service\Availability Requests (sec)", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '2'
|
|
color: 00611C
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchange OWA\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|
|
- sortorder: '3'
|
|
color: F7941D
|
|
item:
|
|
host: 'Microsoft Exchange Server 2016 by Zabbix agent'
|
|
key: 'perf_counter_en["\MSExchangeWS\Requests/sec", {$MS.EXCHANGE.PERF.INTERVAL}]'
|