diff --git a/apisix/cli/ngx_tpl.lua b/apisix/cli/ngx_tpl.lua index 4b4d94681ad2..87ac17bec01a 100644 --- a/apisix/cli/ngx_tpl.lua +++ b/apisix/cli/ngx_tpl.lua @@ -365,8 +365,12 @@ http { log_format main escape={* http.access_log_format_escape *} '{* http.access_log_format *}'; uninitialized_variable_warn off; + {% if http.access_log_buffer then %} + access_log {* http.access_log *} main buffer={* http.access_log_buffer *} flush=3; + {% else %} access_log {* http.access_log *} main buffer=16384 flush=3; {% end %} + {% end %} open_file_cache max=1000 inactive=60; client_max_body_size {* http.client_max_body_size *}; keepalive_timeout {* http.keepalive_timeout *}; diff --git a/conf/config-default.yaml b/conf/config-default.yaml index 06640900ca61..696ad8affa48 100755 --- a/conf/config-default.yaml +++ b/conf/config-default.yaml @@ -212,6 +212,7 @@ nginx_config: # Config for render the template to generate n http: enable_access_log: true # Enable HTTP proxy access logging. access_log: logs/access.log # Location of the access log. + access_log_buffer: 16384 # buffer size of access log. access_log_format: "$remote_addr - $remote_user [$time_local] $http_host \"$request\" $status $body_bytes_sent $request_time \"$http_referer\" \"$http_user_agent\" $upstream_addr $upstream_status $upstream_response_time \"$upstream_scheme://$upstream_host$upstream_uri\"" # Customize log format: http://nginx.org/en/docs/varindex.html access_log_format_escape: default # Escape default or json characters in variables.