• Haproxy日志配置


    haproxy在默认情况不会记录日志,除了在haproxy.conf中的global段指定日志的输出外,还需要配置系统日志的配置文件。下面以centos6.4为例,haproxy使用系统自带的rpm报1.4版本

    编辑/etc/haproxy/haproxy.conf

    default处添加,如下红色部分,记住不要添加到global处,否则输出日志会有重复的现象,一个请求输出两行相同的日志内容

    defaults
      mode http
      log global
      log 127.0.0.1 local0
      #local0是设备,对应于 /etc/rsyslog.conf中的配置,默认回收info的日志级别

    编辑系统日志配置

    # cat /etc/rsyslog.conf
     默认有下面的设置,会读取 /etc/rsyslog.d/*.conf目录下的配置文件
     $IncludeConfig /etc/rsyslog.d/*.conf

    为haproxy创建一个独立的配置文件

    # vim  /etc/rsyslog.d/haproxy.conf
    $ModLoad imudp
    $UDPServerRun 514
    $UDPServerAddress 0.0.0.0 local0.* /var/log/haproxy.log #如果不加下面的的配置则除了在/var/log/haproxy.log中写入日志外,也会写入message文件 &~

    配置rsyslog的主配置文件,开启远程日志

    # vim /etc/sysconfig/rsyslog
     SYSLOGD_OPTIONS=”-c 2 -r -m 0″
     #-c 2 使用兼容模式,默认是 -c 5
     #-r   开启远程日志
     #-m 0 标记时间戳。单位是分钟,为0时,表示禁用该功能

    重启haproxy和rsyslog服务

    # /etc/init.d/rsyslog restart
    # /etc/init.d/haproxy restart

     ---------------------------------------------------------------------------------------------------------------------------------------------------------------

    日志查询

    按时间范围查询:(注意:时间点要确实存在,才可查找时间范围)

    其实就是打印文件中,正则匹配 Aug 16 16:25:54 和 Aug 16 16:35:54 这两行之间的所有的内容

    # cat /var/log/haproxy.log | sed -n '/Aug 16 16:25:54/,/Aug 16 16:35:54/p'|awk '{print $6}'|cut -d : -f1|sort| uniq -c |sort -k1,1nr|more

    再比如:时间字段内容为 “[15/Apr/2019:11:45:25 +0800]”时,也可以进行查询

    # cat /var/log/nginx/log | sed -n '/15/Apr/2019:11:45:23/,/15/Apr/2019:11:45:29/p'

    汇总求和:

    # cat haproxy.log-20170102 | sed -n '/Jan  1 14:00:00/,/Jan  1 14:05:00/p'|grep 'packet/index'|awk '{print $6}'|cut -d : -f1|sort| uniq -c |sort -k1,1nr|awk '{ SUM += $1 } END { print SUM }'  汇总求和

  • 相关阅读:
    Android中库项目、jar包等的使用方法
    rman 使用catalog备份的演示
    好端端的项目重新运行的时候却不行了!!!已解决
    动物:河蚌
    动物:田螺
    动物-鱼:鳖
    动物-鱼:鳝鱼
    动物-鱼:柳根鱼
    动物-鱼:泥鳅
    动物-鱼:刺鳅
  • 原文地址:https://www.cnblogs.com/wjoyxt/p/6183465.html
Copyright © 2020-2023  润新知