# Adafruit_CircuitPython_Logging 5.6.4 adafruit_logging.py Handler.format(): f"{record.created:<0.3f}: {record.levelname} - {record.msg}", created by time.monotonic()
# constructed 3.014: ERROR - Error message ⇒ {"rule": "circuitpython", "level": "error", "name": "", "device_ns": 3014000000, "message": "Error message", "prefixed": true}
# constructed 0.250: INFO - Info message ⇒ {"rule": "circuitpython", "level": "info", "name": "", "device_ns": 250000000, "message": "Info message"}
# constructed 12345.678: WARNING - low battery ⇒ {"rule": "circuitpython", "level": "warn", "name": "", "device_ns": 12345678000000, "message": "low battery"}
# constructed 7.001: CRITICAL - fault ⇒ {"rule": "circuitpython", "level": "critical", "name": "", "message": "fault"}
# constructed 1.500: DEBUG - spi xfer ⇒ {"rule": "circuitpython", "level": "debug", "name": "", "message": "spi xfer"}
# LEVELS starts at NOTSET, the name a level below DEBUG gets
# constructed 1.501: NOTSET - below debug ⇒ {"rule": "circuitpython", "leveled": false, "level": "info", "name": "", "message": "below debug"}
# constructed 1.502: INFO - temp=21.5C ⇒ {"rule": "circuitpython+kv", "level": "info", "name": "", "message": "temp=21.5C", "values": [["temp", 21.5, "C"]]}
# constructed 0.000: INFO - at boot ⇒ {"rule": "circuitpython", "level": "info", "name": "", "device_ns": 0, "message": "at boot"}
# constructed 86400.125: INFO - up a day ⇒ {"rule": "circuitpython", "level": "info", "name": "", "device_ns": 86400125000000, "message": "up a day"}
# constructed 2.718: ERROR - - a leading dash ⇒ {"rule": "circuitpython", "level": "error", "name": "", "message": "- a leading dash"}
# constructed 2.719: WARNING - wifi: retrying ⇒ {"rule": "circuitpython", "level": "warn", "name": "", "message": "wifi: retrying"}
# constructed 2.720: INFO - ok ⇒ {"rule": "circuitpython", "level": "info", "name": "", "message": "ok"}
# constructed 2.721: ERROR - Traceback follows ⇒ {"rule": "circuitpython", "level": "error", "name": "", "message": "Traceback follows"}
# constructed 2.722: CRITICAL - brownout ⇒ {"rule": "circuitpython", "level": "critical", "name": "", "message": "brownout"}
# constructed 2.723: DEBUG - x ⇒ {"rule": "circuitpython", "level": "debug", "name": "", "message": "x"}

# micropython-lib v1.29.0 python-stdlib/logging/logging.py: "%(levelname)s:%(name)s:%(message)s", which the Python row reads
# constructed INFO:root:booted ⇒ {"rule": "python", "level": "info", "name": "root", "message": "booted"}
# constructed WARNING:sensor:reading out of range ⇒ {"rule": "python", "level": "warn", "name": "sensor", "message": "reading out of range"}
# defmt prints a stamp and a level with no colon
# constructed 3.014 ERROR - no colon ⇒ {"rule": "defmt", "level": "error", "message": "- no colon"}
# constructed 3.01: ERROR - two decimals ⇒ {"rule": "plain", "level": "info", "message": "3.01: ERROR - two decimals"}
# constructed 3.014: Error - capitalized ⇒ {"rule": "plain", "level": "info", "message": "3.014: Error - capitalized"}
# constructed 3.014: ERROR no dash ⇒ {"rule": "plain", "level": "info", "message": "3.014: ERROR no dash"}
# constructed 3.014: FATAL - other word ⇒ {"rule": "plain", "level": "info", "message": "3.014: FATAL - other word"}
# constructed 1.5: error rate ⇒ {"rule": "plain", "level": "info", "message": "1.5: error rate"}
# constructed 3.014: 5 errors ⇒ {"rule": "plain", "level": "info", "message": "3.014: 5 errors"}
# constructed errors: 5 ⇒ {"rule": "plain", "level": "info", "message": "errors: 5"}
