OpenResty XRay YLua Analyzer
关于 YLua 分析器
YLua 分析器让你能够用 Lua 的语法来写 Lua 分析器。很多时候,我们希望能够确认 Lua 的表中到底有哪些数据,数据的值是什么。这时候 YLua 分析器就可以派上用场。
YLua 分析器实例
下面的例子输出了 resty.core.regex 中缓存的正则表达式。
probe process.begin
local max_output_cnt = 1000
local regex = package.loaded["resty.core.regex"]
local regex_match_cache = upval(regex.re_match_compile, "regex_match_cache")
if regex_match_cache ~= nil then
local match_regex_cache_count = 0
for key, _ in pairs(regex_match_cache.key2node) do
if match_regex_cache_count < max_output_cnt then
print("match-pattern: ", key)
end
match_regex_cache_count = match_regex_cache_count + 1
end
print("match_regex_cache_count: ", match_regex_cache_count)
end
exit()
end
执行该工具后,我们得到如下的输出:
在 YLua 标签栏的右边有 Learn YLua
快捷链接指向 YLua 的用户手册。用户可以点击
该链接查询 YLua 的语法和功能说明。