107 lines
3.2 KiB
Django/Jinja
107 lines
3.2 KiB
Django/Jinja
#
|
|
# /etc/rsyslog.conf Configuration file for rsyslog.
|
|
#
|
|
# For more information see
|
|
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
|
|
|
|
|
|
#################
|
|
#### MODULES ####
|
|
#################
|
|
|
|
$ModLoad imuxsock # provides support for local system logging
|
|
|
|
#
|
|
# Set a rate limit on messages from the container
|
|
#
|
|
|
|
{% if SYSLOG_CONFIG_FEATURE is defined %}
|
|
{% if container_name in SYSLOG_CONFIG_FEATURE %}
|
|
{% if 'rate_limit_interval' in SYSLOG_CONFIG_FEATURE[container_name]%}
|
|
{% set rate_limit_interval = SYSLOG_CONFIG_FEATURE[container_name]['rate_limit_interval'] %}
|
|
{% endif %}
|
|
{% if 'rate_limit_burst' in SYSLOG_CONFIG_FEATURE[container_name]%}
|
|
{% set rate_limit_burst = SYSLOG_CONFIG_FEATURE[container_name]['rate_limit_burst'] %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if rate_limit_interval is defined %}
|
|
$SystemLogRateLimitInterval {{ rate_limit_interval }}
|
|
{% else %}
|
|
$SystemLogRateLimitInterval 300
|
|
{% endif %}
|
|
{% if rate_limit_burst is defined %}
|
|
$SystemLogRateLimitBurst {{ rate_limit_burst }}
|
|
{% else %}
|
|
$SystemLogRateLimitBurst 20000
|
|
{% endif %}
|
|
|
|
#$ModLoad imklog # provides kernel logging support
|
|
#$ModLoad immark # provides --MARK-- message capability
|
|
|
|
# provides UDP syslog reception
|
|
#$ModLoad imudp
|
|
#$UDPServerRun 514
|
|
|
|
# provides TCP syslog reception
|
|
#$ModLoad imtcp
|
|
#$InputTCPServerRun 514
|
|
|
|
|
|
###########################
|
|
#### GLOBAL DIRECTIVES ####
|
|
###########################
|
|
{% if container_name == 'pmon' %}
|
|
{% if platform == 'x86_64-mlnx_msn2700-r0' or platform == 'x86_64-mlnx_msn2700a1-r0' %}
|
|
|
|
# This rsyslog configuration is intended to resolve the following error message that only appears on the MSN2700 platform:
|
|
# "ERR pmon#sensord: Error getting sensor data: dps460/#10: Can't read"
|
|
# This error is because of firmware issue with some type of PSU, we are not able to upgrade the FW online.
|
|
# Since there is no functional impact, this error log can be ignored safely.
|
|
|
|
if $programname contains "sensord" and $msg contains "Error getting sensor data: dps460/#" then stop
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
# Set remote syslog server
|
|
template (name="ForwardFormatInContainer" type="string" string="<%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% {{container_name}}#%syslogtag%%msg:::sp-if-no-1st-sp%%msg%")
|
|
*.* action(type="omfwd" target="{{target_ip}}" port="514" protocol="udp" Template="ForwardFormatInContainer")
|
|
|
|
#
|
|
# Use traditional timestamp format.
|
|
# To enable high precision timestamps, comment out the following line.
|
|
#
|
|
#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
|
|
|
|
# Define a custom template
|
|
$template SONiCFileFormat,"%TIMESTAMP%.%timestamp:::date-subseconds% %HOSTNAME% %syslogseverity-text:::uppercase% {{container_name}}#%syslogtag%%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"
|
|
$ActionFileDefaultTemplate SONiCFileFormat
|
|
|
|
#
|
|
# Set the default permissions for all log files.
|
|
#
|
|
$FileOwner root
|
|
$FileGroup adm
|
|
$FileCreateMode 0640
|
|
$DirCreateMode 0755
|
|
$Umask 0022
|
|
|
|
#
|
|
# Where to place spool and state files
|
|
#
|
|
$WorkDirectory /var/spool/rsyslog
|
|
|
|
#
|
|
# Include all config files in /etc/rsyslog.d/
|
|
#
|
|
$IncludeConfig /etc/rsyslog.d/*.conf
|
|
|
|
#
|
|
# Suppress duplicate messages and report "message repeated n times"
|
|
#
|
|
$RepeatedMsgReduction on
|
|
|
|
###############
|
|
#### RULES ####
|
|
############### |