Zabbix::API::Utils3pm
Overview
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 problematicmy $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.
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.