finesse.utilities.logging.logs¶
- finesse.utilities.logging.logs(logger, level=None, handler=None, close=True)[source]¶
- Emit logs at or above level in the encapsulated context, optionally using the specified handler. - See the Python logging cookbook for more information. - Parameters:
- loggerlogging.Logger
- The logger to use for the encapsulated context. 
- levelstr or int, optional
- The minimum log levels to emit. The standard log levels “debug”, “info”, “warning”, “error” and “critical” are supported, as are their corresponding level numbers (see - logging).
- handlerlogging.LogHandler, optional
- The handler to add to logger for the encapsulated context. 
- closebool, optional
- Close handler once finished. Defaults to True. 
 
- logger
 - Examples - Print debug logs during parsing, excluding compilation messages. - >>> import logging >>> from finesse import Model >>> from finesse.utilities import logs >>> from finesse.utilities.logging import FinesseStreamHandler >>> handler = FinesseStreamHandler() >>> handler.exclude("finesse.script.compiler") >>> model = Model() >>> with logs(logging.getLogger(), level="debug", handler=handler): >>> model.parse("laser l1 P=1")