secop_ophyd.logs#

Module Contents#

Functions#

setup_logging

Set up and configure a logger with timed rotating file handler.

get_logger

Get a logger by name. If the logger doesn’t have handlers, it will be created with default settings.

Data#

API#

secop_ophyd.logs.DEFAULT_LOG_LEVEL = None#
secop_ophyd.logs.DEFAULT_LOG_FORMAT = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'#
secop_ophyd.logs.DEFAULT_LOG_DIR = '.secop-ophyd'#
secop_ophyd.logs.DEFAULT_LOG_FILENAME = 'secop-ophyd.log'#
secop_ophyd.logs.DEFAULT_ROTATION_WHEN = 'H'#
secop_ophyd.logs.DEFAULT_ROTATION_INTERVAL = 1#
secop_ophyd.logs.DEFAULT_BACKUP_COUNT = 48#
secop_ophyd.logs.LOG_LEVELS = None#
secop_ophyd.logs.log_file_handlers: Dict[str, logging.handlers.TimedRotatingFileHandler] = None#
secop_ophyd.logs.console_handler: logging.StreamHandler | None = None#
secop_ophyd.logs.setup_logging(name: str = 'secop_ophyd', level: int = DEFAULT_LOG_LEVEL, log_dir: Optional[str] = None) logging.Logger[source]#

Set up and configure a logger with timed rotating file handler.

namestr

Name of the logger

levelint

Logging level (default: INFO)

log_formatstr

Format string for log messages

log_dirOptional[str]

Directory to store log files (default: .secop-ophyd in current directory)

log_fileOptional[str]

Log file name (default: secop-ophyd.log)

whenstr

Type of interval - can be ‘S’ (seconds), ‘M’ (minutes), ‘H’ (hours), ‘D’ (days), ‘W0’-‘W6’ (weekday, 0=Monday), ‘midnight’

intervalint

How many units between rotations (default: 1 hour)

backup_countint

Number of backup files to keep (default: 48 - for 48 hours of logs)

consolebool

Whether to also log to console (default: False)

logging.Logger

Configured logger instance

secop_ophyd.logs.get_logger(name: str) logging.Logger[source]#

Get a logger by name. If the logger doesn’t have handlers, it will be created with default settings.

namestr

Name of the logger

logging.Logger

Logger instance