如何在重启时消除 HAProxy 投诉?

如何在重启时消除 HAProxy 投诉?

sudo service haproxy restart出现以下信息时:

[WARNING] 145/113237 (6021) : config : 'option httplog' not usable with proxy 'mysql' (needs 'mode http'). Falling back to 'option tcplog'.

我尝试option tcplog在配置的某些地方添加内容,但消息没有停止。这是我的配置:

global
        log /dev/log    local0
        log /dev/log    local1 notice
        chroot /var/lib/haproxy
        user haproxy
        group haproxy
        daemon

defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        contimeout 5000
        clitimeout 50000
        srvtimeout 50000
        errorfile 400 /etc/haproxy/errors/400.http
        errorfile 403 /etc/haproxy/errors/403.http
        errorfile 408 /etc/haproxy/errors/408.http
        errorfile 500 /etc/haproxy/errors/500.http
        errorfile 502 /etc/haproxy/errors/502.http
        errorfile 503 /etc/haproxy/errors/503.http
        errorfile 504 /etc/haproxy/errors/504.http

listen stats
        bind :8082
        mode http
        stats enable
        stats uri /stats

listen mysql *:3307
        mode tcp
        balance roundrobin
        option mysql-check user check
        option log-health-checks
        server db01 SERVER1:3306 check port 3306 inter 1000
        server db02 SERVER2:3306 check port 3306 inter 1000

知道如何删除那条烦人的消息吗?

答案1

尝试一下这个:

defaults
    log     global
    #mode    http
    #option  httplog
    mode tcp
    option tcplog
    option  dontlognull

答案2

而不是改变整个全局配置...你最好将这一行添加到你关心的option tcplog特定块中listen

按照文件规定。

选项 httplog 设置,或者更少见的选项 tcplog,告诉 HAProxy 在向 Syslog 发送消息时使用更详细的日志格式。一般而言,您会在您的部分中选择 ,因为当 HAProxy 遇到option httplog使用的时,它会发出警告并将其降级为。option tcplogdefaultsfrontendmode tcpoption tcplog

listen mysql *:3307
        mode tcp
        option tcplog #add this line
        balance roundrobin
        option mysql-check user check
        option log-health-checks
        server db01 SERVER1:3306 check port 3306 inter 1000
        server db02 SERVER2:3306 check port 3306 inter 1000

相关内容