Dragonfly’s logging infrastructure is defined in the
module. It defines sane defaults for the various loggers used in the library
as well as functions for setting up logging and tracing.
Adjusting logger levels¶
Dragonfly’s logger levels can be adjusted much like Python logger levels:
import logging logging.getLogger("engine").setLevel(logging.DEBUG)
The one caveat is that this must be done after the
function is called, otherwise the levels you set will be overridden.
By default, the function is only called near the top of the module loader
scripts (e.g. dragonfly/examples/dfly-loader-wsr.py), not within dragonfly
It is not necessary to call
setup_log() at all. Standard Python
logging functions such as
basicConfig() can be used at the top of
module loader scripts instead.
If you are not using dragonfly with a module loader, you will need to set up a logging handler to avoid messages like tho following:
No handlers could be found for logger "typeables"
setup_log(use_stderr=True, use_file=True, use_stdout=False)¶
Setup Dragonfly’s logging infrastructure with sane defaults.
- use_stderr (bool) – whether to output log messages to stderr (default: True).
- use_file (bool) – whether to output log messages to the ~/.dragonfly.log log file (default: True).
- use_stdout (bool) – this parameter does nothing andhas been left in for backwards-compatibility (default: False).
Setup call tracing for low-level debugging.
- output (file) – the file to write tracing messages to.
- limit (int|None) – the recursive depth limit for tracing (default: None).