Skip to content
Snippets Groups Projects
Commit fee24132 authored by Philip Elson's avatar Philip Elson :snake:
Browse files

Merge branch 'fix/logging-debug' into 'master'

Correctly handle the mapping from Python log levels to Java log levels

See merge request !72
parents c1d9b554 0fd01568
No related branches found
No related tags found
1 merge request!72Correctly handle the mapping from Python log levels to Java log levels
Pipeline #3178805 passed
......@@ -214,14 +214,27 @@ class PyJapc:
def _setup_jvm(self, log_level):
"""Startup the JVM and the connection to Python (JPype)."""
mgr = cmmnbuild_dep_manager.Manager("pyjapc", logging.WARNING)
mgr = cmmnbuild_dep_manager.Manager("pyjapc", lvl=log_level)
mgr.start_jpype_jvm()
log4j = jp.JPackage('org').apache.log4j
if log4j.BasicConfigurator is not None and callable(log4j.BasicConfigurator.configure):
log4j.BasicConfigurator.configure()
if log_level is not None:
log4j.Logger.getRootLogger().setLevel(log4j.Level.toLevel(log_level))
known_levels = {
logging.DEBUG: log4j.Level.DEBUG,
logging.INFO: log4j.Level.INFO,
logging.WARNING: log4j.Level.WARN,
logging.ERROR: log4j.Level.ERROR,
logging.CRITICAL: log4j.Level.FATAL,
}
# Map Python log levels (10, 20, ...) to Java levels (10000, 20000, ...)
# but fall back to just passing the given level if we don't know what to do with it.
if log_level in known_levels:
java_level = known_levels[log_level]
else:
java_level = log4j.Level.toLevel(java_level)
log4j.Logger.getRootLogger().setLevel(java_level)
else:
log4j.Logger.getRootLogger().setLevel(log4j.Level.WARN)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment