File: //lib64/nagios/plugins/check_backups.php
#!/usr/local/bin/php
<?php
$decoded = json_decode(shell_exec('sudo /usr/bin/jetbackup5api -F listAlerts -O json'), 1);
$critical = array_filter($decoded['data']['alerts'], function($level) {
return $level['level'] === 4;
});
if(empty($critical)) {
echo "No critical alerts." . PHP_EOL;
exit(0);
}
foreach ($critical as $c) {
if(preg_match("/\b(connecting|aborted|destination)\b/", $c['message'])) {
$response[] = $c;
}
}
if(!empty($response)) {
print_r(yaml_emit($response));
exit(2);
}
echo "No critical alerts.". PHP_EOL;
exit(0);