<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export><version>5.0</version><date>2021-11-21T21:33:23Z</date><groups><group><name>Templates</name></group></groups><templates><template><template>App Zookeeper</template><name>App Zookeeper</name><description>## Description

Zookeper Monitoring Need this userparameter in zabbix_agentd.conf: UserParameter=echo2nc[*],echo $1 | nc $2 $3

## Overview

System requirements
-------------------


* [zabbix](http://www.zabbix.com/downloads/) &gt;= 3.4 (preprocessing used by this template)
* [zookeeper](https://zookeeper.apache.org/releases.html) &gt;= 3.4 (mntr stats)
* netcat


Features
--------


* ruok check , mntr stats , graphs, screen


Zabbix Configuration
--------------------


UserParameter=echo2nc[*],echo $1 | nc $2 $3



## Author

Patrick Fouquet

</description><groups><group><name>Templates</name></group></groups><applications><application><name>Zookeeper</name></application></applications><items><item><name>zk - $1</name><type>ZABBIX_ACTIVE</type><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key><delay>5m</delay><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zookeeper</name></application></applications></item><item><name>zk - $1</name><type>ZABBIX_ACTIVE</type><key>echo2nc[ruok,{$ZOO_IP},{$ZOO_PORT}]</key><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zookeeper</name></application></applications><triggers><trigger><expression>{str(imok)}=0</expression><name>zk - Node is not OK</name><priority>HIGH</priority><description>{ITEM.VALUE}</description></trigger></triggers></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Alive Connections]</key><delay>0</delay><description>Number of connections to ZooKeeper that are currently alive.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_num_alive_connections\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item><triggers><trigger><expression>{last()}=0</expression><name>zk - Node have no alive connection</name><priority>AVERAGE</priority></trigger></triggers></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Approximate Data Size]</key><delay>0</delay><units>B</units><description>zk_approximate_data_size is the approximate memory consumption for all znodes stored in the ZooKeeper ensemble</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_approximate_data_size\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Ephemerals Count]</key><delay>0</delay><description>Number of ephemeral znodes.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_ephemerals_count\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Latency (avg)]</key><delay>0</delay><value_type>FLOAT</value_type><units>s</units><description>Average latency between ensemble hosts</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_avg_latency\s([0-9]+)
\1</params></step><step><type>MULTIPLIER</type><params>0.001</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Latency (max)]</key><delay>0</delay><value_type>FLOAT</value_type><units>s</units><description>Maximum latency</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_max_latency\s([0-9]+)
\1</params></step><step><type>MULTIPLIER</type><params>0.001</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Latency (min)]</key><delay>0</delay><value_type>FLOAT</value_type><units>s</units><description>Minimum latency</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_min_latency\s([0-9]+)
\1</params></step><step><type>MULTIPLIER</type><params>0.001</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Max File Descriptor Count]</key><delay>0</delay><description>Maximum number of file descriptors allowed for the ZooKeeper process.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_max_file_descriptor_count\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Open File Descriptor Count]</key><delay>0</delay><description>Number of file descriptors open by the ZooKeeper process.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_open_file_descriptor_count\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Outstanding requests]</key><delay>0</delay><description>Number of outstanding requests that need to be processed by the cluster.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_outstanding_requests\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Packets Received / second]</key><delay>0</delay><value_type>FLOAT</value_type><units>packet/s</units><description>Number of ZooKeeper network packets received by second</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_packets_received\s([0-9]+)
\1</params></step><step><type>CHANGE_PER_SECOND</type><params/></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Packets Sent / second]</key><delay>0</delay><value_type>FLOAT</value_type><units>packet/s</units><description>Number of ZooKeeper network packets sent by second</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_packets_sent\s([0-9]+)
\1</params></step><step><type>CHANGE_PER_SECOND</type><params/></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Server State]</key><delay>0</delay><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_server_state\s(.*)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item><triggers><trigger><expression>{diff()}=1</expression><name>zk - Node State change to {ITEM.VALUE}</name><priority>INFO</priority></trigger></triggers></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Version]</key><delay>0</delay><trends>0</trends><value_type>TEXT</value_type><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_version\s(.*)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Watch Count]</key><delay>0</delay><description>Number of watches currently set on the local ZooKeeper process.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_watch_count\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item><item><name>zk - $1</name><type>DEPENDENT</type><key>zookeeper[Znode Count]</key><delay>0</delay><description>zk_znode_count is the total count of znodes stored in the ZooKeeper ensemble. Every time a client creates a new znode, this counter will increment. Every time a client deletes a new znode (either explicitly or by dropping its ephemeral znodes after disconnection), this counter will decrement.</description><applications><application><name>Zookeeper</name></application></applications><preprocessing><step><type>REGEX</type><params>zk_znode_count\s([0-9]+)
\1</params></step></preprocessing><master_item><key>echo2nc[mntr,{$ZOO_IP},{$ZOO_PORT}]</key></master_item></item></items><macros><macro><macro>{$ZOO_IP}</macro><value>127.0.0.1</value></macro><macro><macro>{$ZOO_PORT}</macro><value>2181</value></macro></macros><screens><screen><name>Zookeeper</name><hsize>2</hsize><vsize>5</vsize><screen_items><screen_item><resourcetype>3</resourcetype><style>0</style><resource><key>zookeeper[Server State]</key><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>0</x><y>0</y><colspan>1</colspan><rowspan>1</rowspan><elements>1</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>3</resourcetype><style>0</style><resource><key>zookeeper[Version]</key><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>1</x><y>0</y><colspan>1</colspan><rowspan>1</rowspan><elements>1</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Latency</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>0</x><y>1</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Packets / second</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>1</x><y>1</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Actives Watches</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>0</x><y>2</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>File Descriptor Count</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>1</x><y>2</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Znodes</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>0</x><y>3</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Alive Connections</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>1</x><y>3</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item><screen_item><resourcetype>0</resourcetype><style>0</style><resource><name>Data Size</name><host>App Zookeeper</host></resource><width>500</width><height>100</height><x>0</x><y>4</y><colspan>1</colspan><rowspan>1</rowspan><elements>0</elements><valign>0</valign><halign>0</halign><dynamic>0</dynamic><sort_triggers>0</sort_triggers><url/><application/><max_columns>3</max_columns></screen_item></screen_items></screen></screens></template></templates><triggers><trigger><expression>({App Zookeeper:zookeeper[Open File Descriptor Count].last()}/{App Zookeeper:zookeeper[Max File Descriptor Count].last()})&gt;0.8</expression><name>zk - Open File Descriptor near the Max File Descriptor</name><priority>AVERAGE</priority><description>Open File Descriptor Count: {ITEM.VALUE1}&#13;
Max File Descriptor Count: {ITEM.VALUE2}</description></trigger></triggers><graphs><graph><name>Actives Watches</name><graph_items><graph_item><color>777777</color><item><host>App Zookeeper</host><key>zookeeper[Watch Count]</key></item></graph_item></graph_items></graph><graph><name>Alive Connections</name><graph_items><graph_item><drawtype>GRADIENT_LINE</drawtype><color>6666FF</color><calc_fnc>ALL</calc_fnc><item><host>App Zookeeper</host><key>zookeeper[Alive Connections]</key></item></graph_item></graph_items></graph><graph><name>Data Size</name><graph_items><graph_item><color>1A7C11</color><calc_fnc>ALL</calc_fnc><item><host>App Zookeeper</host><key>zookeeper[Approximate Data Size]</key></item></graph_item></graph_items></graph><graph><name>File Descriptor Count</name><ymax_type_1>ITEM</ymax_type_1><ymax_item_1><host>App Zookeeper</host><key>zookeeper[Max File Descriptor Count]</key></ymax_item_1><graph_items><graph_item><drawtype>FILLED_REGION</drawtype><color>1A7C11</color><item><host>App Zookeeper</host><key>zookeeper[Max File Descriptor Count]</key></item></graph_item><graph_item><sortorder>1</sortorder><drawtype>FILLED_REGION</drawtype><color>F63100</color><item><host>App Zookeeper</host><key>zookeeper[Open File Descriptor Count]</key></item></graph_item></graph_items></graph><graph><name>Latency</name><graph_items><graph_item><color>1A7C11</color><item><host>App Zookeeper</host><key>zookeeper[Latency (avg)]</key></item></graph_item><graph_item><sortorder>1</sortorder><drawtype>DASHED_LINE</drawtype><color>F63100</color><item><host>App Zookeeper</host><key>zookeeper[Latency (max)]</key></item></graph_item><graph_item><sortorder>2</sortorder><drawtype>DASHED_LINE</drawtype><color>2774A4</color><item><host>App Zookeeper</host><key>zookeeper[Latency (min)]</key></item></graph_item></graph_items></graph><graph><name>Packets / second</name><graph_items><graph_item><color>1A7C11</color><item><host>App Zookeeper</host><key>zookeeper[Packets Received / second]</key></item></graph_item><graph_item><sortorder>1</sortorder><color>F63100</color><item><host>App Zookeeper</host><key>zookeeper[Packets Sent / second]</key></item></graph_item></graph_items></graph><graph><name>Znodes</name><graph_items><graph_item><color>DD00DD</color><item><host>App Zookeeper</host><key>zookeeper[Znode Count]</key></item></graph_item></graph_items></graph></graphs></zabbix_export>
