Web-Server

為什麼主機名從 HAProxy 系統日誌消息中截斷

  • March 18, 2016

這是我的 haproxy 日誌記錄的一部分,我在其中定位 sysloga 並遠端登錄到 papertrail,使用log-send-hostname在日誌消息中提示主機名的選項而不是localhost

global
 log logs2.papertrailapp.com:12345   local0
 log 127.0.0.1   local1 info
 log-send-hostname

日誌消息範例:

Aug 11 01:43:21 messaging-service-proxy-staging haproxy[10496]: 50.242.120.110:49337 [11/Aug/2015:01:43:21.436] http test-backend/elb 4/0/1/5/10 404 487 - - ---- 0/0/0/0/0 0/0 "GET / HTTP/1.1"

Aug 11 01:43:21 messaging-service-proxy-staging haproxy[10496]: 50.242.120.110:49338 [11/Aug/2015:01:43:21.606] http test-backend/elb 4/0/1/6/11 404 487 - - ---- 0/0/0/0/0 0/0 "GET / HTTP/1.1"

所以記錄的主機名是messaging-service-proxy-staging,而主機名是messaging-service-proxy-staging-vpc1

預設情況下,haproxy 似乎只保留主機名值的 32 個字元。development-haproxy.limecraft.c 有 31 但最後也有 ‘\0’ 。通過在 haproxy.cfg 的前端部分更改此配置行,我能夠記錄更長的主機名:

擷取請求頭 Host len 50

引用自:https://serverfault.com/questions/713216