Alfresco monitoring for Nagios via NRPE protocol
Last day we talked about monitoring
Alfresco in Nagios via OOTB support tools addon using curl
commands directly to the main webscripts, and parsing the obtained
JSON information. Although this direct monitoring may be valid in many
situations (if services available from monitoring server, if https..),
other possibility is to run curl commands locally from Alfresco server
and to obtain the information via NRPE protocol. This is the
recommended use in case of JMX information via check_jmx plugin,
For using NRPE in Nagios, you must install nagios plugins and
nagios-nrpe-server in your Alfresco Server, defining commands im NRPE
configuration file:
$ sudo aptitude install nagios-plugins nagios-nrpe-server
/etc/nagios/nrpe.cfg
command[check_alf_active_sessions]=/usr/lib/nagios/plugins/check_ootb_active_sessions.sh 'localhost' '8080' 'monitor' 'secret' 'NumActive' '15' '20' command[check_alf_logged_users]=/usr/lib/nagios/plugins/check_ootb_active_sessions.sh 'localhost' '8080' 'monitor' 'secret' 'UserCountNonExpired' '15' '20' command[check_alf_number_tickets]=/usr/lib/nagios/plugins/check_ootb_active_sessions.sh 'localhost' '8080' 'monitor' 'secret' 'TicketCountNonExpired' '15' '20' command[check_alf_jvm_usedmemory]=/usr/lib/nagios/plugins/check_ootb_performance_stats.sh 'localhost' '8080' 'monitor' 'secret' 'UsedMemory' '3500' '4000' command[check_alf_jvm_threads]=/usr/lib/nagios/plugins/check_ootb_performance_stats.sh 'localhost' '8080' 'monitor' 'secret' 'ThreadCount' '190' '195' command[check_alf_process_load]=/usr/lib/nagios/plugins/check_ootb_performance_stats.sh 'localhost' '8080' 'monitor' 'secret' 'ProcessLoad' '75' '85' command[check_alf_system_load]=/usr/lib/nagios/plugins/check_ootb_performance_stats.sh 'localhost' '8080' 'monitor' 'secret' 'SystemLoad' '85' '90'
and setting the corresponding allowed hosts (for your monitoring
server). Finally, in your Nagios Server configuration you should use check_nrpe_1arg:
services_nrpe_ootb.cfg
define service { use generic-service host_name alf5 service_description [OOTB] Number of active database connections check_command check_nrpe_1arg!check_alf_active_sessions } define service { use generic-service host_name alf5 service_description [OOTB] Number of logged users check_command check_nrpe_1arg!check_alf_logged_users } define service { use generic-service host_name alf5 service_description [OOTB] Number of tickets check_command check_nrpe_1arg!check_alf_number_tickets } define service { use generic-service host_name alf5 service_description [OOTB] JVM Used Memory check_command check_nrpe_1arg!check_alf_jvm_usedmemory } define service { use generic-service host_name alf5 service_description [OOTB] Number of Threads check_command check_nrpe_1arg!check_alf_jvm_threads } define service { use generic-service host_name alf5 service_description [OOTB] Process Load check_command check_nrpe_1arg!check_alf_process_load } define service { use generic-service host_name alf5 service_description [OOTB] System Load check_command check_nrpe_1arg!check_alf_system_load }