gpt4 book ai didi

linux - lighttpd access.log appeng 带有前缀主机名,如 hostname-access.log

转载 作者:太空宇宙 更新时间:2023-11-04 04:21:06 26 4
gpt4 key购买 nike

我们在 loadbalncer 后面有多个服务器,我们希望每台机器的访问日志都以在 lighttpd 中使用 accesslog 访问前缀作为主机名的方式。

例如:

192.168.1.1-access.log192.168.1.2-access.log

我尝试使用 include_shell 参数并使用 hostname.sh 编写脚本,但它不符合我的目的。

最佳答案

我认为您可能试图使这个问题变得过于复杂,您能不能只执行以下操作?

$SERVER["socket"] == “192.168.1.1:80″ {
accesslog.filename = "/var/log/lighttpd/192.168.1.1-access.log"
}

您还提到您在使用 include_shell 时遇到问题,请尝试以下操作

lighttpd.conf

include_shell "/etc/lighttpd/scripts/servername.sh"
accesslog.filename = "/var/log/lighttpd/" + var.servername + "-access.log"

scripts/servername.sh - 主机名

#!/bin/bash
echo 'var.servername="'$(uname -n)'"'

或者

scripts/servername.sh - 用于 IP 地址

#!/bin/bash
echo 'var.servername="'$(/sbin/ifconfig | sed -n '2 p' | awk '{print $2}' | sed s/addr://g)'"'

(更改 sed 和 awk 参数以在多个接口(interface)上获取正确的 IP)

这会给你你正在寻找的东西。

或者只需将 cat accesslog.filename = "/var/log/lighttpd/"+uname -n+ "-access.log" 添加到配置文件的末尾即可获得廉价且肮脏的解决方案。

关于linux - lighttpd access.log appeng 带有前缀主机名,如 hostname-access.log,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13174622/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com