rt, 8.30.0版本还没有修复这个问题,如果imfile发送本地文件的时候,拿不到fromhost-ip,没办法统一做日志整合。因为往往我们的日志中心里,都是这样的格式:/data/log/ip/date..
我是这么解决的:
在imfile加载的时候,制定local tag,再解析/
/etc/rsyslog.conf
###本地fromhost-ip在imfile中拿不到,这里重新匹配
template(name="LocalFormat" type="string"
string= "/data/log/%programname:F,44:2%/127.0.0.1/%$YEAR%/%$MONTH%/%$DAY%.log"
)##真正的命名是tag逗号后面的参数
:syslogtag,startswith,"local" ?LocalFormat;CleanMsgFormat
& ~##这个规则放在最上面,有可能会冲突下面的规则
/etc/rsyslog.d/slowphp.conf
input(type="imfile"
File="/usr/local/data/log/phpslow.log"
Tag="local253,phpslowremote"##制定是local,取名字叫phpslowremote,和其他远端一致
Severity="debug"
Facility="local4")