내 현재 rsyslog.conf 구성 파일:

내 현재 rsyslog.conf 구성 파일:

이건 그냥 내 연속이야이전 기사rsyslog 구성을 사용하는 동안 많은 어려움에 직면했고 이에 대해 많은 해야 할 일과 하지 말아야 할 일을 배웠으며 많은 전문적인 제안을 받은 후 대부분의 구성이 이제 작동하고 있으며 이제 딜레마에 빠져 일부 메시지를 삭제하고 싶습니다. 메시지를 필터링했습니다.

내 현재 rsyslog.conf 구성 파일:

[root@hos1-loghost ~]# cat  /etc/rsyslog.conf
##########################################################################################
# rsyslog configuration file For PCC &  LPC
##########################################################################################
#### MODULES ####
$ModLoad imuxsock        # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal       # provides access to the systemd journal
$ModLoad imudp           # Provides UDP syslog reception
$UDPServerRun 514        # Provides UDP syslog reception

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
$template system-logs, "/data/SYSTEMS/%HOSTNAME%/messages.log"
$template dpc-nets,"/scratch/rsyslog/network/%HOSTNAME%/messages.log"
$template dpc-firewalls,"/scratch/rsyslog/firewall/%HOSTNAME%/messages.log"

#################################################
#### GLOBAL DIRECTIVES                       ####
#################################################
$WorkDirectory /var/lib/rsyslog                                 # Where to place auxiliary files
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat        # Use default timestamp format
$IncludeConfig /etc/rsyslog.d/*.conf                            # Include all config files in /etc/rsyslog.d/
$OmitLocalLogging on                                            # local messages are retrieved through imjournal now.
$IMJournalStateFile imjournal.state                             # File to store the position in the journal

############ RULES #########################################
# Log anything (except mail) of level info or higher #######
# Don't log private authentication messages!        ########
############################################################
mail.none;authpriv.none;cron.none ?system-logs
*.*              ?system-logs

#####################################################################
# Custom conditional Forwarding of messages to the syslog Directory #
###################################################################
if $fromhost startswith "wc" then {
  *.crit,*.err,*.emerg,*.alert,*.panic,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?system-logs
  & stop
}

if $fromhost startswith "sj-" then {
  *.crit,*.err,*.emerg,*.alert,*.panic,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?system-logs
  & stop
}

if $fromhost startswith "vlsj-" then {
  *.crit,*.err,*.emerg,*.alert,*.panic,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?system-logs
  & stop
}

위 구성에는 호스트 이름을 필터링하고 필요한 시설 수준만 선택하고 나머지는 삭제하는 여러 if 조건이 있습니다.

이제 특정 문자열이 포함된 메시지를 무시/삭제해야 하는 상황이 생겼습니다.

메시지 세트 예시

Feb  8 08:07:01 my-ezure CROND[10487]: (root) CMD (/grid/it/sbin/plugins/new_toplevelmap.sh)
Feb  8 08:08:01 my-ezure CROND[10587]: (root) CMD (/grid/it/sbin/plugins/ps-rem)
Feb  8 08:01:01 my-ezure run-parts(/etc/cron.hourly)[9812 starting mcelog.cron
Feb  8 08:01:01 my-ezure run-parts(/etc/cron.hourly)[9841 finished mcelog.cron
Feb  8 08:08:01 my-ezure CROND[10588]: (root) CMD (/grid/it/sbin/plugins/new_toplevelmap.sh)

위의 메시지에서 포함된 메시지를 삭제해야 합니다 CROND. rsyslog.conf 끝에 다음 줄을 추가하려고 시도했지만 성공하지 못했습니다.

$programname == ' CROND'인 경우 중지

$rawmsg에 'CROND'가 포함되어 있으면 ~

$syslogfacility-text == ' CROND'이면 ~

rsyslog 버전이 있습니다.rsyslogd 7.4.7

필요한 메시지만 내 rsyslog 서버에 기록되도록 모든 온라인 클라이언트 호스트에서 원치 않는 메시지를 모두 삭제하고 싶습니다.

관련 정보