2008-10-16 6 views
8

Podczas uruchamiania raportu Jasper, w którym SQL jest osadzony w pliku raportu (.jrxml), można zobaczyć SQL, który jest wykonywany? Idealnie, chciałbym również zobaczyć wartości zastępowane dla każdego z symboli zastępczych $ P {}.view SQL wykonywany przez raport Jaspera

Cheers,

Don

Odpowiedz

0

Można dostosować ustawienia log4j do logowania z systemem SQL ...

+0

Jakiś pomysł, jakie ustawienia to osiągną? –

1

Jeśli używasz MS SQL można użyć SQL Profiler, aby zobaczyć każdy zapytanie wykonywane na serwerze.

EDIT: Tutaj jest artykuł na umożliwiając rejestrowanie kwerendy SQL na serwerze MySQL: http://www.howtogeek.com/howto/database/monitor-all-sql-queries-in-mysql/

+0

Znalazłem instrukcje do włączania rejestrowania zapytań MySQL w Windows tutaj: http://dotnot.org/blog/archives/2005/01/11/query-logging-in-mysql-on-windows/ –

11

JasperReports używa Jakarta Commons Logging API. Commons Rejestrowanie ma mechanizm wykrywania, który łączy się z interfejsem API rejestrowania używanym w projekcie.

Musisz skonfigurować program rejestrujący o nazwie "net.sf.jasperreports" w pliku konfiguracyjnym rejestrowania, aby kontrolować poziom rejestrowania JasperReports.

Jeśli korzystasz z Log4j, możesz przeczytać this section dokumentacji w celu uzyskania dokładnych informacji.

Na przykład można napisać coś takiego w log4j.properties plik

log4j.logger.net.sf.jasperreports = INFO, codzienna

Gdzie "Daily" jest nazwą appender skonfigurowany w taki sam plik właściwości.

5

Inną opcją jest użycie p6spy. P6Spy jest rodzajem "sterownika JDBC proxy", który znajduje się pomiędzy aplikacją a prawdziwym sterownikiem JDBC i może rejestrować wszystko, co widzi. Powinieneś być w stanie pobrać kopię tutaj: http://www.p6spy.com/