JDBC Logging & log4j
От | Dave Cramer |
---|---|
Тема | JDBC Logging & log4j |
Дата | |
Msg-id | 008601c1cd2f$b9c643e0$807ba8c0@inspiron обсуждение исходный текст |
Ответ на | Re: Fix to driver to handle errors correctly (Hans Deragon <hans@deragon.biz>) |
Ответы |
Re: JDBC Logging & log4j
Re: JDBC Logging & log4j |
Список | pgsql-jdbc |
A number of people have asked about logging in the driver, and specifically about the use of log4j. There are a number of issues with this. 1) It means that we have to have another jar, and likely include in the distribution. For folks that don't use java this is a burden. Think of it this way, do you want to download a bunch of perl modules with the driver so you can use jdbc? 2) log4j uses a propery file to load it's configuration and it seems there are some *very* creative ways to load database drivers out there which do not load the log4j properties correctly. 3) Regardless of how fast log4j is or isn't it is still will slow the driver down. And as Hans pointed out java has no preprocessing so we either get logging in there or not. 4) log4j does facilitate changing the loglevel at runtime instead of compile time, but we still run into issues where we have to create a string object to log whereas now we don't so code like: foo(getInfofrombackend()) Becomes String msg = getInfofrombackend(); logger.debug(msg); foo(msg); So the question is: Do we want to put logging in the driver? Why? How much? At what cost? I have given some thought to question 1) above and we could use a pluggable logger so that log4j could be used if configured or, there would be a default logger. However this would only slow things down even more. Dave
В списке pgsql-jdbc по дате отправления: