这些都是常量, 越往上等级越高。
函数原型
ngx.log(level, …)
基本都是在content阶段使用
示例
ngx.log(ngx.ERR, “num:”, num)
ngx.log(ngx.INFO, ” string:”.. str)
注意:print语句是INFO级别
lua中日志完成了, 那如何设置日志格式,日志格式呢, 那就需要使用nginx本身的log_format 进行设置了
log_format 属于 ngx_http_log_module
log_format main ‘remoteaddr−remote_user [timelocal]"request” ’
‘statusbody_bytes_sent “httpreferer”′‘”http_user_agent" "$http_x_forwarded_for”’;
这是我使用的日志格式
语法:
log_format name [escape=default|json|none] string …;
默认的log_format 为
log_format combined ‘remoteaddr−remote_user [timelocal]′‘”request" statusbody_bytes_sent ’
‘”httpreferer""http_user_agent”’;
现在开始设置日志输出level, 那如何设置日志级别呢, 那就需要使用nginx本身的error_log进行设置了,
error_log属于ngx_core_module
示例:
error_log logs/error.log error;
语法:
error_log file [level];
默认的error_log为
error_log logs/error.log error;
上下文为:
main, http, mail, stream, server, location
level 等级
debug, info, notice, warn, error, crit, alert, emerg
大于等于设置等级的日志均会被记录
若要设置debug level则在编译的时候添加–with-debug 即 ./configure –with-debug
即:
error_log /opt/app/openresty/nginx/logs/error.log info;