• Nginx 用syslog传输error.log到远程服务器


    error_log配置syslog远程传输

    error_log syslog:server=127.0.0.1:514,facility=local0,severity=info,tag=nginx error;

    其中server指定传输的IP&Port。为了开发方便,这里设置了本机的rsyslog服务端口。

    facility指定产生日志的实体,有一些固定的选择,比如kern,mail,user,local0,local1等。

    severity指定日志级别(不是nginx的日志级别)。

    tag指定标识,这里设置的tag为"nginx"。

    error指定了nginx的日志级别,根据需要也可以选其它级别,例如warn,info,debug等。

    配置rsyslog服务

    编辑/etc/rsyslog.conf,添加配置如下

    1. #启用udp模块
    2. module(load="imudp")
    3. #输入是udp协议,端口514
    4. input(type="imudp" port="514")
    5. #ficility为local0的日志输出到/var/log/error.log
    6. local0.*             -/var/log/error.log

    这里是把facility为local0的syslog输出到本机的/var/log/error.log文件,也可以传输到远程数据库。由于手头没有数据库,不列举配置了。

    配置好之后systemctl restart rsyslog就好了(具体service名字用tab补全)。

    错误日志格式

    示例如下

    Nginx 错误日志格式,每个红框是一个字段,从左到右,从上到下依次是

    syslog header中的时间,时间格式可以通过ActionFileDefaultTemplate设置

    hostname,我的主机名这是的是A,不确定是hostname变量转小写了还是syslog输出转的。

    tag,这里设置的值是nginx。

    nginx日志时间,nginx日志默认时间精度是秒,我自己改成毫秒了,代码中修改的位置是ngx_cached_err_log_time变量赋值的部分,毫秒直接用tp->msec就好了。

    [error] 是日志级别

    271612#0是记录的进程PID和线程TID,用#分割

    *301xxx 是连接ID

    connect() failed xxxx这部分就是nginx代码里面输出的具体错误信息

  • 相关阅读:
    vue3.0组合式api使用总结
    项目实战 - tpshop商城项目环境搭建
    Android URI学习
    LED智能家居灯 开关调光 台灯落地灯控制驱动 降压恒流IC AP5191
    缓存读写淘汰算法W-TinyLFU算法
    @Valid和@Validated在service层的分组校验
    windows怎么删除卸载nodejs
    【计算机图形学入门】笔记3:变换Transformation(二维与三维)
    如何使用 Node.js和Express搭建服务器?
    Git 的基本概念和使用方式。
  • 原文地址:https://blog.csdn.net/Leopard_89/article/details/126215036