SQL-запросы в Mac OSX

304
Thomas Junk

В нашем магазине мы имеем неоднородную среду и делаем Java на разных компьютерах - в основном Mac OSX, я на Linux и один Windows. Когда дело доходит до отладки JPQL-запросов и их SQL-результатов, необходимо читать простой SQL . Я нашел одну возможность в использовании _general_log_ в msql и позволил серверу вести журнал запросов. Но я ленивый разработчик, поэтому я подумал о более быстром подходе к получению прямых результатов .

На моем Linux-боксе я просто strace -p $CATALINAsPID -f -q - s 9999 - e sendtoи позволю своему запросу выполняться. sendtoсистемный вызов, который содержит простой SQL .

Я хотел сделать то же самое для Mac OSX и нашел dtruss(fassade для dtrace ?), Который делает подобные вещи, как strace. Поэтому я попытался сузить его sendto(аналог Linux) - но безуспешно.

Как работает dtruss, соответственно: как мне отследить простой SQL ?

0

1 ответ на вопрос

0
Thomas Junk

Я нашел хакерский способ, чтобы получить то, что я хочу: просто напишите сценарий dtrace, как:

syscall::sendto:entry /pid == $setPIDHere/ { tracemem((copyin(arg1, arg2)),9999); } 

И захватить результат. Хаки, но работает

Похожие вопросы