2020-05-27 17:46:43 +08:00
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
<version> 5.0</version>
2020-06-04 09:50:54 +08:00
<date> 2020-06-04T01:49:43Z</date>
2020-05-27 17:46:43 +08:00
<groups>
<group>
<name> Cheetah F1</name>
</group>
</groups>
<templates>
<template>
<template> Cheetah F1</template>
<name> Cheetah F1</name>
<groups>
<group>
<name> Cheetah F1</name>
</group>
</groups>
<items>
<item>
<name> Elapsed</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Elapsed</key>
<delay> 0</delay>
2020-05-27 17:50:30 +08:00
<history> 1d</history>
2020-05-27 17:46:43 +08:00
<trends> 0</trends>
<units> s</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[1]['Elapsed']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" stats" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Fan1</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Fan1</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 0</trends>
<units> RPM</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[0]['Fan0 rpm']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" stats" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Fan2</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Fan2</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 0</trends>
<units> RPM</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[0]['Fan0 rpm']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" stats" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Hashrate</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Hashrate</key>
<delay> 0</delay>
<history> 60d</history>
<trends> 60d</trends>
<units> TH/s</units>
<preprocessing>
<step>
<type> JSONPATH</type>
2020-06-04 09:50:54 +08:00
<params> $[0]['MHS 5s']</params>
2020-05-27 17:46:43 +08:00
</step>
<step>
<type> MULTIPLIER</type>
<params> 0.001</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" summary" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Temp1</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Temp1</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 1d</trends>
<units> C</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[0]['Temperature']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" devs" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Temp2</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Temp2</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 1d</trends>
<units> C</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[1]['Temperature']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" devs" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Temp3</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Temp3</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 1d</trends>
<units> C</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[2]['Temperature']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" devs" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> Temp4</name>
<type> DEPENDENT</type>
<key> AntMinerF1.Temp4</key>
<delay> 0</delay>
<history> 1d</history>
<trends> 1d</trends>
<units> C</units>
<preprocessing>
<step>
<type> JSONPATH</type>
<params> $[3]['Temperature']</params>
</step>
</preprocessing>
<master_item>
<key> Miner[" devs" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
</master_item>
</item>
<item>
<name> UP_DOwn</name>
<type> SIMPLE</type>
<key> icmpping</key>
<delay> 60s</delay>
<history> 60d</history>
<trends> 60d</trends>
<valuemap>
<name> Service state</name>
</valuemap>
</item>
<item>
<name> AntMinerGetAlldevs</name>
<type> EXTERNAL</type>
<key> Miner[" devs" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
<delay> 300s</delay>
<history> 0</history>
<trends> 0</trends>
<value_type> TEXT</value_type>
</item>
<item>
<name> AntMinerGetAllpool</name>
<type> EXTERNAL</type>
<key> Miner[" pools" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
<delay> 300s</delay>
<history> 0</history>
<trends> 0</trends>
<value_type> TEXT</value_type>
</item>
<item>
<name> AntMinerGetAllstats</name>
<type> EXTERNAL</type>
<key> Miner[" stats" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
<delay> 300s</delay>
<history> 0</history>
<trends> 0</trends>
<value_type> TEXT</value_type>
</item>
<item>
<name> AntMinerGetAllsummary</name>
<type> EXTERNAL</type>
<key> Miner[" summary" , " {HOST.CONN}" , " {$HOST.PORT}" ]</key>
<delay> 300s</delay>
<history> 0</history>
<trends> 0</trends>
<value_type> TEXT</value_type>
</item>
<item>
<name> Asic</name>
<type> SIMPLE</type>
<key> net.tcp.service[tcp,,4028]</key>
<delay> 60s</delay>
<history> 60d</history>
<trends> 60d</trends>
<valuemap>
<name> Service state</name>
</valuemap>
</item>
</items>
<macros>
<macro>
<macro> {$FAN_LOW}</macro>
<value> 500</value>
</macro>
<macro>
<macro> {$HASH_LOW}</macro>
2020-05-30 20:53:36 +08:00
<value> 19000</value>
2020-05-27 17:46:43 +08:00
</macro>
<macro>
<macro> {$HOST.PORT}</macro>
<value> 4028</value>
</macro>
<macro>
<macro> {$TEMP_LOW}</macro>
<value> 90</value>
</macro>
</macros>
</template>
</templates>
<triggers>
<trigger>
<expression> {Cheetah F1:AntMinerF1.Hashrate.nodata(15m)}=1 and {Cheetah F1:icmpping.last()}=1</expression>
<name> AntMiner F1 Hashrate information not available on {HOST.NAME}</name>
2020-05-27 18:07:29 +08:00
<priority> HIGH</priority>
2020-05-27 17:46:43 +08:00
<manual_close> YES</manual_close>
</trigger>
<trigger>
<expression> ({Cheetah F1:AntMinerF1.Temp1.min(15m)}> {$TEMP_LOW} or {Cheetah F1:AntMinerF1.Temp2.min(15m)}> {$TEMP_LOW} or {Cheetah F1:AntMinerF1.Temp3.min(15m)}> {$TEMP_LOW} or {Cheetah F1:AntMinerF1.Temp4.min(15m)}> {$TEMP_LOW}) and {Cheetah F1:icmpping.last()}=1</expression>
<recovery_mode> RECOVERY_EXPRESSION</recovery_mode>
<recovery_expression> ({Cheetah F1:AntMinerF1.Temp1.last()}< {$TEMP_LOW} or {Cheetah F1:AntMinerF1.Temp2.last()}< {$TEMP_LOW} or {Cheetah F1:AntMinerF1.Temp3.last()}< {$TEMP_LOW}) and {Cheetah F1:icmpping.last()}=1</recovery_expression>
<name> AntMiner F1 High temp on {HOST.NAME}</name>
<priority> AVERAGE</priority>
<manual_close> YES</manual_close>
</trigger>
<trigger>
<expression> {Cheetah F1:icmpping.last(5m)}=0 and {Cheetah F1:net.tcp.service[tcp,,4028].last(5m)}=0</expression>
<recovery_mode> RECOVERY_EXPRESSION</recovery_mode>
<recovery_expression> {Cheetah F1:icmpping.last()}=1 or {Cheetah F1:net.tcp.service[tcp,,4028].last()}=1</recovery_expression>
<name> AntMiner F1 Host DOWN {HOST.NAME}</name>
<priority> DISASTER</priority>
<manual_close> YES</manual_close>
</trigger>
<trigger>
<expression> ({Cheetah F1:AntMinerF1.Fan1.last(10m)}< {$FAN_LOW} or {Cheetah F1:AntMinerF1.Fan2.last(10m)}< {$FAN_LOW}) and {Cheetah F1:icmpping.last()}=1</expression>
<name> AntMiner F1 low fan speed {HOST.NAME}</name>
<manual_close> YES</manual_close>
</trigger>
<trigger>
<expression> ({Cheetah F1:AntMinerF1.Hashrate.last(#3)}< {$HASH_LOW} and {Cheetah F1:AntMinerF1.Elapsed.last()}> 600) and {Cheetah F1:icmpping.last()}=1</expression>
<recovery_mode> RECOVERY_EXPRESSION</recovery_mode>
<recovery_expression> {Cheetah F1:AntMinerF1.Hashrate.last(#3)}> {$HASH_LOW}</recovery_expression>
<name> AntMiner F1 Low hashrate on {HOST.NAME}</name>
<priority> WARNING</priority>
<manual_close> YES</manual_close>
</trigger>
</triggers>
<value_maps>
<value_map>
<name> Service state</name>
<mappings>
<mapping>
<value> 0</value>
<newvalue> Down</newvalue>
</mapping>
<mapping>
<value> 1</value>
<newvalue> Up</newvalue>
</mapping>
</mappings>
</value_map>
</value_maps>
</zabbix_export>