Довольно часто при разборе проблем с проектами в контурах заказчика мы сталкиваемся с необходимостью использовать отладчик. Одним из типичных сценариев является, например, падение, при котором генерится coredump, и в дальнейшем мы используем его, чтобы разобраться с причиной падения. При этом у нас нет возможности использовать код самого Tarantool, а некоторые типовые для Тарантула действия просто неудобно делать, если использовать только базовый функционал отладчика.
К счастью, в отладчике предусмотрен механизм, с помощью которого можно расширить его возможности и упростить отладку. К тому же, зачастую по соображениям безопасности мы не имеем прямого доступа, собственно, к «корке» и вынуждены работать с ней удаленно, что также требует максимального упрощения взаимодействия с отладчиком для минимизации ошибок.
В частности, нам нужен удобный способ, для:
* работы с файберами: список, стек вызовов произвольного (не текущего) файбера;
* работы с различными списками: итерирование, просмотр/поиск элементов;
* просмотра msgpack с тарантульными расширениями;
* просмотра тапла и его формата;
* различных манипуляций с виртуальной машиной LuaJIT.