Zabbix Documentation 2.2

2.23.03.23.4In development:4.0Unsupported versions:1.82.02.4

User Tools

Site Tools


manual:appendix:triggers:functions

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:appendix:triggers:functions [2015/10/26 10:22]
richlv clarify that band() accepts and returns decimals, add a couple of examples
manual:appendix:triggers:functions [2017/09/13 08:10] (current)
sasha removed double quotes in the function parameters to increase readability
Line 6: Line 6:
 ^ ^  **Description** ​ ^  **Parameters** ​ ^  **Comments** ​ ^ ^ ^  **Description** ​ ^  **Parameters** ​ ^  **Comments** ​ ^
 |**abschange** ​ ^^^^ |**abschange** ​ ^^^^
-^ |The amount of absolute difference between last and previous values. ​ |  |Supported value types: float, int, str, text, log\\ \\ For example:\\ (previous value/last value=abschange)\\ 1/5=4\\ 3/1=2\\ 0/-2.5=2.5\\ \\ For strings returns:\\ 0 - values are equal\\ 1 - values differ ​ |+^ |The amount of absolute difference between last and previous values. ​ |  |Supported value types: float, int, str, text, log\\ \\ For example:\\ (previous value;last value=abschange)\\ 1;5=4\\ 3;1=2\\ 0;-2.5=2.5\\ \\ For strings returns:\\ 0 - values are equal\\ 1 - values differ ​ |
 ^ |||| ^ ||||
 |**avg** (sec<​nowiki>​|</​nowiki>#​num,<​time_shift>​) ​ ^^^^ |**avg** (sec<​nowiki>​|</​nowiki>#​num,<​time_shift>​) ​ ^^^^
Line 15: Line 15:
 ^ |||| ^ ||||
 |**change** ​ ^^^^ |**change** ​ ^^^^
-^ |The amount of difference between last and previous values. ​ |  |Supported value types: float, int, str, text, log\\ \\ For example:\\ (previous value/last value=change)\\ 1/5=+4\\ 3/1=-2\\ 0/-2.5=-2.5\\ \\ For strings returns:\\ 0 - values are equal\\ 1 - values differ ​ |+^ |The amount of difference between last and previous values. ​ |  |Supported value types: float, int, str, text, log\\ \\ For example:\\ (previous value;last value=change)\\ 1;5=+4\\ 3;1=-2\\ 0;-2.5=-2.5\\ \\ For strings returns:\\ 0 - values are equal\\ 1 - values differ ​ |
 ^ |||| ^ ||||
 |**count** (sec<​nowiki>​|</​nowiki>#​num,<​pattern>,<​operator>,<​time_shift>​) ​ ^^^^ |**count** (sec<​nowiki>​|</​nowiki>#​num,<​pattern>,<​operator>,<​time_shift>​) ​ ^^^^
-^ |Number of values within the defined evaluation period. ​ |**sec** or **#num** - evaluation period in seconds or in latest collected values (preceded by a hash mark)\\ **pattern** (optional) - required pattern ​(integer items - exact match; float items - match within 0.000001)\\ **operator** (optional)\\ \\ Supported ''​operators'':​\\ //eq// - equal\\ //ne// - not equal\\ //gt// - greater\\ //ge// - greater or equal\\ //lt// - less\\ //le// - less or equal\\ //like// - matches if contains pattern (case-sensitive)\\ //band// - bitwise AND (supported since Zabbix 2.2.0).\\ \\ Note that:\\ //eq// (default), //ne//, //gt//, //ge//, //lt//, //le//, //band// are supported for integer items\\ //eq// (default), //ne//, //gt//, //ge//, //lt//, //le// are supported for float items\\ //like// (default), //eq//, //ne// are supported for string, text and log items\\ \\ **time_shift** (optional) - see avg()  |Supported value types: float, ​intstr, text, log\\ \\ With //band// as third parameter, the second parameter can be specified as two numbers, separated by  '/':​ **number_to_compare_with/​mask**. count() calculates "​bitwise AND" from the value and the //mask// and compares the result to //​number_to_compare_with//​. If the result of "​bitwise AND" is equal to //​number_to_compare_with//,​ the value is counted.\\ If //​number_to_compare_with//​ and //mask// are equal, only the //mask// need be specified (without '/'​).\\ \\ Examples:\\ => count(600) -> number of values for last 10 minutes\\ => count(600,​12) -> number of values for last 10 minutes that equal '​12'​\\ => %%count(600,​12,​"gt")%% -> number of values for last 10 minutes that are over '​12'​\\ => %%count(#​10,​12,​"gt")%% -> number of values within last 10 values that are over '​12'​\\ => %%count(600,​12,​"gt",86400)%% -> number of values for preceding 10 minutes up to 24 hours ago that were over '​12'​\\ => %%count(600,​6/​7,​"band")%% -> number of values for last 10 minutes having '​110'​ (in binary) in the 3 least significant bits.\\ => count(600,,,​86400) -> number of values for preceding 10 minutes up to 24 hours ago\\ \\ The ''#​num''​ parameter is supported since Zabbix 1.6.1.\\ The ''​time_shift''​ parameter and string operators are supported since Zabbix 1.8.2. ​ |+^ |Number of values within the defined evaluation period. ​ |**sec** or **#num** - evaluation period in seconds or in latest collected values (preceded by a hash mark)\\ **pattern** (optional) - required pattern\\ \\ **operator** (optional)\\ \\ Supported ''​operators'':​\\ //eq// - equal\\ //ne// - not equal\\ //gt// - greater\\ //ge// - greater or equal\\ //lt// - less\\ //le// - less or equal\\ //like// - matches if contains pattern (case-sensitive)\\ //band// - bitwise AND (supported since Zabbix 2.2.0).\\ \\ Note that:\\ //eq// (default), //ne//, //gt//, //ge//, //lt//, //le//, //band// are supported for integer items\\ //eq// (default), //ne//, //gt//, //ge//, //lt//, //le// are supported for float items\\ //like// (default), //eq//, //ne// are supported for string, text and log items\\ \\ **time_shift** (optional) - see avg()  |Supported value types: float, ​integerstring, text, log\\ Float items match with the precision of 0.000001.\\ \\ With //band// as third parameter, the second parameter can be specified as two numbers, separated by  '/':​ **number_to_compare_with/​mask**. count() calculates "​bitwise AND" from the value and the //mask// and compares the result to //​number_to_compare_with//​. If the result of "​bitwise AND" is equal to //​number_to_compare_with//,​ the value is counted.\\ If //​number_to_compare_with//​ and //mask// are equal, only the //mask// need be specified (without '/'​).\\ \\ Examples:\\ => count(600) -> number of values for last 10 minutes\\ => %%count(10m,"​error",​eq)%% -> number of values for last 10 minutes that equal '​error'​\\ => count(600,​12) -> number of values for last 10 minutes that equal '​12'​\\ => %%count(600,​12,​gt)%% -> number of values for last 10 minutes that are over '​12'​\\ => %%count(#​10,​12,​gt)%% -> number of values within last 10 values that are over '​12'​\\ => %%count(600,​12,​gt,​86400)%% -> number of values for preceding 10 minutes up to 24 hours ago that were over '​12'​\\ => %%count(600,​6/​7,​band)%% -> number of values for last 10 minutes having '​110'​ (in binary) in the 3 least significant bits.\\ => count(600,,,​86400) -> number of values for preceding 10 minutes up to 24 hours ago\\ \\ The ''#​num''​ parameter is supported since Zabbix 1.6.1.\\ The ''​time_shift''​ parameter and string operators are supported since Zabbix 1.8.2. ​ |
 ^ |||| ^ ||||
 |**date** ​ ^^^^ |**date** ​ ^^^^
Line 36: Line 36:
 ^ |||| ^ ||||
 |**fuzzytime** (sec) ^^^^ |**fuzzytime** (sec) ^^^^
-^ |Checking ​if system local time is in sync with Zabbix server time.  |**sec** - seconds ​ |Supported value types: float, int\\ \\ Returns ​'​1' ​if the timestamp from item value does not differ from Zabbix server ​time for more than N seconds, 0 - otherwise. Usually used with system.localtime to check that local time is in sync with local time of Zabbix server. ​ |+^ |Checking ​how much an item timestamp value differs from the Zabbix server time.  |**sec** - seconds ​ |Supported value types: float, int\\ \\ Returns:\\ 0 - if difference between ​item timestamp ​value and Zabbix server ​timestamp is over T seconds\\ 1 - otherwise.\\ \\ Usually used with system.localtime to check that local time is in sync with local time of Zabbix server.\\ Can be used also with vfs.file.time[/​path/​file,​modify] key to check that file didn't get updates for long time.\\ \\ Example:\\ => fuzzytime(60)=0 -> detect a problem if time difference is over 60 seconds ​ |
 ^ |||| ^ ||||
 |**iregexp** (pattern,<​sec<​nowiki>​|</​nowiki>#​num>​) ​ ^^^^ |**iregexp** (pattern,<​sec<​nowiki>​|</​nowiki>#​num>​) ​ ^^^^
Line 60: Line 60:
 ^ |||| ^ ||||
 |**nodata** (sec)  ^^^^ |**nodata** (sec)  ^^^^
-^ |Checking for no data received. ​ |**sec** - evaluation period in seconds. The period should not be less than 30 seconds. ​ |Supported value types: //any//\\ \\ Returns:\\ 1 - if no data received during the defined period of time\\ 0 - otherwise\\ \\ Note that this function will display an error if, within the period of the 1st parameter:​\\ - there'​s no data and Zabbix server was restarted\\ - there'​s no data and maintenance was completed\\ - there'​s no data and the item was added or re-enabled ​ |+^ |Checking for no data received. ​ |**sec** - evaluation period in seconds. The period should not be less than 30 seconds. ​ |Supported value types: //any//\\ \\ Returns:\\ 1 - if no data received during the defined period of time\\ 0 - otherwise\\ \\ Note that this function will display an error if, within the period of the 1st parameter:​\\ - there'​s no data and Zabbix server was restarted\\ - there'​s no data and maintenance was completed\\ - there'​s no data and the item was added or re-enabled\\ Errors are displayed in the //Info// column in trigger [[:​manual/​web_interface/​frontend_sections/​configuration/​hosts/​triggers|configuration]]. ​ |
 ^ |||| ^ ||||
 |**now** ​ ^^^^ |**now** ​ ^^^^