LinuxQuestions.org
Go Job Hunting at the LQ Job Marketplace
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices

Reply
 
Search this Thread
Old 01-19-2013, 03:50 AM   #1
ahmedfai
LQ Newbie
 
Registered: Jan 2013
Posts: 2

Rep: Reputation: Disabled
Creating filters in rsyslog 5


Hi All,

I am new to this Forum as well as to Linux. I have very limited knowledge on Linux and I am planning to learn more.
I have a requirement to set up a central logging server with Linux and that is why I am here.

I have installed rsyslog (removed syslogd obviously) and it is now logging all the messages in to /var/log/messages. But I want to create filters. For example I have a lot of network devices like switches and routers and want to create filters based on the host names of these devices.

I did refer this: Migration King: Configure rsyslog on Red Hat Enterprise Linux 6 (RHEL6) for Cisco Switches

Below is my rsyslog.conf

# rsyslog v5 configuration file

# For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html
# If you experience problems, see troubleshooting rsyslog rsyslog

#### MODULES ####

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
#$ModLoad immark # provides --MARK-- message capability

# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514


#### GLOBAL DIRECTIVES ####

# Use default timestamp format
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# File syncing capability is disabled by default. This feature is usually not required,
# not useful and an extreme performance hit
#$ActionFileEnableSync on

# Include all config files in /etc/rsyslog.d/
$IncludeConfig /etc/rsyslog.d/*.conf

#### RULES ####

# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.* /dev/console

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages

# The authpriv file has restricted access.
authpriv.* /var/log/secure

# Log all the mail messages in one place.
mail.* -/var/log/maillog

# Log cron stuff
cron.* /var/log/cron

# Everybody gets emergency messages
*.emerg musrmsg:*

# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler

# Save boot messages also to boot.log
local7.* /var/log/boot.log

# OOB ASA Logging
:fromhost-ip, isequal, "xx.xx.xx.xx" /var/log/Switch1
& ~

# ### begin forwarding rule ###
# The statement between the begin ... end define a SINGLE forwarding
# rule. They belong together, do NOT split them. If you create multiple
# forwarding rules, duplicate the whole block!
# Remote Logging (we use TCP for reliable delivery)
#
# An on-disk queue is created for this action. If the remote host is
# down, messages are spooled to disk and sent when it is up again.
#$WorkDirectory /var/lib/rsyslog # where to place spool files
#$ActionQueueFileName fwdRule1 # unique name prefix for spool files
#$ActionQueueMaxDiskSpace 1g # 1gb space limit (use as much as possible)
#$ActionQueueSaveOnShutdown on # save messages to disk on shutdown
#$ActionQueueType LinkedList # run asynchronously
#$ActionResumeRetryCount -1 # infinite retries if host is down
# remote host is: name/iport, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
# ### end of the forwarding rule ###


I tried multiple combinations like

:msg,contains, "<Hostname>" /var/log/Switch1
& ~

if $msg contains '<Hostname>' then /var/log/Switch1
& ~

But it is not working for me at the moment.

I am using the following:
Red Hat Enterprise Linux Server release 5.5
rsyslog-5.10.0-2.el5.centos

I would really appreaciate if some one could assist me with this.

Thanks in advance
Ahmed
 
Old 01-19-2013, 08:29 AM   #2
unSpawn
Moderator
 
Registered: May 2001
Posts: 27,280
Blog Entries: 54

Rep: Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854Reputation: 2854
Quote:
Originally Posted by ahmedfai View Post
I am new to this Forum as well as to Linux.
Welcome to LQ, hope you like it here.


Quote:
Originally Posted by ahmedfai View Post
I have very limited knowledge on Linux and I am planning to learn more.
Don't "plan": just do it ;-p The best starting point is knowing where to find information: local manual, info and /usr/share/doc pages, the RHEL installation and administrator documentation, searching LQ and in the case of Rsyslogd: the Rsyslogd web site and knowledge base.


Quote:
Originally Posted by ahmedfai View Post
I have installed rsyslog (..) I want to create filters. For example I have a lot of network devices like switches and routers and want to create filters based on the host names of these devices.
If you grep /usr/share/doc/rsyslog*/ recursively for "fromhost-ip" you'll find examples like "multi_ruleset.html".


Quote:
Originally Posted by ahmedfai View Post
I am using the following:
Red Hat Enterprise Linux Server release 5.5
rsyslog-5.10.0-2.el5.centos
You're running a way out of date version. RHEL is at 5.9 now. Also note Rsyslogd has its own RPM repo and Rsyslogd version 7 runs OK on CentOS 5.x.


I'd change your filter logic a bit:
Code:
$ModLoad imuxsock
$ModLoad imklog
$ModLoad imudp
$UDPServerRun 514
#
# While it does give more assurance you're probably not running any clients that can syslog-over-TCP:
# $ModLoad imtcp 
# $InputTCPServerRun 514
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
#
# Using include directories makes dropping configs in easy but be aware they might bite you 
# when troubleshooting. So always list configs there too.
$IncludeConfig /etc/rsyslog.d/*.conf
# 
# Lets add a template for the switch. Remember UNIX and Linux are case sensitive
$template log_switch,"/var/log/switch_%HOSTNAME%.log;TraditionalFileFormat"
#
# Enter our remote hosts rule set
$RuleSet remote
:fromhost-ip, isequal, "nnn.nnn.nnn.nnn" -?log_switch
& ~
#
# After discarding remote switch back to the default ruleset to process all local messages:
$RuleSet RSYSLOG_DefaultRuleset
#
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 :omusrmsg:*
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log

Quote:
Originally Posted by ahmedfai View Post
I tried multiple combinations (..) But it is not working for me at the moment.
"Not working" doesn't give us any clue what's wrong. Always check stdout, stderr and /var/log/messages for clues and read /usr/share/doc/rsyslog*/troubleshoot.html. Here's one way to check quickly what Rsyslogd is doing:
Code:
# Become root and source config, this fills the SYSLOGD_OPTIONS env var:
. /etc/sysconfig/rsyslog
# run Rsyslogd with the appropriate debug var and log stderr and stdout to file so you can read (and report) later:
/bin/env RSYSLOG_DEBUG="NoLogTimeStamp" /sbin/rsyslogd $SYSLOGD_OPTIONS -d -n -N10 2>&1 | tee /tmp/tee.txt
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Creating filters in rsyslog ahmedfai Red Hat 1 01-19-2013 01:48 PM
tweaking rsyslog chris@momentfeed.com Linux - Server 3 07-11-2012 12:44 AM
rsyslog cheltz Linux - Software 1 05-25-2012 08:38 AM
rsyslog ytd Linux - Newbie 1 02-11-2011 01:43 AM
anyone using rsyslog? slackamp Slackware 1 10-16-2007 09:55 PM


All times are GMT -5. The time now is 03:25 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration