在这个特定的例子中,我使用 fabio 和 nginx 以及 apache http 代理,它们只是将请求代理到目的地。
“组合日志格式”和“通用日志格式”不要包括代理请求重定向到何处、客户端是否使用请求的 http 或 https 以及请求想要连接到哪个主机。它们也不包括请求的客户端端口。
是否有标准化的“代理日志格式”用于记录此类信息?我该如何添加它们 - 在通用日志格式的末尾?或者我应该忽略并只是想出一些我的日志格式?
答案1
许多代理支持的 ISTRNCSA 通用日志格式——但这非常有限。
您选择的格式实际上取决于您想要的日志文件格式。不幸的是,组合日志格式的用户代理字符串(或任何其他具有嵌入空格的属性)使得解析和重组日志有点困难。
以前,我只是将前端/后端时间、源服务器、协议和缓存命中的字段附加到组合日志格式的末尾 - 这意味着我可以继续使用已有的日志分析器。但是将用户代理字符串移到行尾意味着我可以使用简单的 awk 脚本轻松获得组合日志格式。
CEF 本来应该解决系统日志类型消息的缺点 - 但恕我直言,它不必要地复杂且不灵活。