kong配置日志格式

简介

今天想优化一下生产kong的日志格式,所以就有了这篇文章,就是记录下,防止以后忘记

操作

首先拷贝容器中

/usr/local/share/lua/5.1/kong/templates/nginx_kong.lua

这个文件

之后修改内容

charset UTF-8;

下面添加

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
log_format  json  '{ "access_time": "$time_local", '
                     '"remote_addr": "$remote_addr", '
                     '"remote_user": "$remote_user", '
                     '"body_bytes_sent": "$body_bytes_sent", '
                     '"request_time": "$request_time", '
                     '"status": "$status", '
                     '"request": "$request", '
                     '"request_method": "$request_method", '
                     '"http_referrer": "$http_referer", '
                     '"body_bytes_sent":"$body_bytes_sent", '
                     '"http_x_forwarded_for": "$http_x_forwarded_for", '
                     '"http_user_agent": "$http_user_agent" }';

也就是你要定义的日志格式,这里我就直接定义成为json的

接着继续在这个文件中搜索access_log,在下面这段最后加上json

1
2
3
4
5
6
7
8
9
server {
    server_name kong;
> for i = 1, #proxy_listeners do
    listen $(proxy_listeners[i].listener);
> end
    error_page 400 404 408 411 412 413 414 417 494 /kong_error_handler;
    error_page 500 502 503 504 /kong_error_handler;

    access_log ${{PROXY_ACCESS_LOG}} json; # <--就是这里

这样你的access_log就自定义为json格式了

欢迎关注我的博客 www.bboy.app

Have Fun