OpenResty XRay YLua Analyzer
YLua 分析器讓你能夠用 Lua 的語法來寫 Lua 分析器。很多時候,我們希望能夠確認 Lua 的表中到底有哪些資料,資料的值是什麼。這時候 YLua 分析器就可以派上用場。 下面的例子輸出了 resty.core.regex 中快取的正則表示式。
關於 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 的語法和功能說明。