# log4j v1_2_17 helpers/LogLog.java: the library's own diagnostics, "log4j:WARN ", "log4j:ERROR " and debug's "log4j: "
# captured: log4j 1.2.17 with no configuration
log4j:WARN No appenders could be found for logger (app.db). ⇒ {"rule": "log4j", "level": "warn", "name": "", "message": "No appenders could be found for logger (app.db)."}
log4j:WARN Please initialize the log4j system properly. ⇒ {"rule": "log4j", "level": "warn", "name": "", "message": "Please initialize the log4j system properly."}
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. ⇒ {"rule": "log4j", "level": "warn", "name": "", "message": "See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info."}
# with log4j.debug set, and the errors a bad configuration prints
# constructed log4j: Trying to find [log4j.xml] using context classloader sun.misc.Launcher$AppClassLoader@18b4aac2. ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Trying to find [log4j.xml] using context classloader sun.misc.Launcher$AppClassLoader@18b4aac2."}
# constructed log4j: Using URL [file:/srv/acme/log4j.properties] for automatic log4j configuration. ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Using URL [file:/srv/acme/log4j.properties] for automatic log4j configuration."}
# constructed log4j: Parsing for [root] with value=[DEBUG, stdout]. ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Parsing for [root] with value=[DEBUG, stdout]."}
# constructed log4j: Level token is [DEBUG]. ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Level token is [DEBUG]."}
# constructed log4j: Category root set to DEBUG ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Category root set to DEBUG"}
# constructed log4j: Finished configuring. ⇒ {"rule": "log4j", "level": "debug", "name": "", "message": "Finished configuring."}
# constructed log4j:ERROR Could not find value for key log4j.appender.file ⇒ {"rule": "log4j", "level": "error", "name": "", "message": "Could not find value for key log4j.appender.file"}
# constructed log4j:ERROR Could not instantiate appender named "file". ⇒ {"rule": "log4j", "level": "error", "name": "", "message": "Could not instantiate appender named \"file\"."}
# constructed log4j:ERROR setFile(null,true) call failed. ⇒ {"rule": "log4j", "level": "error", "name": "", "message": "setFile(null,true) call failed."}
# constructed log4j:WARN No such property [conversionPattern] in org.apache.log4j.PatternLayout. ⇒ {"rule": "log4j", "level": "warn", "name": "", "message": "No such property [conversionPattern] in org.apache.log4j.PatternLayout."}
# constructed log4j:WARN Continuable parsing error 2 and column 30 ⇒ {"rule": "log4j", "level": "warn", "name": "", "message": "Continuable parsing error 2 and column 30"}
# constructed log4j:ERROR Either File or DatePattern options are not set for appender [daily]. ⇒ {"rule": "log4j", "level": "error", "name": "", "message": "Either File or DatePattern options are not set for appender [daily]."}
# constructed log4j: rail=13.65V ⇒ {"rule": "log4j+kv", "level": "debug", "name": "", "message": "rail=13.65V", "values": [["rail", 13.65, "V"]]}
# the layouts log4j prints records with, other loggers, and prose
0 [main] DEBUG app.db  - debug message ⇒ {"rule": "layout", "level": "debug", "name": "app.db", "message": "debug message"}
DEBUG - debug message ⇒ {"rule": "level-word", "level": "debug", "message": "debug message"}
# constructed log4j:INFO not a word LogLog prints ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j:INFO not a word LogLog prints"}
# constructed log4j:FATAL not a word LogLog prints ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j:FATAL not a word LogLog prints"}
# constructed log4j:WARNING not a word LogLog prints ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j:WARNING not a word LogLog prints"}
# constructed log4j:warn lower case ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j:warn lower case"}
# constructed log4j2:WARN another library ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j2:WARN another library"}
# constructed the log4j:WARN lines mean no appender is set ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "the log4j:WARN lines mean no appender is set"}
# constructed log4j:ERROR ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j:ERROR"}
# constructed log4j.properties: not found ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "log4j.properties: not found"}
