+ update guide.rst
Adding help and sample for multiservice dyn-mode
This commit is contained in:
parent
4d2d01b0a6
commit
6ab8ccfda0
|
@ -1057,3 +1057,95 @@ The command result:
|
|||
$ perl centreon_plugins.pl --plugin=apps/protocols/modbus/plugin.pm --mode=numeric-value --tcp-host=10.0.0.1 --config=modbus.json --verbose
|
||||
OK: Metric 'avg' value is '3072.3' | 'avg'=3072.3con;;;;
|
||||
Metric 'avg' value is '3072.3'
|
||||
|
||||
--------------------
|
||||
Multi-service plugin
|
||||
--------------------
|
||||
|
||||
This mode allow you to concatenate several result of host and/or service check into one check. Can be used to make some aggregation into logical group or gather information from one Centreon to display in another without checking resources twice.
|
||||
|
||||
Design of configuration file
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
::
|
||||
|
||||
{
|
||||
"mode":"sqlmatching",
|
||||
"selection":{
|
||||
"ESX":{
|
||||
"host_name_filter":"%clus-esx-n%",
|
||||
"service_name_filter":"Esx-Status"
|
||||
},
|
||||
"XIVO":{
|
||||
"host_name_filter":"%xivo%",
|
||||
"service_name_filter":"Ping"
|
||||
}
|
||||
},
|
||||
"counters":{
|
||||
"totalservices":true,
|
||||
"totalhosts":true,
|
||||
"groups":true
|
||||
},
|
||||
"formatting":{
|
||||
"groups_global_msg":"Nothing special on groups",
|
||||
"host_service_separator":"/",
|
||||
"display_details":true
|
||||
}
|
||||
}
|
||||
|
||||
* mode (mandatory) : can be 'sqlmatching' or 'exactmatch'. Linked to the layout of "selection" bloc
|
||||
* selection (mandatory) : if we use sqlmatching, we define filters like above, if we use exact match, need to pass a key/value pair corresponding to host/service (example below with two "groups" esx-status/load)
|
||||
|
||||
::
|
||||
|
||||
"selection":{
|
||||
"esx-status":{
|
||||
"esx-n1":"Esx-Status",
|
||||
"esx-n2":"Esx-Status",
|
||||
"esx-n3":"Esx-Status"
|
||||
},
|
||||
"esx-load":{
|
||||
"esx-n1":"Esx-Memory",
|
||||
"esx-n2":"Esx-Memory",
|
||||
"esx-n3":"Esx-Memory",
|
||||
"esx-n1":"Esx-Cpu",
|
||||
"esx-n2":"Esx-Cpu",
|
||||
"esx-n3":"Esx-Cpu"
|
||||
}
|
||||
},
|
||||
|
||||
* counters (optionnal) : Contains three keys to choose which counters we should use and consider (totalservices, totalhosts, groups)
|
||||
* formatting (optionnal) : Contains three keys, 'groups_global_msg' to define a global OK status message, 'host_service_separator' to define separator used between host and service name in output, 'display_details' to config if plugin should display details of host/service name in the verbose output.
|
||||
|
||||
Command line, output, threshold ...
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Sample command :
|
||||
|
||||
::
|
||||
|
||||
/usr/lib/nagios/plugins/centreon_plugins.pl --plugin database::mysql::plugin --dyn-mode apps::centreon::sql::mode::multiservices --host localhost --username centreon --password c3ntreon --config-file '/root/global-services.json' --verbose
|
||||
|
||||
Sample output :
|
||||
|
||||
::
|
||||
|
||||
OK: Hosts state summary [up:4][down:2][unreachable:0] - Services state summary [ok:4][warning:0][critical:2][unknown:0] - Nothing special on groups |
|
||||
|
||||
Perfdatas :
|
||||
|
||||
::
|
||||
|
||||
'total_host_up'=4;;;0; 'total_host_down'=2;;;0; 'total_host_unreachable'=0;;;0; 'total_host_ok'=4;;;0; 'total_host_warning'=0;;;0; 'total_host_critical'=2;;;0; 'total_host_unknown'=0;;;0; 'host_up_ESX'=4;;;0; 'host_down_ESX'=0;;;0; 'host_unreachable_ESX'=0;;;0; 'service_ok_ESX'=4;;;0; 'service_warning_ESX'=0;;;0; 'service_critical_ESX'=0;;;0; 'service_unknown_ESX'=0;;;0; 'host_up_XIVO'=0;;;0; 'host_down_XIVO'=2;;;0; 'host_unreachable_XIVO'=0;;;0; 'service_ok_XIVO'=0;;;0; 'service_warning_XIVO'=0;;;0; 'service_critical_XIVO'=2;;;0; 'service_unknown_XIVO'=0;;;0;
|
||||
|
||||
Verbose mode (with display details set as true) :
|
||||
|
||||
::
|
||||
|
||||
Group 'ESX': HOSTS: [up: 4 (clus-esx-n1.com - clus-esx-n2.com - clus-esx-n3.com - clus-esx-n4.com)][down: 0][unreachable: 0] - SERVICES: [ok: 4 (clus-esx-n1.com/Esx-Status - clus-esx-n2.com/Esx-Status - clus-esx-n3.com/Esx-Status - clus-esx-n4.com/Esx-Status)][warning: 0][critical: 0][unknown: 0]
|
||||
Group 'XIVO': HOSTS: [up: 0][down: 2 (srvi-xivo-n1 - srvi-xivo-n2)][unreachable: 0] - SERVICES: [ok: 0][warning: 0][critical: 2 (srvi-xivo-n1/Ping - srvi-xivo-n2/Ping)][unknown: 0]
|
||||
|
||||
Concerning the threshold, you can use some example below :
|
||||
|
||||
::
|
||||
|
||||
--critical-total '%{total_down} > 4' --critical-groups '%{instance} eq 'ESX' && %{unknown} > 5'
|
||||
|
|
Loading…
Reference in New Issue