# Drakulix/simplelog.rs v0.12.2 src/loggers/logging.rs: the time, the level in brackets, then by
# level the thread in parentheses, the target and the location; captured with the defaults and
# with the target at every level. A line with none of those reads as a configured layout.
00:16:51 [TRACE] (1) simplelog_default: [src/bin/simplelog_default.rs:18] trace msg ⇒ {"rule": "simplelog", "level": "trace", "name": "simplelog_default", "message": "trace msg", "values": [], "prefixed": true, "file": "src/bin/simplelog_default.rs", "line": 18, "device_ns": null}
00:16:51 [DEBUG] (1) simplelog_default: debug msg ⇒ {"rule": "simplelog", "level": "debug", "name": "simplelog_default", "message": "debug msg", "values": [], "prefixed": true, "device_ns": null}
17:16:51 [ERROR] myapp::db: error msg: connection refused ⇒ {"rule": "simplelog", "level": "error", "name": "myapp::db", "message": "error msg: connection refused", "values": [], "prefixed": true, "device_ns": null}
17:16:51 [DEBUG] (1) simplelog_default: [src/bin/simplelog_default.rs:19] debug msg ⇒ {"rule": "simplelog", "level": "debug", "name": "simplelog_default", "message": "debug msg", "values": [], "prefixed": true, "file": "src/bin/simplelog_default.rs", "line": 19, "device_ns": null}
17:16:51 [INFO] [src/bin/simplelog_default.rs:20] info msg ⇒ {"rule": "layout", "level": "info", "message": "info msg", "file": "src/bin/simplelog_default.rs", "line": 20}
17:16:51 [ERROR] [src/bin/simplelog_default.rs:22] error msg: connection refused ⇒ {"rule": "layout", "level": "error", "message": "error msg: connection refused", "file": "src/bin/simplelog_default.rs", "line": 22}
17:16:51 [INFO] (1) info msg ⇒ {"rule": "simplelog", "level": "info", "name": "", "message": "info msg", "values": [], "prefixed": true, "device_ns": null}
17:16:51 [WARN] (1) warn msg ⇒ {"rule": "simplelog", "level": "warn", "name": "", "message": "warn msg", "values": [], "prefixed": true, "device_ns": null}
2026-10-21T17:16:51.919641-07:00 [TRACE] (1) simplelog_default: [src/bin/simplelog_default.rs:18] trace msg ⇒ {"rule": "simplelog", "level": "trace", "name": "simplelog_default", "message": "trace msg", "values": [], "prefixed": true, "file": "src/bin/simplelog_default.rs", "line": 18, "device_ns": null}
2026-10-21T17:16:51.919673-07:00 [DEBUG] (1) simplelog_default: debug msg ⇒ {"rule": "simplelog", "level": "debug", "name": "simplelog_default", "message": "debug msg", "values": [], "prefixed": true, "device_ns": null}
# constructed 00:16:51 [ INFO] (main) acme::pump: left padded level and a thread name ⇒ {"rule": "simplelog", "level": "info", "name": "acme::pump", "message": "left padded level and a thread name", "values": [], "prefixed": true, "device_ns": null}
# constructed 00:16:51 [WARN ] acme::pump: right padded level ⇒ {"rule": "simplelog", "level": "warn", "name": "acme::pump", "message": "right padded level", "values": [], "prefixed": true, "device_ns": null}
# constructed 00:16:51 [ERROR] acme::net::tcp: [src/net/tcp.rs:88] all three ⇒ {"rule": "simplelog", "level": "error", "name": "acme::net::tcp", "message": "all three", "values": [], "prefixed": true, "file": "src/net/tcp.rs", "line": 88, "device_ns": null}
# constructed 00:16:51 [DEBUG] (7)  ⇒ {"rule": "simplelog", "level": "debug", "name": "", "message": "", "values": [], "prefixed": true, "device_ns": null}
# constructed 00:16:51 [INFO] (2) pump: rail=13.65V ⇒ {"rule": "simplelog+kv", "level": "info", "name": "pump", "message": "rail=13.65V", "values": [["rail", 13.65, "V"]], "prefixed": true, "device_ns": null}
00:16:51 [INFO] info msg ⇒ {"rule": "layout", "level": "info", "message": "info msg"}
17:16:51 [INFO] simplelog_default: info msg ⇒ {"rule": "layout", "level": "info", "name": "simplelog_default", "message": "info msg"}
2026-10-21T17:16:51.919688-07:00 [INFO] info msg ⇒ {"rule": "layout", "level": "info", "message": "info msg"}
# constructed 00:16:51 [NOTICE] (1) unknown level ⇒ {"rule": "layout", "level": "info", "message": "(1) unknown level"}
# constructed 00:16:51 INFO (1) no brackets ⇒ {"rule": "layout", "level": "info", "message": "(1) no brackets"}
# constructed 00:16:51 [info] (1) lower case level ⇒ {"rule": "layout", "level": "info", "message": "(1) lower case level"}
# constructed [INFO] (1) no time ⇒ {"rule": "level-word", "level": "info", "message": "(1) no time"}
# constructed 00:16:51 [INFO]  (1) two spaces ⇒ {"rule": "layout", "level": "info", "message": "(1) two spaces"}
# constructed 0:16:51 [INFO] (1) one digit hour ⇒ {"rule": "plain", "level": "info", "message": "0:16:51 [INFO] (1) one digit hour"}
# constructed The 00:16:51 [INFO] (1) inside a sentence ⇒ {"rule": "plain", "level": "info", "message": "The 00:16:51 [INFO] (1) inside a sentence"}
# constructed 00:16:51 [TRACE] (3) acme::net: [src/net.rs:12] a thread id, a path and a location ⇒ {"rule": "simplelog", "level": "trace", "name": "acme::net", "message": "a thread id, a path and a location", "values": [], "prefixed": true, "file": "src/net.rs", "line": 12, "device_ns": null}
# constructed 00:16:51 [ERROR] (worker-1) pump: a thread name ⇒ {"rule": "simplelog", "level": "error", "name": "pump", "message": "a thread name", "values": [], "prefixed": true, "device_ns": null}
# src/config.rs Config::default(): `time_offset: UtcOffset::UTC`, so a time printed alone is UTC
# constructed 00:16:51 [ERROR] (1) pump: stalled ⇒ {"rule": "simplelog", "level": "error", "name": "pump", "stamp": "00:16:51Z", "message": "stalled"}
# constructed 2026-10-21T17:16:51.919641-07:00 [ERROR] (1) pump: stalled ⇒ {"rule": "simplelog", "level": "error", "name": "pump", "stamp": "2026-10-21T17:16:51.919641-07:00", "message": "stalled"}
