Creating a unified logging schema for the JVM was introduced in Java 9. Here is a comprehensive list of the goals of that effort:
- To create a JVM-wide set of command line options for all logging operations
- To use categorized tags for logging
- To permit messages to have multiple tags, also referred to as tag sets
- To provide six levels of logging:
- Error
- Warning
- Information
- Debug
- Trace
- Develop
- To select which messages are logged based on levels
- To optionally direct logging to the console or a file:
- Print one line at a time and do not support interleaving within the same line
- To permit the output of multiple line logs (non-interleaved)
- To format all logging messages so that they are easily human-read
- To add decorations such as uptime, level, and tags
- Like levels, to select which messages are logged based on decorations
- To convert pre-Java 9 tty>print logging...