【问题标题】:HAProxy Lua loggingHAProxy Lua 日志记录
【发布时间】:2021-01-26 12:03:55
【问题描述】:

我从我的 LUA 脚本中收到重复的 HAProxy 日志消息,但不明白为什么。

haproxy.cfg

global
        log /dev/log local0 warning
        chroot /var/lib/haproxy
        stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
        stats timeout 30s
        user haproxy
        group haproxy
        daemon

        # Default SSL material locations
        ca-base /etc/ssl/certs
        crt-base /etc/ssl/private

        # See: https://ssl-config.mozilla.org/#server=haproxy&server-version=2.0.3&config=intermediate
        ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
        ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
        ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets
        lua-load /home/tester/hello.lua

defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  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

frontend test_endpoint
  bind *:9202
  http-request lua.tester

你好.lua

function tester(txn)
  core.log(core.debug, "debug message!\n")
  core.log(core.info, "info message!\n")
  core.log(core.warning, "warning message!\n")
  core.log(core.err, "error message!\n")
end

core.register_action('tester', {'http-req'}, tester)

HAProxy 是作为一个包安装的,因此在我的 ubuntu 系统上默认写入 /var/log/haproxy.log。这是我在日志中看到的:

Jan 25 05:47:23 ubuntu haproxy[65622]: warning message!.
Jan 25 05:47:23 ubuntu haproxy[65622]: error message!.
Jan 25 05:47:23 ubuntu haproxy[65615]: [info] 024/054723 (65622) : info message!.
Jan 25 05:47:23 ubuntu haproxy[65615]: [warning] 024/054723 (65622) : warning message!.
Jan 25 05:47:23 ubuntu haproxy[65615]: [err] 024/054723 (65622) : error message!.

我预计只有前 2 行。谁能解释为什么其他行出现在日志中以及如何配置它们?

提前致谢!

信息:

# haproxy -v
HA-Proxy version 2.2.8-1ppa1~bionic 2021/01/14 - https://haproxy.org/
Status: long-term supported branch - will stop receiving fixes around Q2 2025.
Known bugs: http://www.haproxy.org/bugs/bugs-2.2.8.html
Running on: Linux 4.15.0-134-generic #138-Ubuntu SMP Fri Jan 15 10:52:18 UTC 2021 x86_64

更新:

查看 hlua.c 源代码,我可以看到额外的 3 行是 stderr - 日志被发送到日志(绿色框)和 stderr(红色框):

【问题讨论】:

标签: lua haproxy


【解决方案1】:

我必须在 /lib/systemd/system/haproxy.service 的 ExecStart 中添加“-q”标志。现在看起来像这样:

ExecStart=/usr/sbin/haproxy -Ws -f $CONFIG -p $PIDFILE -q $EXTRAOPTS

注意:在 haproxy.cfg 的全局部分中添加“安静”对我不起作用。也许坏了?

【讨论】:

    猜你喜欢
    • 2022-05-18
    • 2014-12-24
    • 1970-01-01
    • 2019-06-05
    • 1970-01-01
    • 1970-01-01
    • 2011-06-17
    • 1970-01-01
    • 2017-10-02
    相关资源
    最近更新 更多