带有分隔符的可parsing的NGINX访问日志文件
默认的NGINX格式是这样的: log_format combined '$remote_addr – $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"'; 这有点难以parsing。 我恐怕人们注入"在请求,引荐者或用户代理。 我曾考虑过使用分隔符,并使用我自己的格式,使用|P-,| 作为分隔符: log_format parsable '$status |P-,| $time_iso8601 |P-,| $http_host |P-,| $bytes_sent |P-,| $http_user_agent |P-,| $http_referer |P-,| $request_time |P-,| $request'; 但是,没有什么能阻止用户注入|P-,| 纳入他们的请求,推荐人或用户代理。 我读了这篇关于ASCII分隔文本的文章: https : //ronaldduncan.wordpress.com/2009/10/31/text-file-formats-ascii-delimited-text-not-csv-or-tab-delimited-text/ 我认为这可以用来解决这个问题,但是用户也可以在他们的数据中注入ASCII分隔符。 有没有最好的方法来解决这个问题?