intellij-idea - 远程调试理念不适用于 openresty
问题描述
我正在使用 mobDebug。如果从命令行运行 lua 脚本一切正常。但是当我从 openresty 运行它们时,想法并没有停止。它只写“连接/断开”配置:
location / {
access_by_lua_block {
local client = require("client")
}
客户端.lua:
local mobdebug = require("mobdebug");
mobdebug.start()
local lfs = require("lfs")
print("Folder: "..lfs.currentdir())
不为需要的行调用 modebug debug_hook,不调用 set_breakpoints。
想法调试日志,但什么也没发生:
Idea从终端client.lua捕获调试;但它错过了运行 nginx。
解决方案
这不是答案。只是我遇到了基本相同的问题,评论空间太小,无法容纳我想分享的所有相关观察:
mobdebug.start()
实际上,我能够在 nginx 中运行的代码之后立即停止,并进行单步调试——但只能在直接从init_by_lua_block
. 该代码当然在服务器启动或配置重新加载期间执行一次。- 我永远无法停止工作代码(例如
rewrite_by_lua_*
)。mobdebug.coro()
没有帮助,并mobdebug.on()
抛出了“尝试跨越 C 调用边界” - 在之后的下一个语句中,我只能停止一次
mobdebug.start()
;一旦我点击 |> (恢复程序),它就不会在任何进一步的断点处停止。
推荐阅读
- python - 优先队列。使用 python 3.7 编译时显示此错误
- php - Wordpress 嵌套简码。属性被截断
- react-native - 无法使用 UseCallback 内部的参数访问函数
- pyspark - 为什么我在使用'count'函数时在 Pyspark 中出现 py4j 错误
- c# - 使用 Puppeteersharp 从页面下载图像
- powerbi - 将 Power BI 报表生成器连接到 postgresql
- jquery - 多个选择框,使用jquery获取选定的值
- arcore - ArCore:获取通常面向平面但沿相机方向旋转的对象的姿势
- assembly - 调试迭代斐波那契(手动从 C 转换为 RISC-V)
- python - 如何在列表中找到所有连接的子列表?Python