概述
kong 网关日志格式修改
kong网关默认日志在/usr/local/kong/logs,主要有access.log,admin_access.log,error.log,access.log和nginx的access日志类似,这里会记录所所有通过kong网关的日志。
有些时候这些日志并不能满足我们的需要,因此需要修改日志格式。
当发现/usr/local/kong/下面有nginx-kong.conf,nginx.conf,nginx-kong-stream.conf这些配置文件时,以为这就是日志的配置文件,结果不管怎么修改这些日志格式,重启后,配置文件都会还原。
最后查询原因才得知,这些文件时kong网关启动时通过模板渲染方式生成的,每次重启都会重新生成,而真正的配置文件却在另外一个地方。
这里要介绍下kong的安装方式:
本文的服务器环境为ubuntu,安装请参考:https://docs.konghq.com/install/ubuntu/
一、修改配置
修改路径:/usr/local/share/lua/5.1/kong/templates/nginx_kong.lua
upstream kong_upstream {
server 0.0.0.1;
balancer_by_lua_block {
Kong.balancer()
}
# injected nginx_http_upstream_* directives
> for _, el in ipairs(nginx_http_upstream_directives) do
$(el.name) $(el.value);
> end
}
###添加log_format日志格式
log_format main 'remote_addr=[$remote_addr] http_x_forward=[$http_x_forwarded_for] time=[$time_local] request=[$request] '
'status=[$status] byte=[$bytes_sent] elapsed=[$request_time] upstream_connect_time=[$upstream_connect_time] upstream_header_time=[$upstream_header_time] upstream_response_time=[$upstream_response_time] ' 'refer=[$http_referer] ua=[$http_user_agent] gzip=[$gzip_ratio] ' 'msec=[$msec] http_host=[$http_host] http_accept=[$http_accept|$http_accept_encoding|$http_accept_language]';
###
server {
server_name kong;
> for i = 1, #proxy_listeners do
listen $(proxy_listeners[i].listener);
修改完上面的配置后,还需要在同一个配置文件中添加两处配置,见下面操作:
#修改两处access.log文件配置
·····第一处配置·····
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}} main; ##此行结尾处添加main
error_log ${{PROXY_ERROR_LOG}} ${{LOG_LEVEL}};
client_body_buffer_size ${{CLIENT_BODY_BUFFER_SIZE}};
··················
······第二处配置·····
if #admin_listeners > 0 then
server {
server_name kong_admin;
> for i = 1, #admin_listeners do
listen $(admin_listeners[i].listener);
> end
access_log ${{ADMIN_ACCESS_LOG}} main; ##此行结尾处添加main
error_log ${{ADMIN_ERROR_LOG}} ${{LOG_LEVEL}};
······
二、重启kong,查看access.log日志格式
执行下面命令重启kong# kong reload /etc/kong/kong.conf
查看日志:
remote_addr=[39.96.130.100] http_x_forward=[118.74.245.171, 112.124.159.116] time=[17/Oct/2019:18:32:27 +0800] request=[GET /coach_core/api/v2/klass/node?app_version=2.5.4&coach_id=39709c50-a793-11e9-959e-49d70ecedf82&device_name=iPad%20mini%204&device_system=iOS13.1.2&device_type=2&end_date=2020-02-17&start_date=2019-10-17&time_zone=8 HTTP/1.1] status=[200] byte=[1762] elapsed=[0.018] upstream_connect_time=[0.000] upstream_header_time=[0.012] upstream_response_time=[0.012] refer=[-] ua=[KPL_teacher_appstore/2.5.4 (iPad; iOS 13.1.2; Scale/2.00)] gzip=[-] msec=[1571308347.571] http_host=[p.coach.kuaipeilian.com] http_accept=[application/vnd.lumen.v1+json|gzip, deflate|zh-Hans-CN;q=1]
接下来我们就可以对日志进行进一步处理了。
最后
以上就是坚强抽屉为你收集整理的kong 网关日志格式修改kong 网关日志格式修改的全部内容,希望文章能够帮你解决kong 网关日志格式修改kong 网关日志格式修改所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复