2008-10-16 2 views
8

При запуске отчета Jasper, в котором SQL встроен в файл отчета (.jrxml), можно ли увидеть SQL-запрос, который выполняется? В идеале я также хотел бы видеть значения, которые заменяются для каждого из $ P {} заполнителей.просмотр SQL, выполненный отчет Jasper

Cheers,

Дон

ответ

0

Вы можете настроить параметры log4j для входа бегущего SQL ...

+0

Любая идея, какие настройки достигнут этого? – 2008-10-16 17:10:27

1

Если вы используете MS SQL можно использовать SQL Profiler, чтобы увидеть каждый запрос выполненных на сервере.

EDIT: Вот статья о включении SQL протоколирование запросов на сервере MySql: http://www.howtogeek.com/howto/database/monitor-all-sql-queries-in-mysql/

+0

Я нашел инструкции для включения регистрации запросов MySQL в окнах здесь: http://dotnot.org/blog/archives/2005/01/11/query-logging-in-mysql-on-windows/ – 2008-10-16 18:31:01

11

JasperReports использует Jakarta Commons Logging API. Commons Logging имеет механизм обнаружения, который подключается к API ведения журнала, который вы используете в своем проекте.

Для настройки уровня ведения журнала JasperReports вам необходимо настроить регистратор с именем «net.sf.jasperreports» в файле конфигурации ведения журнала.

Если вы используете Log4j, вы можете прочитать this section документацию для получения точной информации.

Например, вы можете написать что-то вроде этого в файл log4j.properties

log4j.logger.net.sf.jasperreports = INFO, ежедневная

Где "Daily" это имя из Appender сконфигурировано в то же файл свойств.

5

Другой вариант - использовать p6spy. P6Spy - это своего рода «прокси-драйвер JDBC», который находится между приложением и реальным драйвером JDBC, и он может регистрировать все, что он видит. Вы должны быть в состоянии скачать копию здесь: http://www.p6spy.com/

Смежные вопросы