kong網關默認日誌在/usr/local/kong/logs,主要有access.log,admin_access.log,error.log,access.log和nginx的access日誌類似,這裏會記錄所所有通過kong網關的日誌,默認的access.log格式爲:
這裏默認的日誌格式不能滿足需求,需要制定access.log 的日誌格式。
kong網關的配置文件加載過程
kong網關啓動時,通過模板渲染的方式生成nginx.conf文件,在/usr/local/kong目錄下有兩個文件,
可以看到nginx.conf文件include了nginx-kong.conf文件,而nginx-kong.conf文件就是通過渲染方式得到,每次kong start,都會根據/etc/kong/kong.conf文件和模板生成。主要用到lua第三方庫penlight,具體細節不詳。
但是這裏的模板呢?
查看kong源碼可以看到目錄結構templates下的nginx_kong.lua文件,修改這個文件可以生成自定義的nginx-kong.conf文件。
- linux下查看nginx_kong.lua文件路徑
find -name kong
nginx_kong.lua文件修改
- 指定你自定義的log_fromat
- 修改access.log文件配置
main這裏是我們定義的log_format.
重啓kong,查看access.log日誌格式
可以看到日誌格式已經是我們指定的格式了。