lua-resty-vardump

一个用于 Openresty/ngx_lua 的调试工具,可以美化打印一些 Lua 值。

$ opm get lindowx/lua-resty-vardump

名称

lua-resty-vardump - 一个用于 Openresty/ngx_lua 的调试工具

描述

Vardump 是一个用于 Openresty/ngx_lua 的调试工具,可以美化打印一些 Lua 值。

概述

    local vardump = require 'resty.vardump'
    
    local my_t = {
      a = 1,
      b = "str",
      c = function ()
        return 3
      end,
      d = ngx.null,
      e = ngx.var,
      f = nil,
      g = vardump,
      h = false,
      i = tostring
    }
    
    local my_num_var = 12345
    local my_str_var = "hello, world"
    local my_arr_var = {"a", "b"} 
    
    vardump.dump(my_t, my_num_var, my_str_var, my_arr_var)
    
    vardump.depth(1).dd(my_t)
    
    ngx.print('This line will not be executed')

输出

!截图

方法

dump

语法: vardump.dump(...)

美化打印给定的值。

dd

语法: vardump.dd(...)

美化打印给定的值,然后停止代码执行。

depth

语法: vardump.depth(max_depth)

设置转储 Lua 值时的最大遍历深度。

最大深度的默认值为 15。

属性

html

语法: vardump.html = false

>默认值: true

设置打印模式。

true: 以 HTML 格式打印。

false: 以纯文本格式打印。

send_content_type_header

语法: vardump.send_content_type_header = fase

>默认值: true

true: 在输出转储之前发送 HTTP 响应头 Content-Type: text/html

false: 不会发送头。

安装

Luarocks

    luarocks install lua-resty-vardump

手动

从 releases 页面下载包,然后将 lib/resty 目录解压到 Lua 库目录。

        # nginx.conf
        http {
            lua_package_path "/path/to/lua-lib-dir/?.lua;;";
            ...
        }

确保运行 Nginx “worker” 进程的系统帐户具有足够的权限读取 .lua 文件。

作者

Zhiqiang Lan (lindowx)

许可证

mit

版本