log_name
當使用 log
指令 寫入存取日誌時,覆寫用於請求的記錄器名稱。
當您想要根據某些條件(例如請求路徑或方法)將請求記錄到不同檔案時,此指令非常有用。
可以指定多個記錄器名稱,這樣請求的日誌會被推送到多個匹配的記錄器。
這通常與 log
指令的 no_hostname
選項配對使用,該選項可防止記錄器與任何站點區塊的主機名稱關聯,以便只有設定 log_name
的請求才會將日誌推送到該記錄器。
語法
log_name [<matcher>] <names...>
範例
您可能想要將請求記錄到不同的檔案,例如,您可能想要將健康檢查記錄與主要存取日誌分開記錄。
在 log
中使用 no_hostname
可防止記錄器與任何站點區塊的主機名稱(即此處的 localhost
)關聯,以便只有將 log_name
設定為該記錄器名稱的請求才會接收日誌。
localhost {
log {
output file ./caddy.access.log
}
log health_check_log {
output file ./caddy.access.health.log
no_hostname
}
handle /healthz* {
log_name health_check_log
respond "Healthy"
}
handle {
respond "Hello World"
}
}