Currently if the Spring fails to autowire a bean due to failed conditions (such as with autoconfiguration) the normal log message will only tell the name of missing bean.

It would be nice if spring also mentioned all potential candidates with list of failed preconditions (transitively).

This can be currently indirectly obtained by increasing logging level of org.springframework.boot.autoconfigure to TRACE but requires a lot of manual digging.

Comment From: philwebb

This would indeed be nice but unfortunately it's quite challenging for us to achieve. The injection algorithm used by Spring can be quite complex and since bean definitions registered for non-matching conditions we don't have a good way to find the candidates. Running your app with --debug will produce an auto-configuration report which can help when working out why a bean wasn't created.