Skip to content

Organize internal logging around SLF4J and JUL #100

@andrus

Description

@andrus

Internal logging within the kernel is a bit of a mess. There's a combination of java.util.logging (JUL), System.out, System.err, and SLF4J (via libraries; we kinda handled this one per #99 , routing it to JUL ) and no configuration for JUL. So...

  1. Switch all loggers (including System.out, System.err) in the kernel to SLF4J. We already have it in the stack anyways, might as well use it.
  2. Route to JUL at the very last moment (in jjava-distro, and also in jjava-launcher)
  3. Bundle a JUL config that is compatible with the default Jupyter log format (single line, labeled as [I 2025-10-19 17:03:44.292 logger_name]
  4. Unify logging everywhere (one exception - still keeping System.err in magics, as this will send logs to the notebook, as we'd expect)
  5. Adjust logging levels in the core framework for less noise

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions