nginx启用TCP反向代理日志配置


  Nginx使用TCP反向代理日志配置不同于http

  修改nginx配置文档/usr/local/nginx/conf/nginx.conf 设置日志格式

stream {
   log_format proxy '$remote_addr [$time_local] '
                 '$protocol $status $bytes_sent $bytes_received '
                 '$session_time "$upstream_addr" '
                 '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';
    include ./conf.d/*.tcpstream;
}

  修改具体的tcp配置文档

server{
    error_log       /opt/log/device5001_error.log;
    access_log      /opt/log/device5001_access.log proxy;
    listen 5001;
    proxy_pass device5001;
}

  检查日志

 tail -f /opt/log/device5001_access.log

  PS

•测试发现nginx会等待session结束才会记录到日志文件;
•session日志只是tcp层面的记录,包括session时间,发送接收字节数等等;
•session内部发送日志(比如一个socket连接建立起来以后,多次发送心跳数据)需要在应用层面才能记录;

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM