Skip to content

Logger does not find levels specified in configuration file #2937

Description

@deniederhut

In distributed.yaml, the logging configurations are listed under the 'distributed' key:

distributed:
  version: 2
  # logging:
  #   distributed: info
  #   distributed.client: warning
  #   bokeh: critical
  #   # http://stackoverflow.com/questions/21234772/python-tornado-disable-logging-to-stderr
  #   tornado: critical
  #   tornado.application: error

but the logger looks for a key called 'logging' at the top level of dask.config.config:

    loggers = {  # default values
        "distributed": "info",
        "distributed.client": "warning",
        "bokeh": "critical",
        "tornado": "critical",
        "tornado.application": "error",
    }
    loggers.update(config.get("logging", {}))

this causes the logger to ignore changes to the logging levels in the configuration file, unless they are moved to the top level, like this:

logging:
  distributed: debug
  distributed.client: debug
  distributed.worker: debug
  distributed.scheduler: debug
distributed:
  version: 2

It's not clear to me if the intention was for dask.config to update its configuration dictionary with the mapping underneath the 'distributed' key; or, for the logger to look under the 'distributed' key for library-specific logging; or, if the 'distributed' key was not meant to be used for user configs placed in /etc/dask or specified via the DASK_CONFIG environment variable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions