Java historically has had so many logging frameworks it needs logging framework adapters to deal with the problem that in any significant program you will end up with dependencies that log in incompatible ways :/
It probably has the most complex and messy logging story of any language - but at least the solutions are very mature at this point.
I prefer Log4J2 built-in JSON Template Layout to Logback's various JSON output solution.
The API of Log4J2 and SLF4J v2 are similar enough that it does not matter for basic usage, I don't see the benefit of SLF4J in a project that's already using Log4J2.