NAME¶
Zabbix::Utils -- Useful miscellanea related to Zabbix
DESCRIPTION¶
This is a collection of miscellaneous things useful to have in the event that
you're doing something with the Zabbix::API distribution.
FUNCTIONS¶
None so far.
EXPORTS¶
None by default.
EXPORTABLE¶
- RE_FORMULA
- This constant (in the "use constant" sense) is a regular
expression that will match against parts of formulas of calculated items
thusly:
use Zabbix::Utils qw/RE_FORMULA/;
# interpolating constants is problematic
my $regexp = RE_FORMULA;
my $formula = 'last("MyROuter2:ifHCInOctets5")+last("MyROuter2:ifHCInOctets23")';
while ($formula =~ m/$regexp/g) {
print Dumper(\%+);
}
Which should output:
$VAR1 = {
'function_call' => 'last("MyROuter2:ifHCInOctets5")',
'function_args_quote' => '"',
'item' => 'ifHCInOctets5',
'function_args' => 'MyROuter2:ifHCInOctets5',
'host' => 'MyROuter2'
};
$VAR1 = {
'function_call' => 'last("MyROuter2:ifHCInOctets23")',
'function_args_quote' => '"',
'item' => 'ifHCInOctets23',
'function_args' => 'MyROuter2:ifHCInOctets23',
'host' => 'MyROuter2'
};
Item arguments (system.uptime [minutes]) appear in
"item_arg" which is not represented here (fixme!).
You'll have noticed that this makes use of the excellent "named capture
buffers" feature, which means you need Perl 5.10 or higher.
SEE ALSO¶
Zabbix::API, the Zabbix API documentation at
<
http://www.zabbix.com/documentation/start>.
AUTHOR¶
Fabrice Gabolde <fabrice.gabolde@uperto.com>
COPYRIGHT AND LICENSE¶
Copyright (C) 2011 SFR
This library is free software; you can redistribute it and/or modify it under
the terms of the GPLv3.