udp上的流日志记录



我在通过udp向收集日志流的目标第三方机器发送日志流时遇到问题。

我只有几行init出现在远程控制台上。udp上的编码也应该是UTF-8。

## setup_loggin function body
handler=logging.StreamHandler()
handler.setFormatter(formatter)
socketHandler=logging.handlers.SysLogHandler(address(SYSLOG_IP, 514))
socketHandler.setFormatter(formatter)
logger = logging.getLogger(name)
if not logger.handlers:
logger.setLevel(log_level)
logger.addHandler(handler)
logger.addHandler(socketHandler)
return logger

远程服务器刚刚开始记录最终结果。可能是因为它期望UDP接收"UTF-8",然后对其进行解析。

有没有办法使用SysLogHandler或任何其他loggin处理程序将日志编码更改为"UTF-8"。?

问题已解决。第三方系统日志基于RFC3164 进行解析

MSG部分有两个字段,即TAG字段和CONTENT字段。所以,格式化程序应该是类似的东西

formatter_syslog = logging.Formatter(fmt='foo: %(levelname)s - %(module)s.%(funcName)s - %(message)s')

最新更新