NetScaler-13.1- NetScaler doesn't generate nitro.log

book

Article ID: CTX695989

calendar_today

Updated On:

Description

NetScaler doesn't generate /var/log/nitro.log in 14.1-47.48

Cause

By default, we have syslog settings in /etc/syslog.conf and /etc/syslog.conf has one line "local5.*  /var/log/nitro.log" for nitro.log . However, this line doesn't exist in the customer's environment. In this situation, Netscaler wil not generate nitro.log.

Our design is that any changes to /etc/syslog.conf will be lost after reboot. If we need to customize syslog.conf and make the changes persistent, we create a customized syslog.conf in /nsconfig. After reboot, /etc/syslog.conf will become a soft link to /nsconfig/syslog.conf automatically and thus the changes will be persistent after reboot.   In a environment without customization, we shouldn't see /nsconfig/syslog.conf.
 
 
However, in customer's environment,  /nsconfig/syslog.conf exists and /etc/syslog.conf is linked to /nsconfig/syslog.conf.   This means customization exists and the line for nitro.log was lost due to the customization. 

Resolution

Option 1:
If we don't need any customization, we can remove /nsconfig/syslog.conf and reboot the device. The device will regenerate a default /etc/syslog.conf after reboot when /nsconfig/syslog.conf doesn't exist.

 

Option 2:
1.Find a normal NetScaler with same version and copy the correct content into /nsconfig/syslog.conf. The following is an example got from version 14.1-47.48.

root@ns206# cat /etc/syslog.conf
# $FreeBSD: src/etc/syslog.conf,v 1.13.2.4 2003/05/12 13:59:23 yar Exp $
#
#       Spaces ARE valid field separators in this file. However,
#       other *nix-like systems still insist on using tabs as field
#       separators. If you are sharing this file between systems, you
#       may want to use only tabs as field separators here.
#       Consult the syslog.conf(5) manpage.
 
kern.debug                                      /dev/console
*.warning;authpriv.none;kern.*                  /var/log/messages
*.notice                                        /var/log/notice.log
security.*                                      /var/log/security
auth.info;authpriv.info                         /var/log/auth.log
mail.info                                       /var/log/maillog
lpr.info                                        /var/log/lpd-errs
cron.*                                          /var/log/cron
local0.*                                        /var/log/ns.log
local1.*                                        /var/log/nsvpn.log
local2.*                                        /var/log/iprep.log
local3.debug                                    /var/log/callhomedebug.log
local3.info                                     /var/log/callhome.log
local4.*                                        /var/log/ctxslsboc.log
!-pgsql,ngapi
local5.*                                        /var/log/nitro.log
!*
local6.*                                        /var/log/sh.log
local7.*                                        /var/log/bash.log
*.emerg                                         *
#mastools related log set
!mastools
*.*                                             /var/log/mastoolsd.log
!*
#postgres related log set
!pgsql
local5.*                                        /var/log/pgsql.log
!*
!ngapi
local5.*                                        /var/log/ngapi.log
!*
 
# uncomment this to log all writes to /dev/console to /var/log/console.log
#console.info                                   /var/log/console.log
# uncomment this to enable logging of all log messages to /var/log/all.log
#*.*                                            /var/log/all.log
# uncomment this to enable logging to a remote loghost named loghost
#*.*                                            @loghost


2.restart syslogd process

root@NSVPX100# ps aux | grep syslogd
root 979 0.0 0.0 3672 784 ?? Ss 8Jun17 31:35.76 /usr/sbin/syslogd -b 127.0.0.1 -n -v -v -8 => confirm the PID is 979
root 99416 0.0 0.0 5856 688 p0 R+ 8:32PM 0:00.00 grep syslogd
root@NSVPX100# kill -9 979 => replace the PID in your environment
root@NSVPX100# /usr/sbin/syslogd -b 127.0.0.1 -n -v -v -8

 

In this way , the customization file /nsconfig/syslog.conf is still there , but we put correct content in it.

Issue/Introduction

This article describes how to solve the problem that NetScaler doesn't generate nitro.log