![rsyslog 使用 avro 编码日志解码失败](https://linux22.com/image/751285/rsyslog%20%E4%BD%BF%E7%94%A8%20avro%20%E7%BC%96%E7%A0%81%E6%97%A5%E5%BF%97%E8%A7%A3%E7%A0%81%E5%A4%B1%E8%B4%A5.png)
我正在使用 rsyslog,我让我的设备将自定义日志发送到 rsyslog,这些日志以 avro 编码。当我通过 udp 端口在 rsyslog 中收到此日志时,我能够解码。但是当它存储在 rsyslog 中并且我尝试解析文件并解码日志时,它失败了。rsyslog 正在进行一些编码,并且在 rsyslog 将其存储在文件中时会引入大量 #。有人可以指导我如何指示 rsyslog 不添加任何编码并按原样存储此二进制数据吗?或者我可以尝试任何解码级别更改?
示例 rsyslog 如下所示
Apr 20 13:57:27 10.64.41.10 #000#000#000#000#010????\H4258f87a-7ffe-11ea-8dcf-9a2557ed7397P332B076268B04DE65C3479662A6A8DEB978D27ED#032vip-1_80_http#000P332B076268B04DE65C3479662A6A8DEB978D27ED#006slb#026200.11.10.2#016sg-testHa1536532-7ffd-11ea-a9c6-f673c1138ce6#016http1.1#006GET#002/#026200.11.10.6#000??#006?#003?#001?#003#000#000#000#000#000#000#026200.11.10.2#000#026curl/7.29.0#000#03010.64.42.101#000?#001#001#000#002#002#002#002#002#002#002#002#002#002#000#000#016Unknown#004--#004--#000#000#000#02610.64.41.10#000??#004#000#000 #000#000#000#000
答案1
你应该看看这全局配置选项,或者将其关闭:
$EscapeControlCharactersOnReceive off