9 More Discussions You Might Find Interesting
1. AIX
Hello All,
I am new to Nagios. I have a requirement to monitor AIX 7.1 using Nagios xi, could any one guide me steps to go in right direction.
I know Nagios doesn't have precompiled agent and plugin for aix 7.1.
Appreciate your help (2 Replies)
Discussion started by: bsivavani
2 Replies
2. Infrastructure Monitoring
Im new to monitoring so i was testing few monitoring tools and I've had this problem with nagios, i downloaded the Nagios XI VM and im using virtualbox to run it and when i reach the GRUB i get this Error 16 : inconsistent file system structure, i have tried troubleshooting the problem but i... (1 Reply)
Discussion started by: HashB
1 Replies
3. Red Hat
hye,
I) so am using nagios through centreon. i now understand were perl plugins should be written "in libexec" but my question is , i just create a file via VI write the script in it , and use it through centreon interface?
II) lets say i would like to add a drop down menu to this webpage... (0 Replies)
Discussion started by: waelkd
0 Replies
4. Infrastructure Monitoring
Hi all, me again....
I am trying to add a website to my nagios checking juggernaught
I am using the script from nagios exchange site called check_website_response (google to find it i am not allowed to post links yet, sorry)
It is in /usr/local/nagios/libexec with the rest of the default... (1 Reply)
Discussion started by: Yoshi17
1 Replies
5. Infrastructure Monitoring
Hi Folks,
I have Nagios 3.0.6 which is monitoring 400+ servers in my environment and is administered by multiple administrators. I want to get notified if somebody enable or disable any notification of any of the hosts/services from GUI. Is it possible to configure?
If so, how? (0 Replies)
Discussion started by: SiddhV
0 Replies
6. Linux
Hello All,
We have added a windows host and its config files to Nagios master server and wanted to do a ping check alone at the moment however, the nagios master server identifies the host in its GUI and immediately disappears can anyone let me know the right approach to this one, We want to... (2 Replies)
Discussion started by: lovesaikrishna
2 Replies
7. Infrastructure Monitoring
Nagios is a free, open source enterprise-class network and server monitoring system that can benefit your IT infrastructure. Bill Bradford describes how to install and set up Nagios on a Solaris 10 system. For this example Bill uses Solaris 10 update 6 running in 32-bit mode on a VMware virtual... (0 Replies)
Discussion started by: Linux Bot
0 Replies
8. UNIX and Linux Applications
Hi all, i have install nagios on my Linux Centos 5 server and i want to install the agent on unit server to monitor it. I can monitor a linux and windows servers but still looking for a article on how to intall nagios on Unix server.
Thanx in advance (2 Replies)
Discussion started by: Tulz
2 Replies
9. Cybersecurity
hye all..
I like to know if anyone here can justify and make wise recommendation to me, whether to choose MRTG or NAGIOS as network Monitoring Performance.
If can, is there any website that provide comparison for both of them?
Ur help are highly appreciated..
Regards,
~unknown (1 Reply)
Discussion started by: unknown2205
1 Replies
Nagios::StatusLog(3pm) User Contributed Perl Documentation Nagios::StatusLog(3pm)
NAME
Nagios::StatusLog, Nagios::(Service|Host|Program)::Status - Perl objects to represent the Nagios status file
DESCRIPTION
Reads the Nagios status log and returns ::Status objects that can be used to get status information about a host. For Nagios version 2.x
logs, pass in the Version => 2.0 parameter to new(). And similarly, pass in the Version => 3.0 parameter to new() for Nagios version 3.x
logs.
my $log = Nagios::StatusLog->new(
Filename => "/var/opt/nagios/status.log",
Version => 1.0
);
$localhost = $log->host( "localhost" );
print "status of localhost is now ",$localhost->status(),"
";
$log->update();
print "status of localhost is now ",$localhost->status(),"
";
# for Nagios v2.0
my $log = Nagios::StatusLog->new(
Filename => "/var/cache/nagios2/status.dat",
Version => 2.0
);
# for Nagios v3.0
my $log = Nagios::StatusLog->new(
Filename => "/var/cache/nagios3/status.dat",
Version => 3.0
);
METHODS
new()
Create a new Nagios::StatusLog instance. The object will be initialized for you (using $self->update()).
Nagios::StatusLog->new( "/var/opt/nagios/status.log" );
update()
Updates the internal data structures from the logfile.
$log->update();
service()
Returns a Nagios::Service::Status object. Input arguments can be a host_name and description list, or a Nagios::Service object.
my $svc_stat = $log->service( "localhost", "SSH" );
my $svc_stat = $log->service( $localhost_ssh_svc_object );
Nagios::Service::Status has the following accessor methods (For V1):
host_name
description
status
current_attempt
state_type
last_check next_check
check_type
checks_enabled
accept_passive_service_checks
event_handler_enabled
last_state_change
problem_has_been_acknowledged
last_hard_state
time_ok
current_notification_number
time_warning
time_critical
process_performance_data
notifications_enabled
latency
scheduled_downtime_depth
is_flapping
plugin_output
percent_state_change
execution_time
time_unknown
failure_prediction_enabled
last_notification
obsess_over_service
flap_detection_enabled
list_services()
Returns an array of all service descriptions in the status log. Services that may be listed on more than one host are only listed once
here.
my @all_services = $log->list_services;
list_services_on_host()
Returns an array of services descriptions for a given host.
my @host_services = $log->list_services_on_host($hostname);
my @host_services = $log->list_services_on_host($nagios_object);
host()
Returns a Nagios::Host::Status object. Input can be a simple host_name, a Nagios::Host object, or a Nagios::Service object.
my $hst_stat = $log->host( 'localhost' );
my $hst_stat = $log->host( $host_object );
my $hst_stat = $log->host( $svc_object );
Nagios::Host::Status has the following accessor methods (for V1):
host_name
status
last_check
last_state_change
problem_has_been_acknowledged
time_up
time_down
time_unreachable
last_notification
current_notification_number
notifications_enabled
event_handler_enabled
checks_enabled
flap_detection_enabled
is_flapping
percent_state_change
scheduled_downtime_depth
failure_prediction_enabled
process_performance_data
plugin_output
list_hosts()
Returns a simple array of host names (no objects).
my @hosts = $log->list_hosts;
info() [Nagios v2 & v3 logs only]
Returns a Nagios::Info::Status object. It only has two methods, created() and version().
my $i = $log->info;
printf "Logfile created at %s unix epoch time for Nagios verion %s
",
$i->created,
$i->version;
contact() [Nagios v3 logs only]
Returns a Nagios::Contact::Status object. Input can be a simple contact_name, or a Nagios::Contact object.
my $c = $log->contact( 'john' );
my $c = $log->contact( $contact_object );
Nagios::Contact::Status has the following accessor methods (for v3):
contact_name
modified_attributes
modified_host_attributes
modified_service_attributes
host_notification_period
service_notification_period
last_host_notification
last_service_notification
host_notifications_enabled
service_notifications_enabled
hostcomment() [Nagios v3 logs only]
Returns a Nagios::Hostcomment::Status object. Input can be a simple host_name, or a Nagios::Host or Nagios::Service object.
my $c = $log->hostcomment( 'localhost' );
my $c = $log->hostcomment( $localhost_object );
my $c = $log->hostcomment( $localhost_service_object );
foreach my $id (sort keys %$c) {
printf "Host %s has a comment[$id] made by %s on %s: %s",
$c->{$id}->host_name, $c->{$id}->author, scalar localtime $c->{$id}->entry_time, $c->{$id}->comment_data;
}
Nagios::Hostcomment::Status is a perl HASH, keyed with the Nagios comment IDs, where each ID has the following accessor methods (for
v3):
host_name
entry_type
comment_id
source
persistent
entry_time
expires
expire_time
author
comment_data
servicecomment() [Nagios v3 logs only]
Returns a Nagios::Servicecomment::Status object. Input can be a simple host_name or Nagios::Host object with a service description or
Nagios::Service object, or just a Nagios::Service object by itself.
my $c = $log->servicecomment( 'localhost', 'SSH' );
my $c = $log->servicecomment( $localhost_object, $localhost_ssh_svc_object );
my $c = $log->servicecomment( $localhost_ssh_svc_object );
foreach my $id (sort keys %$c) {
printf "Service %s on %s has a comment[$id] made by %s on %s: %s",
$c->{$id}->service_description, $c->{$id}->host_name, $c->{$id}->author, scalar localtime $c->{$id}->entry_time, $c->{$id}->comment_data;
}
Nagios::Servicecomment::Status is a perl HASH, keyed with the Nagios comment IDs, where each ID has the following accessor methods (for
v3):
host_name
service_description
entry_type
comment_id
source
persistent
entry_time
expires
expire_time
author
comment_data
hostdowntime() [Nagios v3 logs only]
Returns a Nagios::Hostdowntime::Status object. Input can be a simple host_name, or a Nagios::Host or Nagios::Service object.
my $d = $log->hostdowntime( 'localhost' );
my $d = $log->hostdowntime( $localhost_object );
my $d = $log->hostdowntime( $localhost_service_object );
foreach my $id (sort keys %$d) {
printf "Host %s has scheduled downtime[$id] made by %s on %s for %.1f hours [%s - %s]: %s",
$d->{$id}->host_name, $d->{$id}->author, scalar localtime $d->{$id}->entry_time, ($d->{$id}->duration)/3600.0,
scalar localtime $d->{$id}->start_time, scalar localtime $d->{$id}->end_time, $d->{$id}->comment;
}
Nagios::Hostdowntime::Status is a perl HASH, keyed with the Nagios downtime IDs, where each ID has the following accessor methods (for
v3):
host_name
downtime_id
entry_time
start_time
end_time
triggered_by
fixed
duration
author
comment
servicedowntime() [Nagios v3 logs only]
Returns a Nagios::Servicedowntime::Status object. Input can be a simple host_name or Nagios::Host object with a service description or
Nagios::Service object, or just a Nagios::Service object by itself.
my $c = $log->servicedowntime( 'localhost', 'SSH' );
my $c = $log->servicedowntime( $localhost_object, $localhost_ssh_svc_object );
my $c = $log->servicedowntime( $localhost_ssh_svc_object );
foreach my $id (sort keys %$d) {
printf "Service %s on %s has scheduled downtime[$id] made by %s on %s for %.1f hours [%s - %s]: %s",
$d->{$id}->service_description, $d->{$id}->host_name, $d->{$id}->author, scalar localtime $d->{$id}->entry_time, ($d->{$id}->duration)/3600.0,
scalar localtime $d->{$id}->start_time, scalar localtime $d->{$id}->end_time, $d->{$id}->comment;
}
Nagios::Servicedowntime::Status is a perl HASH, keyed with the Nagios downtime IDs, where each ID has the following accessor methods
(for v3):
host_name
service_description
downtime_id
entry_time
start_time
end_time
triggered_by
fixed
duration
author
comment
program()
Returns a Nagios::Program::Status object. No arguments.
my $prog_st = $log->program;
Nagios::Program::Status has the following accessor methods (For V1):
program_start
nagios_pid
daemon_mode
last_command_check
last_log_rotation
enable_notifications
execute_service_checks
accept_passive_service_checks
enable_event_handlers
obsess_over_services
enable_flap_detection
enable_failure_prediction
process_performance_data
STRUCTURE
This module contains 4 packages: Nagios::StatusLog, Nagios::Host::Status, Nagios::Service::Status, and Nagios::Program::Status. The latter
3 of them are mostly generated at compile-time in the BEGIN block. The accessor methods are real subroutines, not AUTOLOAD, so making a
ton of calls to this module should be fairly quick. Also, update() is set up to only do what it says - updating from a fresh logfile
should not invalidate your existing ::Status objects.
AUTHOR
Al Tobey <tobeya@tobert.org>
SEE ALSO
Nagios::Host Nagios::Service
perl v5.12.4 2011-10-22 Nagios::StatusLog(3pm)