从rsyslog客户端将日志发送到rsyslog服务器中的特定文件



我正在使用rsyslog客户端向rsyslog服务器发送freeradius日志。Freeradius日志存储在rsyslog客户端PC的/var/log/radius.log中。我想将其发送到rsyslog服务器PC。我正在使用以下设置,该设置是在/etc/rsyslog.d/Freeradius.conf文件夹中的一个单独的Freeradius.conf文件(手动创建(中创建的。所有日志发送到服务器的默认日志文件是/var/log/syslog,但我想将日志保存在一个单独的文件中。请帮我把这些日志保存在/var/log/";CLIENT_IP"/remote_freeradius.log。您可以在下面看到/etc/rsyslog.d/freeradius.conf文件的内容:

$ModLoad imfile     
$InputFilePollInterval 10 
$InputFileName  /var/log/radius.log 
$InputFileTag freeradius-access: 
$InputFileStateFile stat-freeradius-access 
$InputFileSeverity Info  
$InputRunFileMonitor  

$template freeradius_log, " %msg% "  

if $programname == 'freeradius-access' then @192.168.10.207:514;freeradius_log 
if $programname == 'freeradius-access' then stop

是的,在转发文件时可以修改文件名。

我不知道您是否可以使用遗留语法实现以下功能——据我所知,这是不可能的。但是您可以将传统语法和高级语法结合起来,所以这应该不是问题。


第一个-创建模板:

template (name="ForwardRadiusLogs" type="string"
string="<%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% %syslogtag% %CLIENT_IP% %msg%")

第二次-将模板分配给转发日志的操作

action(type="omfwd" Target="10.100.100.1" Port="20514" Template="ForwardRadiusLogs")

这相当于(在高级语法中(配置中的以下行:

@192.168.10.207:514;freeradius_log 

相关内容

  • 没有找到相关文章

最新更新