Перейти к основному содержимому

OpenResty

Логирование и отладка

  • Отключение луа кеша, чтобы изменения применялись мгновенно lua_code_cache off;
  • docker compose exec nginx -s reload при обновлении .conf или .lua файлов (если кеш включен)
  • tail -fn 100 /path_to/error.log
  • Стандартный уровень логгинга в рести принтит ngx.STDERR ngx.EMERG ngx.ALERT ngx.CRIT ngx.ERR, а ngx.WARN ngx.NOTICE ngx.INFO ngx.DEBUG нет. Как мне мне, то лучше для error.log делать level warn, ибо ниже там флуд и говно

Notes

Ссылка по частям. Тут не хватает ngx.var.args и мб ngx.req.get_uri_args(). Еще с args

local full_url = ngx.var.scheme.."://"..ngx.var.http_host..ngx.var.request_uri
if ngx.var.query_string ~= nil then
full_url = full_url.."?"..ngx.var.query_string
end
ngx.say(full_url)

Функции времени. Есть еще. Ниже ссылка на extra TIME locations

os.time() == ngx.time() == 1678064879
ngx.today() == "2023-03-06"
ngx.localtime() == "2023-03-06 01:07:59"
ngx.now() == 1678064879.458

Ссылки