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日志格式
可以看到日志格式已经是我们指定的格式了。