The correct property name is this:

log4j.logger.org.apache.cayenne.log.JdbcEventLogger=WARN

Otherwise, you can do it programmatically for log4j too.

Logger.getLogger(JdbcEventLogger.class).setLevel(Level.WARN);


On Sun, Feb 1, 2026 at 9:34 AM Robert A. Decker <[email protected]>
wrote:

> I'm on cayenne 4.2 running in spring.
>
> I'm building my server runtime in code so that I can have my own pk
> generator (see below).
>
> I have the following application property which seems to be ignored:
> log4j.logger.org.apache.cayenne.access.QueryLogger = WARN
>
> Since I'm building the runtime by hand do I also need to create my own
> logger?
>
> In my logfiles, it's logging at level INFO, with the logger interface
> org.apache.cayenne.log.JdbcEventLogger.
> 2026-02-01T16:24:50.986+01:00  INFO 13688 --- [ai] [   scheduling-1]
> org.apache.cayenne.log.JdbcEventLogger   : === returned 0 rows. - took 18
> ms.
>
> Rob
>
> cayenneRuntime = ServerRuntime.builder()
>         .addConfig("cayenne-project.xml")
>         .addModule(binder ->
>                 ServerModule.contributePkGenerators(binder)
>                         .put(MySQLAdapter.class.getName(),
> SmsPkGenerator.class))
>         .dataSource(DataSourceBuilder
>
> .url(environment.getProperty("org.apache.cayenne.datasource.jdbc.url"))
>
> .driver(environment.getProperty("org.apache.cayenne.datasource.jdbc.driver"))
>
> .userName(environment.getProperty("org.apache.cayenne.datasource.jdbc.username"))
>
> .password(environment.getProperty("org.apache.cayenne.datasource.jdbc.password"))
>
> .pool(Integer.parseInt(Objects.requireNonNull(environment.getProperty("org.apache.cayenne.datasource.jdbc.minConnections"))),
>
> Integer.parseInt(Objects.requireNonNull(environment.getProperty("org.apache.cayenne.datasource.jdbc.maxConnections"))))
>                 .build())
>         .build();
>
  • logging Robert A. Decker
    • Re: logging John Huss

Reply via email to