Skip to content

Commit

Permalink
Merge pull request #2555 from camptocamp/fix-settup-logging
Browse files Browse the repository at this point in the history
Fix setup logging
  • Loading branch information
sbrunner authored Jan 6, 2025
2 parents 5ac1e3d + 3d6030c commit a55ca3d
Showing 1 changed file with 20 additions and 1 deletion.
21 changes: 20 additions & 1 deletion c2cwsgiutils/loader.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

from plaster_pastedeploy import Loader as BaseLoader

from c2cwsgiutils import get_config_defaults
from c2cwsgiutils import get_config_defaults, get_logconfig_dict

_LOG = logging.getLogger(__name__)

Expand All @@ -19,3 +19,22 @@ def _get_defaults(self, defaults: Optional[dict[str, str]] = None) -> dict[str,
def __repr__(self) -> str:
"""Get the object representation."""
return f'c2cwsgiutils.loader.Loader(uri="{self.uri}")'

def setup_logging(self, defaults: Optional[dict[str, str]] = None) -> None:
"""
Set up logging via :func:`logging.config.dictConfig` with value returned from c2cwsgiutils.get_logconfig_dict.
Defaults are specified for the special ``__file__`` and ``here``
variables, similar to PasteDeploy config loading. Extra defaults can
optionally be specified as a dict in ``defaults``.
Arguments:
---------
defaults: The defaults that will be used when passed to
:func:`logging.config.fileConfig`.
"""
if "loggers" in self.get_sections():
logging.config.dictConfig(get_logconfig_dict(self.uri.path))
else:
logging.basicConfig()

0 comments on commit a55ca3d

Please sign in to comment.