<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export><version>5.0</version><date>2021-11-21T22:03:47Z</date><groups><group><name>Template</name></group></groups><templates><template><template>Storage XSKY XMS by HTTP</template><name>Storage XSKY XMS by HTTP</name><description>## Description

Template for XMS API

## Overview

The Zabbix Template includes discovery rules, item prototypes, trigger prototypes and graphs, Zabbix will periodically gather resource metrics from HTTP/HTTPS REST API, convert metrics into JSON object, automatically create resource metrics by discovery rules, and send triggers based on the trigger rules.

## Author

XSKY

</description><groups><group><name>Template</name></group></groups><applications><application><name>XMS Disk (Cache) Discovery</name></application><application><name>XMS Host Discovery</name></application><application><name>XMS Network Interfaces Discovery</name></application><application><name>XMS NFS-Gateways Discovery</name></application><application><name>XMS OS-Bucket Discovery</name></application><application><name>XMS OS-User Discovery</name></application><application><name>XMS OS-Zones Discovery</name></application><application><name>XMS OSD Discovery</name></application><application><name>XMS POOL Discovery</name></application><application><name>XMS S3 Load Balancer Discovery</name></application><application><name>XMS Services Discovery</name></application><application><name>XSKY XMS</name></application><application><name>Zabbix raw item</name></application></applications><items><item><name>XMS Cluster</name><type>HTTP_AGENT</type><key>xms.cluster.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.cluster</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/cluster/?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Cluster Stats</name><type>HTTP_AGENT</type><key>xms.cluster.stats.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.cluster_stats</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/cluster/stats?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Cluster  Os Bucket Num</name><type>DEPENDENT</type><key>xms.cluster.stats.os_bucket_num</key><delay>0</delay><applications><application><name>XSKY XMS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.os_bucket_num</params></step></preprocessing><master_item><key>xms.cluster.stats.get</key></master_item></item><item><name>XMS Cluster  Version</name><type>DEPENDENT</type><key>xms.cluster.version</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XSKY XMS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.version</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>21600</params></step></preprocessing><master_item><key>xms.cluster.get</key></master_item></item><item><name>XMS Cache Disks</name><type>HTTP_AGENT</type><key>xms.hosts.disk_cache.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.disks</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/disks/?is_cache=true&amp;is_silent=false&amp;limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Hosts</name><type>HTTP_AGENT</type><key>xms.hosts.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.hosts</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/hosts?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Network Interfaces</name><type>HTTP_AGENT</type><key>xms.hosts.network_interfaces.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.network_interfaces</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/network-interfaces?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OSDs</name><type>HTTP_AGENT</type><key>xms.hosts.osds.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.osds</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/osds?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Services</name><type>HTTP_AGENT</type><key>xms.hosts.services.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.services</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/services?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OS-Buckets</name><type>HTTP_AGENT</type><key>xms.os_buckets.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.os_buckets</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-buckets?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OS-NFS-Gateways</name><type>HTTP_AGENT</type><key>xms.os_nfs_gateways.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.nfs_gateways</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/nfs-gateways?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OS-S3_Load_Balancer</name><type>HTTP_AGENT</type><key>xms.os_s3_load_balancer.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.s3_load_balancers</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/s3-load-balancers?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OS-Users</name><type>HTTP_AGENT</type><key>xms.os_users.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.os_users</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-users?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS OS-Zones</name><type>HTTP_AGENT</type><key>xms.os_zone.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.os_zones</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-zones?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item><item><name>XMS Pools</name><type>HTTP_AGENT</type><key>xms.pools.get</key><history>0</history><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zabbix raw item</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.body.pools</params></step></preprocessing><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/pools?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><output_format>JSON</output_format></item></items><discovery_rules><discovery_rule><name>XMS OSD Discovery</name><type>HTTP_AGENT</type><key>xms.host.osds.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS OSD {#OSDID} IO Util</name><type>DEPENDENT</type><key>hosts.osds.io_util[{#OSDID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>%</units><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID})].samples[0].io_util.first()</params></step><step><type>MULTIPLIER</type><params>100</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={$XMS_OSDS_IO_UTIL.MAX.WARN}</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{$XMS_OSDS_IO_UTIL.MAX.WARN}</recovery_expression><name>Host {#HOSTNAME}  {#OSDNAME} IO Usage Is Greater Than {$XMS_OSDS_IO_UTIL.MAX.WARN}%</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS OSD {#OSDID} Name</name><type>DEPENDENT</type><key>hosts.osds.name[{#OSDID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID})].name.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item></item_prototype><item_prototype><name>XMS OSD {#OSDID} Total Byte</name><type>DEPENDENT</type><key>hosts.osds.samples.total_Byte.data[{#OSDID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID})].samples[0].total_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item></item_prototype><item_prototype><name>XMS OSD {#OSDID} Used Byte</name><type>DEPENDENT</type><key>hosts.osds.samples.used_Byte.data[{#OSDID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID} )].samples[0].used_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#OSD_TOTALKBYTE}*{$XMS_OSDS_USED_BYTE.MAX.DISASTER}/100*1024</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#OSD_TOTALKBYTE}*{$XMS_OSDS_USED_BYTE.MAX.DISASTER}/100*1024</recovery_expression><name>Host {#HOSTNAME} {#OSDNAME} Data Usage Is Greater Than {$XMS_OSDS_USED_BYTE.MAX.DISASTER}%</name><priority>DISASTER</priority><manual_close>YES</manual_close></trigger_prototype><trigger_prototype><expression>{last()}&gt;={#OSD_TOTALKBYTE}*{$XMS_OSDS_USED_BYTE.MAX.WARN}/100*1024</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#OSD_TOTALKBYTE}*{$XMS_OSDS_USED_BYTE.MAX.WARN}/100*1024</recovery_expression><name>Host {#HOSTNAME} {#OSDNAME} Data Usage Is Greater Than {$XMS_OSDS_USED_BYTE.MAX.WARN}%</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS OSD {#OSDID} Status</name><type>DEPENDENT</type><key>hosts.osds.status[{#OSDID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID})].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(error)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} {#OSDNAME} Status Is error</name><priority>DISASTER</priority><manual_close>YES</manual_close></trigger_prototype><trigger_prototype><expression>{str(stopped)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} {#OSDNAME} Status Is Stopped</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype><trigger_prototype><expression>{str(warning)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} {#OSDNAME} Status Is Warning</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS OSD {#OSDID} Type</name><type>DEPENDENT</type><key>hosts.osds.type[{#OSDID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OSD Discovery</name></application></applications><application_prototypes><application_prototype><name>OSD {#OSDID}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.osd_id == {#OSDID})].type.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.osds.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/osds?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#OSDID}</lld_macro><path>$.osd_id</path></lld_macro_path><lld_macro_path><lld_macro>{#OSDNAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#HOSTNAME}</lld_macro><path>$.host.name</path></lld_macro_path><lld_macro_path><lld_macro>{#OSD_TOTALKBYTE}</lld_macro><path>$.samples[0].total_kbyte</path></lld_macro_path><lld_macro_path><lld_macro>{#OSD_ROLE}</lld_macro><path>$.role</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.osds</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS Host Discovery</name><type>HTTP_AGENT</type><key>xms.hosts.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS Host {#HOSTNAME} Status</name><type>DEPENDENT</type><key>xms.hosts.status[{#HOSTID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS Host Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#HOSTID})].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(error)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} Status Is error</name><priority>DISASTER</priority></trigger_prototype><trigger_prototype><expression>{str(offline)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} Status Is offline</name><priority>DISASTER</priority></trigger_prototype><trigger_prototype><expression>{str(warning)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host {#HOSTNAME} Status Is warning</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/hosts?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#HOSTID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#HOSTNAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#HOSTSTATUS}</lld_macro><path>$.status</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.hosts</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS Disk (Cache) Discovery</name><type>HTTP_AGENT</type><key>xms.hosts.disk_cache.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS Host {#XMS_HOST_NAME} Disk {#XMS_HOST_DEVICE} Status</name><type>DEPENDENT</type><key>xms.host.disk.status[{#XMS_OSD_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS Disk (Cache) Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#XMS_HOST_NAME} Disk {#XMS_HOST_DEVICE}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OSD_ID} &amp;&amp; @.is_cache == '{#XMS_IS_CACHE}')].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.disk_cache.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(error)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Host  {#XMS_HOST_NAME} Cache Disk {#XMS_HOST_DEVICE} Status Is error</name><priority>DISASTER</priority></trigger_prototype></trigger_prototypes></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/disks/?is_cache=true&amp;is_silent=false&amp;limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_HOST_ID}</lld_macro><path>$.host.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_HOST_NAME}</lld_macro><path>$.host.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_IS_CACHE}</lld_macro><path>$.is_cache</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OSD_ID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_HOST_DEVICE}</lld_macro><path>$.device</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.disks</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS Network Interfaces Discovery</name><type>HTTP_AGENT</type><key>xms.hosts.network_interfaces.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME} Receive Bytes</name><type>DEPENDENT</type><key>host.network_interfaces.rx_bandwidth_kbyte[{#NETWORKID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS Network Interfaces Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#NETWORKTYPE}')].samples[0].rx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.hosts.network_interfaces.get</key></master_item></item_prototype><item_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME} Receive Packets</name><type>DEPENDENT</type><key>host.network_interfaces.rx_pps[{#NETWORKID}]</key><delay>0</delay><units>/s</units><applications><application><name>XMS Network Interfaces Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#NETWORKTYPE}')].samples[0].rx_pps.first()</params></step></preprocessing><master_item><key>xms.hosts.network_interfaces.get</key></master_item></item_prototype><item_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME} Status</name><type>DEPENDENT</type><key>host.network_interfaces.status[{#NETWORKID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS Network Interfaces Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#NETWORKTYPE}')].operstate.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.network_interfaces.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(down)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(up)}=1</recovery_expression><name>Host {#HOSTNAME} Network {#NETWORKNAME} is offline</name><priority>HIGH</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME} Transmit Bytes</name><type>DEPENDENT</type><key>host.network_interfaces.tx_bandwidth_kbyte[{#NETWORKID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS Network Interfaces Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#NETWORKTYPE}')].samples[0].tx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.hosts.network_interfaces.get</key></master_item></item_prototype><item_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME} Transmit Packets</name><type>DEPENDENT</type><key>host.network_interfaces.tx_pps[{#NETWORKID}]</key><delay>0</delay><units>/s</units><applications><application><name>XMS Network Interfaces Discovery</name></application></applications><application_prototypes><application_prototype><name>Host {#HOSTNAME} Network {#NETWORKNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#NETWORKTYPE}')].samples[0].tx_pps.first()</params></step></preprocessing><master_item><key>xms.hosts.network_interfaces.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/network-interfaces?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#HOSTID}</lld_macro><path>$.host.id</path></lld_macro_path><lld_macro_path><lld_macro>{#HOSTNAME}</lld_macro><path>$.host.name</path></lld_macro_path><lld_macro_path><lld_macro>{#NETWORKNAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#NETWORKID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#NETWORKTYPE}</lld_macro><path>$.type</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.network_interfaces</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS Services Discovery</name><type>HTTP_AGENT</type><key>xms.hosts.services.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS {#HOSTNAME} {#TYPE} Status</name><type>DEPENDENT</type><key>host.service.status[{#HOSTID}.{#TYPE}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS Services Discovery</name></application></applications><application_prototypes><application_prototype><name>Service {#HOSTNAME} {#TYPE}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#HOSTID}  &amp;&amp; @.type == '{#TYPE}' &amp;&amp; @.status == '{#STATUS}') ].up.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.hosts.services.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(false)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(true)}=1</recovery_expression><name>Service {#TYPE} of Host {#HOSTNAME} is offline</name><priority>HIGH</priority></trigger_prototype></trigger_prototypes></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/services?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#HOSTID}</lld_macro><path>$.host.id</path></lld_macro_path><lld_macro_path><lld_macro>{#TYPE}</lld_macro><path>$.type</path></lld_macro_path><lld_macro_path><lld_macro>{#HOSTNAME}</lld_macro><path>$.host.name</path></lld_macro_path><lld_macro_path><lld_macro>{#STATUS}</lld_macro><path>$.status</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.services</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS OS-Bucket Discovery</name><type>HTTP_AGENT</type><key>xms.os_buckets.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Versioned</name><type>DEPENDENT</type><key>xms.buckets.flag.versioned[{#XMS_BUCKET_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].flag.versioned.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Owner</name><type>DEPENDENT</type><key>xms.buckets.owner[{#XMS_BUCKET_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].owner.name.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Quota Max Objects</name><type>DEPENDENT</type><key>xms.buckets.quota_max_objects[{#XMS_BUCKET_ID}]</key><delay>0</delay><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].quota_max_objects.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Quota Max Size</name><type>DEPENDENT</type><key>xms.buckets.quota_max_size[{#XMS_BUCKET_ID}]</key><delay>0</delay><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].quota_max_size.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Allocated Objects</name><type>DEPENDENT</type><key>xms.buckets.samples.allocated_objects[{#XMS_BUCKET_ID}]</key><delay>0</delay><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].allocated_objects.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#XMS_BUCKET_QUOTA_MAX_OBJECTS}*{$XMS_BUCKET_ALLOCATED_OBJECTS.MAX.WARN}/100 and {#XMS_BUCKET_QUOTA_MAX_OBJECTS} &gt; 0</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#XMS_BUCKET_QUOTA_MAX_OBJECTS}*{$XMS_BUCKET_ALLOCATED_OBJECTS.MAX.WARN}/100 or {#XMS_BUCKET_QUOTA_MAX_OBJECTS} = 0</recovery_expression><name>Object Storage Bucket {#XMS_BUCKET_NAME} Allocated Objects Is Greater Than {$XMS_BUCKET_ALLOCATED_OBJECTS.MAX.WARN}%</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Allocated Size</name><type>DEPENDENT</type><key>xms.buckets.samples.allocated_size[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].allocated_size.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#XMS_BUCKET_QUOTA_MAX_SIZE}*{$XMS_BUCKET_ALLOCATED_SIZE.MAX.WARN}/100 and {#XMS_BUCKET_QUOTA_MAX_SIZE} &gt; 0</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#XMS_BUCKET_QUOTA_MAX_SIZE}*{$XMS_BUCKET_ALLOCATED_SIZE.MAX.WARN}/100 or {#XMS_BUCKET_QUOTA_MAX_SIZE} = 0</recovery_expression><name>Object Storage Bucket {#XMS_BUCKET_NAME} Allocated Size Is Greater Than {$XMS_BUCKET_ALLOCATED_SIZE.MAX.WARN}%</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Del Ops</name><type>DEPENDENT</type><key>xms.buckets.samples.del_ops_pm[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>/min</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].del_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Down Latency Us</name><type>DEPENDENT</type><key>xms.buckets.samples.down_latency_us[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].down_latency_us.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Latency Down</name><type>DEPENDENT</type><key>xms.buckets.samples.latency_down[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].latency_down.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Latency Up</name><type>DEPENDENT</type><key>xms.buckets.samples.latency_up[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].latency_up.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Rx Bandwidth Byte Rate</name><type>DEPENDENT</type><key>xms.buckets.samples.rx_bandwidth_kbyte[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>B/s</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].rx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Rx Ops</name><type>DEPENDENT</type><key>xms.buckets.samples.rx_ops_pm[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>/min</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].rx_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Total Rx Bytes</name><type>DEPENDENT</type><key>xms.buckets.samples.total_rx_bytes[{#XMS_BUCKET_ID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].total_rx_bytes.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Total Tx Bytes</name><type>DEPENDENT</type><key>xms.buckets.samples.total_tx_bytes[{#XMS_BUCKET_ID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].total_tx_bytes.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Tx Bandwidth Byte Rate</name><type>DEPENDENT</type><key>xms.buckets.samples.tx_bandwidth_kbyte[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>B/s</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID}  &amp;&amp; @.virtual =='false')].samples[0].tx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Tx Ops</name><type>DEPENDENT</type><key>xms.buckets.samples.tx_ops_pm[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>/min</units><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].tx_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Up Latency Us</name><type>DEPENDENT</type><key>xms.buckets.samples.up_latency_us[{#XMS_BUCKET_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].samples[0].up_latency_us.first()</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype><item_prototype><name>XMS Bucket {#XMS_BUCKET_NAME} Status</name><type>DEPENDENT</type><key>xms.buckets.status[{#XMS_BUCKET_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-Bucket Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Bucket {#XMS_BUCKET_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_BUCKET_ID} &amp;&amp; @.virtual =='false')].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_buckets.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-buckets?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_BUCKET_NAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_BUCKET_ID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_BUCKET_OWNER}</lld_macro><path>$.owner.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_BUCKET_QUOTA_MAX_OBJECTS}</lld_macro><path>$.quota_max_objects</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_BUCKET_QUOTA_MAX_SIZE}</lld_macro><path>$.quota_max_size</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.os_buckets</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS NFS-Gateways Discovery</name><type>HTTP_AGENT</type><key>xms.os_nfs_gateways.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Cpu Util Rate</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.cpu_util[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>%</units><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].cpu_util.first()</params></step><step><type>MULTIPLIER</type><params>100</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Down Bandwidth Byte</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.down_bandwidth_kbyte[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].down_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Down Latency Us</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.down_latency_us[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].down_latency_us.first()</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Down Ops</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.down_ops[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].down_ops.first()</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Mem Usage Util Rate</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.mem_usage_percent[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>%</units><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].mem_usage_percent.first()</params></step><step><type>MULTIPLIER</type><params>100</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Up Bandwidth Byte</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.up_bandwidth_kbyte[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].up_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Up Latency Us</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.up_latency_us[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].up_latency_us.first()</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype><item_prototype><name>XMS NFS Gateway {#XMS_NFS_GATEWAY_NAME} Up Ops</name><type>DEPENDENT</type><key>xms.nfs_gateway.samples.up_ops[{#XMS_NFS_GATEWAY_ID}]</key><delay>0</delay><applications><application><name>XMS NFS-Gateways Discovery</name></application></applications><application_prototypes><application_prototype><name>NFS Gateway {#XMS_NFS_GATEWAY_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.host.id == {#XMS_HOST_ID} &amp;&amp; @.name == '{#XMS_NFS_GATEWAY_NAME}')]..samples[0].up_ops.first()</params></step></preprocessing><master_item><key>xms.os_nfs_gateways.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/nfs-gateways?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_NFS_GATEWAY_ID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_NFS_GATEWAY_NAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_HOST_ID}</lld_macro><path>$.host.id</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.nfs_gateways</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS S3 Load Balancer Discovery</name><type>HTTP_AGENT</type><key>xms.os_s3_load_balancers.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS Load balancer {#XMS_S3_LOAD_BALANCER_NAME} Active Connections</name><type>DEPENDENT</type><key>xms.s3_load_balancer.samples.active_connections[{#XMS_S3_LOAD_BALANCER_ID}]</key><delay>0</delay><applications><application><name>XMS S3 Load Balancer Discovery</name></application></applications><application_prototypes><application_prototype><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_S3_LOAD_BALANCER_ID})].samples[0].active_connections.first()</params></step></preprocessing><master_item><key>xms.os_s3_load_balancer.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={$XMS_S3_LOAD_BALANCER_ACTIVE_CONNECTIONS.WARN}</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{$XMS_S3_LOAD_BALANCER_ACTIVE_CONNECTIONS.WARN}</recovery_expression><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME} Active Connections Are Greater Than {$XMS_S3_LOAD_BALANCER_ACTIVE_CONNECTIONS.WARN}</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Load balancer {#XMS_S3_LOAD_BALANCER_NAME} CPU Util</name><type>DEPENDENT</type><key>xms.s3_load_balancer.samples.cpu_util[{#XMS_S3_LOAD_BALANCER_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>%</units><applications><application><name>XMS S3 Load Balancer Discovery</name></application></applications><application_prototypes><application_prototype><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_S3_LOAD_BALANCER_ID})].samples[0].cpu_util.first()</params></step><step><type>MULTIPLIER</type><params>100</params></step></preprocessing><master_item><key>xms.os_s3_load_balancer.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={$XMS_S3_LOAD_BALANCER_CPU_UTIL.WARN}</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{$XMS_S3_LOAD_BALANCER_CPU_UTIL.WARN}</recovery_expression><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME} CPU Usage is Greater Than {$XMS_S3_LOAD_BALANCER_CPU_UTIL.WARN}%</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Load balancer {#XMS_S3_LOAD_BALANCER_NAME} Mem Usage Util</name><type>DEPENDENT</type><key>xms.s3_load_balancer.samples.mem_usage_percent[{#XMS_S3_LOAD_BALANCER_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>%</units><applications><application><name>XMS S3 Load Balancer Discovery</name></application></applications><application_prototypes><application_prototype><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_S3_LOAD_BALANCER_ID})].samples[0].mem_usage_percent.first()</params></step><step><type>MULTIPLIER</type><params>100</params></step></preprocessing><master_item><key>xms.os_s3_load_balancer.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={$XMS_S3_LOAD_BALANCER_MEM_USAGE_PERCENT.WARN}</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{$XMS_S3_LOAD_BALANCER_MEM_USAGE_PERCENT.WARN}</recovery_expression><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME} Memory Usage is Greater Than {$XMS_S3_LOAD_BALANCER_MEM_USAGE_PERCENT.WARN}%</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Load balancer {#XMS_S3_LOAD_BALANCER_NAME} Status</name><type>DEPENDENT</type><key>xms.s3_load_balancer.status[{#XMS_S3_LOAD_BALANCER_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS S3 Load Balancer Discovery</name></application></applications><application_prototypes><application_prototype><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_S3_LOAD_BALANCER_ID})].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_s3_load_balancer.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(error)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>S3 Load Balancer {#XMS_S3_LOAD_BALANCER_NAME} Status Is Error</name><priority>DISASTER</priority></trigger_prototype></trigger_prototypes></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/s3-load-balancers?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_S3_LOAD_BALANCER_ID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_S3_LOAD_BALANCER_NAME}</lld_macro><path>$.name</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.s3_load_balancers</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS OS-User Discovery</name><type>HTTP_AGENT</type><key>xms.os_users.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Allocated Objects</name><type>DEPENDENT</type><key>xms.os_user.allocated_objects[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].allocated_objects.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#XMS_OS_USER_USER_QUOTA_MAX_OBJECTS}*{$XMS_OS_USER_ALLOCATED_OBJECTS.MAX.WARN}/100 and {#XMS_OS_USER_USER_QUOTA_MAX_OBJECTS} &gt; 0</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#XMS_OS_USER_USER_QUOTA_MAX_OBJECTS}*{$XMS_OS_USER_ALLOCATED_OBJECTS.MAX.WARN}/100 or {#XMS_OS_USER_USER_QUOTA_MAX_OBJECTS} = 0</recovery_expression><name>Object Storage User {#XMS_OS_USER_NAME} Allocated Objects Is Greater Than {$XMS_OS_USER_ALLOCATED_OBJECTS.MAX.WARN}%</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Allocated Size</name><type>DEPENDENT</type><key>xms.os_user.allocated_size[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].allocated_size.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#XMS_OS_USER_USER_QUOTA_MAX_SIZE}*{$XMS_OS_USER_ALLOCATED_SIZE.MAX.WARN}/100 and {#XMS_OS_USER_USER_QUOTA_MAX_SIZE} &gt; 0</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#XMS_OS_USER_USER_QUOTA_MAX_SIZE}*{$XMS_OS_USER_ALLOCATED_SIZE.MAX.WARN}/100 or {#XMS_OS_USER_USER_QUOTA_MAX_SIZE} = 0</recovery_expression><name>Object Storage User {#XMS_OS_USER_NAME} Allocated Size Is Greater Than {$XMS_OS_USER_ALLOCATED_SIZE.MAX.WARN}%</name><priority>WARNING</priority><manual_close>YES</manual_close></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Bucket Num</name><type>DEPENDENT</type><key>xms.os_user.bucket_num[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].bucket_num.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Bucket Quota Max Objects</name><type>DEPENDENT</type><key>xms.os_user.bucket_quota_max_objects[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].bucket_quota_max_objects.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Bucket Quota Max Size</name><type>DEPENDENT</type><key>xms.os_user.bucket_quota_max_size[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].bucket_quota_max_size.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Max Buckets</name><type>DEPENDENT</type><key>xms.os_user.max_buckets[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].max_buckets.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Del Ops</name><type>DEPENDENT</type><key>xms.os_user.samples.del_ops_pm[{#XMS_OS_USER_ID}]</key><delay>0</delay><units>/min</units><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].del_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Rx Bandwidth Byte Rate</name><type>DEPENDENT</type><key>xms.os_user.samples.rx_bandwidth_kbyte[{#XMS_OS_USER_ID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].rx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Rx Ops</name><type>DEPENDENT</type><key>xms.os_user.samples.rx_ops_pm[{#XMS_OS_USER_ID}]</key><delay>0</delay><units>/min</units><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].rx_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Tx_Bandwidth_Byte Rate</name><type>DEPENDENT</type><key>xms.os_user.samples.tx_bandwidth_kbyte[{#XMS_OS_USER_ID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].tx_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Tx Ops</name><type>DEPENDENT</type><key>xms.os_user.samples.tx_ops_pm[{#XMS_OS_USER_ID}]</key><delay>0</delay><units>/min</units><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].samples[0].tx_ops_pm.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} Status</name><type>DEPENDENT</type><key>xms.os_user.status[{#XMS_OS_USER_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} User Quota Max Objects</name><type>DEPENDENT</type><key>xms.os_user.user_quota_max_objects[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].user_quota_max_objects.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype><item_prototype><name>XMS OS-User {#XMS_OS_USER_NAME} User Quota Max Size</name><type>DEPENDENT</type><key>xms.os_user.user_quota_max_size[{#XMS_OS_USER_ID}]</key><delay>0</delay><applications><application><name>XMS OS-User Discovery</name></application></applications><application_prototypes><application_prototype><name>OS User {#XMS_OS_USER_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_USER_ID})].user_quota_max_size.first()</params></step></preprocessing><master_item><key>xms.os_users.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-users?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_OS_USER_ID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_USER_NAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_USER_ALLOCATED_OBJECTS}</lld_macro><path>$.samples[0].allocated_objects</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_USER_ALLOCATED_SIZE}</lld_macro><path>$.samples[0].allocated_size</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_USER_USER_QUOTA_MAX_OBJECTS}</lld_macro><path>$.user_quota_max_objects</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_USER_USER_QUOTA_MAX_SIZE}</lld_macro><path>$.user_quota_max_size</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.os_users</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS OS-Zones Discovery</name><type>HTTP_AGENT</type><key>xms.os_zones.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Alias</name><type>DEPENDENT</type><key>xms.os_zones.alias[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].alias.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Connect Status</name><type>DEPENDENT</type><key>xms.os_zones.connected[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].connected.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Objects OPS</name><type>DEPENDENT</type><key>xms.os_zones.samples.objects_pm[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].samples[0].objects_pm.first()</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Object Bytes Ps</name><type>DEPENDENT</type><key>xms.os_zones.samples.object_kbytes_ps[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].samples[0].object_kbytes_ps.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Total Objects</name><type>DEPENDENT</type><key>xms.os_zones.samples.total_objects[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].samples[0].total_objects.first()</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype><item_prototype><name>XMS OS-Zones {#XMS_OS_ZONE_NAME} Total Object Capacity</name><type>DEPENDENT</type><key>xms.os_zones.samples.total_object_bytes[{#XMS_OS_ZONE_ID}]</key><delay>0</delay><value_type>FLOAT</value_type><units>B</units><applications><application><name>XMS OS-Zones Discovery</name></application></applications><application_prototypes><application_prototype><name>OS Zones {#XMS_OS_ZONE_NAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#XMS_OS_ZONE_ID})].samples[0].total_object_bytes.first()</params></step></preprocessing><master_item><key>xms.os_zone.get</key></master_item></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/os-zones?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#XMS_OS_ZONE_ALIAS}</lld_macro><path>$.alias</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_ZONE_NAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#XMS_OS_ZONE_ID}</lld_macro><path>$.id</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.os_zones</params></step></preprocessing></discovery_rule><discovery_rule><name>XMS POOL Discovery</name><type>HTTP_AGENT</type><key>xms.pools.discovery</key><delay>1h</delay><item_prototypes><item_prototype><name>XMS Pool {#POOLNAME} Actual Capacity</name><type>DEPENDENT</type><key>xms.pool.samples.actual_kbyte[{#POOLID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].actual_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Data Capacity</name><type>DEPENDENT</type><key>xms.pool.samples.data_kbyte[{#POOLID}]</key><delay>0</delay><units>B</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].data_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{last()}&gt;={#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.DISASTER}/100*1024</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.DISASTER}/100*1024</recovery_expression><name>Pool {#POOLNAME} Capacity Usage Is Greater Than {$XMS_POOL_DATA_KBYTE.MAX.DISASTER}%</name><priority>DISASTER</priority></trigger_prototype><trigger_prototype><expression>{last()}&gt;={#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.HIGH}/100*1024</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.HIGH}/100*1024</recovery_expression><name>Pool {#POOLNAME}  Capacity Usage Is Greater Than {$XMS_POOL_DATA_KBYTE.MAX.HIGH}%</name><priority>HIGH</priority></trigger_prototype><trigger_prototype><expression>{last()}&gt;={#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.WARN}/100*1024</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{last()}&lt;{#POOLSTATUS_ACTUAL_KBYTE}*{$XMS_POOL_DATA_KBYTE.MAX.WARN}/100*1024</recovery_expression><name>Pool {#POOLNAME} Capacity Usage Is Greater Than {$XMS_POOL_DATA_KBYTE.MAX.WARN}%</name><priority>WARNING</priority></trigger_prototype></trigger_prototypes></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Read Bandwidth</name><type>DEPENDENT</type><key>xms.pool.samples.read_bandwidth_kbyte[{#POOLID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].read_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Read Iops</name><type>DEPENDENT</type><key>xms.pool.samples.read_iops[{#POOLID}]</key><delay>0</delay><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].read_iops.first()</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Read Latency</name><type>DEPENDENT</type><key>xms.pool.samples.read_latency_us[{#POOLID}]</key><delay>0</delay><units>us</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].read_latency_us.first()</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Recovery Bandwidth</name><type>DEPENDENT</type><key>xms.pool.samples.recovery_bandwidth_kbyte[{#POOLID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].recovery_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Recovery Iops</name><type>DEPENDENT</type><key>xms.pool.samples.recovery_iops[{#POOLID}]</key><delay>0</delay><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].recovery_iops.first()</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Write Bandwidth</name><type>DEPENDENT</type><key>xms.pool.samples.write_bandwidth_kbyte[{#POOLID}]</key><delay>0</delay><units>B/s</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].write_bandwidth_kbyte.first()</params></step><step><type>MULTIPLIER</type><params>1024</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Write Iops</name><type>DEPENDENT</type><key>xms.pool.samples.write_iops[{#POOLID}]</key><delay>0</delay><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].write_iops.first()</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Write Latency</name><type>DEPENDENT</type><key>xms.pool.samples.write_latency_us[{#POOLID}]</key><delay>0</delay><units>us</units><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].samples[0].write_latency_us.first()</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item></item_prototype><item_prototype><name>XMS Pool {#POOLNAME} Status</name><type>DEPENDENT</type><key>xms.pool.status[{#POOLID}]</key><delay>0</delay><trends>0</trends><value_type>CHAR</value_type><applications><application><name>XMS POOL Discovery</name></application></applications><application_prototypes><application_prototype><name>Pool {#POOLNAME}</name></application_prototype></application_prototypes><preprocessing><step><type>JSONPATH</type><params>$.[?(@.id == {#POOLID})].status.first()</params></step><step><type>DISCARD_UNCHANGED_HEARTBEAT</type><params>6h</params></step></preprocessing><master_item><key>xms.pools.get</key></master_item><trigger_prototypes><trigger_prototype><expression>{str(degraded)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Pool {#POOLNAME} Status Is degraded</name><priority>WARNING</priority></trigger_prototype><trigger_prototype><expression>{str(error)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Pool {#POOLNAME} Status Is error</name><priority>DISASTER</priority></trigger_prototype><trigger_prototype><expression>{str(full)}=1</expression><recovery_mode>RECOVERY_EXPRESSION</recovery_mode><recovery_expression>{str(active)}=1</recovery_expression><name>Pool {#POOLNAME} Status Is full</name><priority>DISASTER</priority></trigger_prototype></trigger_prototypes></item_prototype></item_prototypes><url>http://{$XMS_API_IP}:{$XMS_API_PORT}/v1/pools?limit=1000</url><headers><header><name>Xms-Auth-Token</name><value>{$XMS_ACCESS_TOKEN}</value></header></headers><lld_macro_paths><lld_macro_path><lld_macro>{#POOLNAME}</lld_macro><path>$.name</path></lld_macro_path><lld_macro_path><lld_macro>{#POOLID}</lld_macro><path>$.id</path></lld_macro_path><lld_macro_path><lld_macro>{#POOLSTATUS}</lld_macro><path>$.status</path></lld_macro_path><lld_macro_path><lld_macro>{#POOLSTATUS_ACTUAL_KBYTE}</lld_macro><path>$.samples[0].actual_kbyte</path></lld_macro_path></lld_macro_paths><preprocessing><step><type>JSONPATH</type><params>$.pools</params></step></preprocessing></discovery_rule></discovery_rules><macros><macro><macro>{$XMS_ACCESS_TOKEN}</macro><value>d862495fc8304b738e537d9c121ce2a6</value><description>XMS Access Token</description></macro><macro><macro>{$XMS_API_IP}</macro><value>10.255.20.148</value><description>XMS API IP Address</description></macro><macro><macro>{$XMS_API_PORT}</macro><value>8051</value><description>XMS API Port</description></macro><macro><macro>{$XMS_BUCKET_ALLOCATED_OBJECTS.MAX.WARN}</macro><value>80</value><description>XMS Bucket Allocated Objects</description></macro><macro><macro>{$XMS_BUCKET_ALLOCATED_SIZE.MAX.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS Bucket Allocated Size</description></macro><macro><macro>{$XMS_OSDS_IO_UTIL.MAX.WARN}</macro><value>90</value><description>Max Warn Percentage of XMS OSDS IO Util</description></macro><macro><macro>{$XMS_OSDS_USED_BYTE.MAX.DISASTER}</macro><value>85</value><description>Max Disaster Percentage of XMS OSDS Used Byte</description></macro><macro><macro>{$XMS_OSDS_USED_BYTE.MAX.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS OSDS Used_Byte</description></macro><macro><macro>{$XMS_OS_USER_ALLOCATED_OBJECTS.MAX.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS OS User Allocated Objects</description></macro><macro><macro>{$XMS_OS_USER_ALLOCATED_SIZE.MAX.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS OS_User Allocated Size</description></macro><macro><macro>{$XMS_POOL_DATA_KBYTE.MAX.DISASTER}</macro><value>90</value><description>Max Disaster Percentage of XMS Pool Data kbyte</description></macro><macro><macro>{$XMS_POOL_DATA_KBYTE.MAX.HIGH}</macro><value>85</value><description>Max High Percentage of XMS Pool Data kbyte</description></macro><macro><macro>{$XMS_POOL_DATA_KBYTE.MAX.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS Pool Data kbyte</description></macro><macro><macro>{$XMS_S3_LOAD_BALANCER_ACTIVE_CONNECTIONS.WARN}</macro><value>1024</value><description>Max Warn Value of XMS S3 Load Balancer Active Connections</description></macro><macro><macro>{$XMS_S3_LOAD_BALANCER_CPU_UTIL.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS S3 Load Balancer CPU Util</description></macro><macro><macro>{$XMS_S3_LOAD_BALANCER_MEM_USAGE_PERCENT.WARN}</macro><value>80</value><description>Max Warn Percentage of XMS S3 Load Balancer MEM Usage</description></macro></macros></template></templates></zabbix_export>
