Code coverage is either a key metric or a terrible distraction depending on who you ask. We favor code coverage as a useful indicator but not the only indicator.
Java has a rough history with logging. Over the years, several new standards and "de-facto" standards have been created, yet most older standards remain in use. Yes, all of these come into play once a Java app gets big and deals with enough external dependencies. Yes, they conflict with each other. Yes, this is terrible.
Though, there's a way to make it all work.