You could use AOP to wrap the getKey method and log it that way. I don't see any use of logging in the class itself. Keep in mind that you don't have to use the FactoryBean to configure it. You could wire up the SimpleJobRepository yourself with the 3 DAOs you need and their incrementers, there's examples of this in the docs. However, even if you don't do that you can use aop to add logging. (You could also put a break point around getKey()).
Stupid error (as always).
My BATCH_JOB_SEQ table (used by MySQLMaxValueIncrementer) didn't have any rows.
MySQLMaxValueIncrementer is expecting 1 row, and updates it to simulate a sequence (and update with no rows won't throw any exceptions and "last_insert_id()" returns 0).
Thanks for your time and patience lucasward.