Page 3 of 6

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 4:12 pm
by imran_khan
Hello,

Thanks for the reply. Please reply to my additional query.

Thanks,
Imran Khan.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 4:44 pm
by Box293
imran_khan wrote:Where should I make below changes, means in which file. Please give me file name with full path. I have tried in many files but no luck.
As per your nagios.cfg file you are using the following config files:

Code: Select all

cfg_file=/usr/local/nagios/etc/objects/Linux-Team/linux-hosts.cfg
cfg_file=/usr/local/nagios/etc/objects/Linux-Team/linux-services.cfg
In the linux-hosts.cfg file you will need to add to each host definition:

Code: Select all

use                     host-pnp
In the linux-services.cfg file you will need to add to each service definition:

Code: Select all

use                     srv-pnp
You would need to repeat this for each type (Corp-Team, Routers-Switches etc etc).

Also, as per your nagis.cfg file:

Code: Select all

host_perfdata_file_processing_command=process-host-perfdata-file
service_perfdata_file_processing_command=process-service-perfdata-file
There should be definitions in your /usr/local/nagios/etc/objects/Defination/commands.cfg as follows:

Code: Select all

define command{
       command_name    process-service-perfdata-file
       command_line    /bin/mv /usr/local/pnp4nagios/var/service-perfdata /usr/local/pnp4nagios/var/spool/service-perfdata.$TIMET$
}

define command{
       command_name    process-host-perfdata-file
       command_line    /bin/mv /usr/local/pnp4nagios/var/host-perfdata /usr/local/pnp4nagios/var/spool/host-perfdata.$TIMET$
}

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 5:03 pm
by imran_khan
Hello,

I have tried mentioned setting many times and getting below error very time when verified nagios configuration using /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg command. Please suggest me on the same.

Reading configuration data...
Read main config file okay...
Error: Template 'host-pnp' specified in host definition could not be not found (config file '/usr/local/nagios/etc/objects/Linux-Team/linux-hosts.cfg', starting on line
28)
Error processing object config files!

Also command.cfg definition is as below.

define command {
command_name process-service-perfdata-file
command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/service-perfdata
}

define command {
command_name process-host-perfdata-file
command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/host-perfdata
}

Thanks,
Imran Khan.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 5:35 pm
by Box293
Can you please show us a host definition from '/usr/local/nagios/etc/objects/Linux-Team/linux-hosts.cfg' that has the line "use host-pnp".

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 5:49 pm
by imran_khan
Hello,

Please find the host definition details.

# example.com' host definition
define host{
use generic-host,host-pnp ; Name of host template to use
host_name example.com
alias example.com
address Server_IP
address Server_IP
check_command check-host-alive
max_check_attempts 10
notification_interval 10
notification_period 24x7
notification_options d,u,r
hostgroups ABCD,PQRST
notes_url /nagios/info/windows.html
contact_groups linuxteam
}

Thanks,
Imran Khan.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 5:58 pm
by Box293
imran_khan wrote:I have put the below content in /usr/local/nagios/etc/objects/Defination/templates.cfg file.

define host {
name host-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
register 0
}

define service {
name srv-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
register 0
}
Your nagios.cfg file does not have a reference to /usr/local/nagios/etc/objects/Defination/templates.cfg

Add the following to nagios.cfg

Code: Select all

cfg_file=/usr/local/nagios/etc/objects/Defination/templates.cfg
And then run this to validate your configuration:

Code: Select all

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
If all is good restart Nagios.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 6:20 pm
by imran_khan
Hello,

Added mentioned template path in nagios configuration file. now getting below error.

Reading configuration data...
Read main config file okay...
Warning: Duplicate definition found for host 'generic-host' (config file '/usr/local/nagios/etc/objects/Defination/templates.cfg', starting on line 52)
Error: Could not add object property in file '/usr/local/nagios/etc/objects/Defination/templates.cfg' on line 53.
Error processing object config files!


Thanks,
Imran Khan.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 6:49 pm
by Box293
Please post the contents of config file '/usr/local/nagios/etc/objects/Defination/templates.cfg'

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 6:59 pm
by imran_khan
Hello,

Please find the content of /usr/local/nagios/etc/objects/Defination/templates.cfg file.

Code: Select all


###############################################################################
###############################################################################
#
# CONTACT TEMPLATES
#
###############################################################################
###############################################################################

# Generic contact definition template - This is NOT a real contact, just a template!

define contact{
        name                            generic-contact    	; The name of this contact template
        service_notification_period     24x7			; service notifications can be sent anytime
        host_notification_period        24x7			; host notifications can be sent anytime
        service_notification_options    w,u,c,r,f,s		; send notifications for all service states, flapping events, and scheduled downtime events
        host_notification_options       d,u,r,f,s		; send notifications for all host states, flapping events, and scheduled downtime events
        service_notification_commands   notify-service-by-email	; send service notifications via email
        host_notification_commands      notify-host-by-email	; send host notifications via email
        register                        0       		; DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT, JUST A TEMPLATE!
        }




###############################################################################
###############################################################################
#
# HOST TEMPLATES
#
###############################################################################
###############################################################################

# Generic host definition template - This is NOT a real host, just a template!

define host{
        name                            generic-host    ; The name of this host template
        notifications_enabled           1       	; Host notifications are enabled
        event_handler_enabled           1       	; Host event handler is enabled
        flap_detection_enabled          1       	; Flap detection is enabled
        failure_prediction_enabled      1       	; Failure prediction is enabled
        process_perf_data               1       	; Process performance data
        retain_status_information       1       	; Retain status information across program restarts
        retain_nonstatus_information    1       	; Retain non-status information across program restarts
	notification_period		24x7		; Send host notifications at any time
        register                        0       	; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
                
}


# Linux host definition template - This is NOT a real host, just a template!

define host{
	name				linux-server	; The name of this host template
	use				generic-host	; This template inherits other values from the generic-host template
	check_period			24x7		; By default, Linux hosts are checked round the clock
	check_interval			5		; Actively check the host every 5 minutes
	retry_interval			1		; Schedule host check retries at 1 minute intervals
	max_check_attempts		10		; Check each Linux host 10 times (max)
        check_command           	check-host-alive ; Default command to check Linux hosts
	notification_period		workhours	; Linux admins hate to be woken up, so we only notify during the day
							; Note that the notification_period variable is being overridden from
							; the value that is inherited from the generic-host template!
	notification_interval		120		; Resend notifications every 2 hours
	notification_options		d,u,r		; Only send notifications for specific host states
	contact_groups			admins		; Notifications get sent to the admins by default
	register			0		; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
	}



# Windows host definition template - This is NOT a real host, just a template!

define host{
	name			windows-server	; The name of this host template
	use			generic-host	; Inherit default values from the generic-host template
	check_period		24x7		; By default, Windows servers are monitored round the clock
	check_interval		5		; Actively check the server every 5 minutes
	retry_interval		1		; Schedule host check retries at 1 minute intervals
	max_check_attempts	10		; Check each server 10 times (max)
	check_command		check-host-alive	; Default command to check if servers are "alive"
	notification_period	24x7		; Send notification out at any time - day or night
	notification_interval	30		; Resend notifications every 30 minutes
	notification_options	d,r		; Only send notifications for specific host states
	contact_groups		admins		; Notifications get sent to the admins by default
	hostgroups		windows-servers ; Host groups that Windows servers should be a member of
	register		0		; DONT REGISTER THIS - ITS JUST A TEMPLATE
	}


# We define a generic printer template that can be used for most printers we monitor

define host{
	name			generic-printer	; The name of this host template
	use			generic-host	; Inherit default values from the generic-host template
	check_period		24x7		; By default, printers are monitored round the clock
	check_interval		5		; Actively check the printer every 5 minutes
	retry_interval		1		; Schedule host check retries at 1 minute intervals
	max_check_attempts	10		; Check each printer 10 times (max)
	check_command		check-host-alive	; Default command to check if printers are "alive"
	notification_period	workhours		; Printers are only used during the workday
	notification_interval	30		; Resend notifications every 30 minutes
	notification_options	d,r		; Only send notifications for specific host states
	contact_groups		admins		; Notifications get sent to the admins by default
	register		0		; DONT REGISTER THIS - ITS JUST A TEMPLATE
	}


# Define a template for switches that we can reuse
define host{
	name			generic-switch	; The name of this host template
	use			generic-host	; Inherit default values from the generic-host template
	check_period		24x7		; By default, switches are monitored round the clock
	check_interval		5		; Switches are checked every 5 minutes
	retry_interval		1		; Schedule host check retries at 1 minute intervals
	max_check_attempts	10		; Check each switch 10 times (max)
	check_command		check-host-alive	; Default command to check if routers are "alive"
	notification_period	24x7		; Send notifications at any time
	notification_interval	30		; Resend notifications every 30 minutes
	notification_options	d,r		; Only send notifications for specific host states
	contact_groups		admins		; Notifications get sent to the admins by default
	register		0		; DONT REGISTER THIS - ITS JUST A TEMPLATE
	}




###############################################################################
###############################################################################
#
# SERVICE TEMPLATES
#
###############################################################################
###############################################################################

# Generic service definition template - This is NOT a real service, just a template!

define service{
        name                            generic-service 	; The 'name' of this service template
        active_checks_enabled           1       		; Active service checks are enabled
        passive_checks_enabled          1    		   	; Passive service checks are enabled/accepted
        parallelize_check               1       		; Active service checks should be parallelized (disabling this can lead to major performance problems)
        obsess_over_service             1       		; We should obsess over this service (if necessary)
        check_freshness                 0       		; Default is to NOT check service 'freshness'
        notifications_enabled           1       		; Service notifications are enabled
        event_handler_enabled           1       		; Service event handler is enabled
        flap_detection_enabled          1       		; Flap detection is enabled
        failure_prediction_enabled      1       		; Failure prediction is enabled
        process_perf_data               1       		; Process performance data
        retain_status_information       1       		; Retain status information across program restarts
        retain_nonstatus_information    1       		; Retain non-status information across program restarts
        is_volatile                     0       		; The service is not volatile
        check_period                    24x7			; The service can be checked at any time of the day
        max_check_attempts              3			; Re-check the service up to 3 times in order to determine its final (hard) state
        normal_check_interval           10			; Check the service every 10 minutes under normal conditions
        retry_check_interval            2			; Re-check the service every two minutes until a hard state can be determined
        contact_groups                  admins			; Notifications get sent out to everyone in the 'admins' group
	notification_options		w,u,c,r			; Send notifications about warning, unknown, critical, and recovery events
        notification_interval           60			; Re-notify about service problems every hour
        notification_period             24x7			; Notifications can be sent out at any time
        register                        0       		; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!
                
}


# Local service definition template - This is NOT a real service, just a template!

define service{
	name				local-service 		; The name of this service template
	use				generic-service		; Inherit default values from the generic-service definition
        max_check_attempts              4			; Re-check the service up to 4 times in order to determine its final (hard) state
        normal_check_interval           5			; Check the service every 5 minutes under normal conditions
        retry_check_interval            1			; Re-check the service every minute until a hard state can be determined
        register                        0       		; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!
	}

define host {
   name       host-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
   register   0
}

define service {
   name       srv-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
   register   0
}

Thanks,
Imran Khan.

Re: Graph is not showing in Nagios

Posted: Tue Jul 15, 2014 7:38 pm
by Box293
It looks like you copied an existing template file and used it for Defination/templates.cfg.

I would:
  • Make a backup copy of the file
    Remove all entries in the file except for:

    Code: Select all

    define host {
           name       host-pnp
           action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
           register   0
        }
    
        define service {
           name       srv-pnp
           action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
           register   0
        }
    Validate the configuration:

    Code: Select all

    /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg