Using rsyslogd for debugging

From berofix - professional SIP gateway
Jump to: navigation, search

beroFix can create debug-data that can be helpfull for us to understand error conditions. The debug-data can be sended via UDP to a remote host. This host can run rsyslogd to capture the data in a logfile.

 NOTE: Syslog Debugging can create a lot of load on the beroFix, so it should not be enabled for long runs. 
 If you have noticable performance issues set the loglevel to 1 or 0. 

In modern Debian Distros rsyslogd should be already pre-installed otherwise you need to install it manually. syslogd is no very suitable, since it cannot filter specific log data to specific files.

So these are the steps to install rsyslogd and to configure it properly to receive beroFix debug Data:

First we need to install rsyslog:

apt-get install rsyslog

Then we need to configure its config file /etc/rsyslog.conf:

vim /etc/rsyslog.conf
#Listen on Port 514 
$ModLoad imudp
$UDPServerRun 514

Since the position of the rules is important, put our rules directly after the "#### RULES ####" line:

#### RULES  ####
#Berofix-Card 01
$template berofix01, "/var/log/berofix01.log"
:source, contains, "" ?berofix01
& ~

Then you need to restart rsyslog:

/etc/init.d/rsyslog restart

You can verify if the Syslog Server listens on 514 with netstat:

netstat -lpn |grep rsyslog

In beroFix you need to do the following steps:

1.0 Login
2.0 Preferences > Logging
2.1 Logging Server: > Syslogd-Server-IP
2.2 Logging Server Port: > Syslogd-Server-Port
2.3 Logging Active: > checkbox aktivieren
2.4 Log Level: > set to 9 for the maximum debugging
2.5 Save