LibreNMS/check-services.php

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

93 lines
3.3 KiB
PHP
Raw Normal View History

#!/usr/bin/env php
<?php
/*
* LibreNMS module to poll Nagios Services
*
* Copyright (c) 2016 Aaron Daniels <aaron@daniels.id.au>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
Refactor Datastores to allow future improvements. OpenTSDB Tags. (#11283) * Datastores to object oriented code, using the Laravel IoC container Change instantiation better DI move OpenTSDB Small re-orgs remove unused stuff Fix graphs and other scripts Use DI for all except rrd fix up connection error handling Add tests, fix up a "few" things Add Config::forget() Style fixes Don't reference legacy code remove accidental code paste Add datastores phpunit groups some tests * rebase fixes * some test fixes * shorter tests * shorter tests * Don't except when rrdtool can't be started. * restore tests * fix rrd tests * fix iterable change upstream * fix isValidDataset * fix invalid data bug * fix mysql incorrect ds * fix issue with data that is too long * use regular data_update() * Use log facade * OpenTSDB mis-ordered arguments fix * Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores. * only filter tags for datastores that won't it don't modify the tags permanently * Update copyrights to include original authors. * Stats for all datastores * Fix mysql sends different rrd / other ds names * fix snmp last stats not initialized remove unused function * remove unused function and move single use function closer to its use * InfluxDB does not need to update null or U values. Skip write if all fields are empty * Fix smart value checks * fix style issues * Make sure port data is stored the same way as before for Graphite and OpenTSDB Add ifIndex tag to all to be compatible * Missed rrdtool_tune() call * Test update WIP * OpenTSDB now includes tags * fix style
2020-03-16 15:17:58 +01:00
use LibreNMS\Data\Store\Datastore;
use LibreNMS\Enum\Severity;
use LibreNMS\Util\Debug;
Refactor Datastores to allow future improvements. OpenTSDB Tags. (#11283) * Datastores to object oriented code, using the Laravel IoC container Change instantiation better DI move OpenTSDB Small re-orgs remove unused stuff Fix graphs and other scripts Use DI for all except rrd fix up connection error handling Add tests, fix up a "few" things Add Config::forget() Style fixes Don't reference legacy code remove accidental code paste Add datastores phpunit groups some tests * rebase fixes * some test fixes * shorter tests * shorter tests * Don't except when rrdtool can't be started. * restore tests * fix rrd tests * fix iterable change upstream * fix isValidDataset * fix invalid data bug * fix mysql incorrect ds * fix issue with data that is too long * use regular data_update() * Use log facade * OpenTSDB mis-ordered arguments fix * Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores. * only filter tags for datastores that won't it don't modify the tags permanently * Update copyrights to include original authors. * Stats for all datastores * Fix mysql sends different rrd / other ds names * fix snmp last stats not initialized remove unused function * remove unused function and move single use function closer to its use * InfluxDB does not need to update null or U values. Skip write if all fields are empty * Fix smart value checks * fix style issues * Make sure port data is stored the same way as before for Graphite and OpenTSDB Add ifIndex tag to all to be compatible * Missed rrdtool_tune() call * Test update WIP * OpenTSDB now includes tags * fix style
2020-03-16 15:17:58 +01:00
$init_modules = [];
require __DIR__ . '/includes/init.php';
Refactor Datastores to allow future improvements. OpenTSDB Tags. (#11283) * Datastores to object oriented code, using the Laravel IoC container Change instantiation better DI move OpenTSDB Small re-orgs remove unused stuff Fix graphs and other scripts Use DI for all except rrd fix up connection error handling Add tests, fix up a "few" things Add Config::forget() Style fixes Don't reference legacy code remove accidental code paste Add datastores phpunit groups some tests * rebase fixes * some test fixes * shorter tests * shorter tests * Don't except when rrdtool can't be started. * restore tests * fix rrd tests * fix iterable change upstream * fix isValidDataset * fix invalid data bug * fix mysql incorrect ds * fix issue with data that is too long * use regular data_update() * Use log facade * OpenTSDB mis-ordered arguments fix * Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores. * only filter tags for datastores that won't it don't modify the tags permanently * Update copyrights to include original authors. * Stats for all datastores * Fix mysql sends different rrd / other ds names * fix snmp last stats not initialized remove unused function * remove unused function and move single use function closer to its use * InfluxDB does not need to update null or U values. Skip write if all fields are empty * Fix smart value checks * fix style issues * Make sure port data is stored the same way as before for Graphite and OpenTSDB Add ifIndex tag to all to be compatible * Missed rrdtool_tune() call * Test update WIP * OpenTSDB now includes tags * fix style
2020-03-16 15:17:58 +01:00
$options = getopt('drfpgh:');
if (Debug::set(isset($options['d']))) {
echo "DEBUG!\n";
}
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
$poller_start = microtime(true);
Refactor Datastores to allow future improvements. OpenTSDB Tags. (#11283) * Datastores to object oriented code, using the Laravel IoC container Change instantiation better DI move OpenTSDB Small re-orgs remove unused stuff Fix graphs and other scripts Use DI for all except rrd fix up connection error handling Add tests, fix up a "few" things Add Config::forget() Style fixes Don't reference legacy code remove accidental code paste Add datastores phpunit groups some tests * rebase fixes * some test fixes * shorter tests * shorter tests * Don't except when rrdtool can't be started. * restore tests * fix rrd tests * fix iterable change upstream * fix isValidDataset * fix invalid data bug * fix mysql incorrect ds * fix issue with data that is too long * use regular data_update() * Use log facade * OpenTSDB mis-ordered arguments fix * Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores. * only filter tags for datastores that won't it don't modify the tags permanently * Update copyrights to include original authors. * Stats for all datastores * Fix mysql sends different rrd / other ds names * fix snmp last stats not initialized remove unused function * remove unused function and move single use function closer to its use * InfluxDB does not need to update null or U values. Skip write if all fields are empty * Fix smart value checks * fix style issues * Make sure port data is stored the same way as before for Graphite and OpenTSDB Add ifIndex tag to all to be compatible * Missed rrdtool_tune() call * Test update WIP * OpenTSDB now includes tags * fix style
2020-03-16 15:17:58 +01:00
$datastore = Datastore::init($options);
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
echo "Starting service polling run:\n\n";
$polled_services = 0;
$where = '';
$params = [];
if (isset($options['h'])) {
if (is_numeric($options['h'])) {
$where = 'AND `S`.`device_id` = ?';
$params[] = (int) $options['h'];
} else {
if (preg_match('/\*/', $options['h'])) {
$where = "AND `hostname` LIKE '?'";
$params[] = str_replace('*', '%', $options['h']);
} else {
$where = "AND `hostname` = '?'";
$params[] = $options['h'];
}
}
}
$sql = 'SELECT D.*,S.*,attrib_value FROM `devices` AS D'
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
. ' INNER JOIN `services` AS S ON S.device_id = D.device_id AND D.disabled = 0 ' . $where
. ' LEFT JOIN `devices_attribs` as A ON D.device_id = A.device_id AND A.attrib_type = "override_icmp_disable"'
. ' ORDER by D.device_id DESC;';
foreach (dbFetchRows($sql, $params) as $service) {
// Run the polling function if service is enabled and the associated device is up, "Disable ICMP Test" option is not enabled,
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
// or service hostname/ip is different from associated device
if (! $service['service_disabled'] && ($service['status'] == 1 || ($service['status'] == 0 && $service['status_reason'] === 'snmp') ||
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
$service['attrib_value'] === 'true' || ($service['service_ip'] !== $service['hostname'] &&
$service['service_ip'] !== inet6_ntop($service['ip'])))) {
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
poll_service($service);
$polled_services++;
} else {
if (! $service['service_disabled']) {
d_echo("\nService check - " . $service['service_id'] . "\nSkipping service check because device "
. $service['hostname'] . " is down due to icmp.\n");
\App\Models\Eventlog::log(
"Service check - {$service['service_desc']} ({$service['service_id']}) -
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
Skipping service check because device {$service['hostname']} is down due to icmp",
$service['device_id'],
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
'service',
Severity::Warning,
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
$service['service_id']
);
} else {
d_echo("\nService check - " . $service['service_id'] . "\nSkipping service check because device "
. $service['service_type'] . " is disabled.\n");
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
}
}
}
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
$poller_end = microtime(true);
$poller_run = ($poller_end - $poller_start);
$poller_time = substr($poller_run, 0, 5);
$string = $argv[0] . ' ' . date(\LibreNMS\Config::get('dateformat.compact'))
Poll service check only if the associated device is available (#8757) * Update check-services.php Poll service check only if the associated device is available. * Update check-services.php Updating line 68 based on laf suggestion. * Update check-services.php Also check the following before polling the service: * "Disable ICMP Test" is enabled * Service hostname/IP is different from associated device. * Update check-services.php Remove whitespaces. * Update check-services.php * Make check-services.php perform more similarly to services.wrapper.py - loop service checks per device and execute RunRules() function after polling all services for one device (like in poller.php). * Add more debugging information, similar to poller.php * Update check-services.php Implement logging to eventlog when service is skipped due to icmp down event. Event is logged only once during device down event, which is achieved by checking value in service_disabled column in services table. * Update check-services.php Fix Travis errors. * Update check-services.php Revert back to one query and one foreach loop code. Added inet6_ntop() for reading $service['ip'] value. Removed RunRules() function. * Update check-services.php Formatting fixes. * Update check-services.php More formatting fixes. :) * Update check-services.php Removed 'alerts' from init_module. * Update Services.md Update Services documentation with info about changes to service checks polling logic. * Update check-services.php Fix spelling check on `previosly`. * Update check-services.php Replace phrase "Nagios Service" with "Service check". * Update Services.md Reword first two sentences of `Service checks polling logic` section.
2018-07-25 09:38:52 +02:00
. " - $polled_services services polled in $poller_time secs";
d_echo("$string\n");
Refactor Datastores to allow future improvements. OpenTSDB Tags. (#11283) * Datastores to object oriented code, using the Laravel IoC container Change instantiation better DI move OpenTSDB Small re-orgs remove unused stuff Fix graphs and other scripts Use DI for all except rrd fix up connection error handling Add tests, fix up a "few" things Add Config::forget() Style fixes Don't reference legacy code remove accidental code paste Add datastores phpunit groups some tests * rebase fixes * some test fixes * shorter tests * shorter tests * Don't except when rrdtool can't be started. * restore tests * fix rrd tests * fix iterable change upstream * fix isValidDataset * fix invalid data bug * fix mysql incorrect ds * fix issue with data that is too long * use regular data_update() * Use log facade * OpenTSDB mis-ordered arguments fix * Making a singleton with different options makes different singletons. Just use the global config settings to disable datastores. * only filter tags for datastores that won't it don't modify the tags permanently * Update copyrights to include original authors. * Stats for all datastores * Fix mysql sends different rrd / other ds names * fix snmp last stats not initialized remove unused function * remove unused function and move single use function closer to its use * InfluxDB does not need to update null or U values. Skip write if all fields are empty * Fix smart value checks * fix style issues * Make sure port data is stored the same way as before for Graphite and OpenTSDB Add ifIndex tag to all to be compatible * Missed rrdtool_tune() call * Test update WIP * OpenTSDB now includes tags * fix style
2020-03-16 15:17:58 +01:00
Datastore::terminate();