blob: a8523fb768d48b0f705f8b9f75f3aaaaeebf4baf [file] [log] [blame]
showard02ed4bd2009-09-09 15:30:11 +00001import logging, logging.handlers, time, os
2import common
3from autotest_lib.client.common_lib import global_config
4
5
6config = global_config.global_config
showard902c96c2009-09-11 18:47:35 +00007LOGGING_ENABLED = config.get_config_value('SERVER', 'rpc_logging', type=bool)
showard02ed4bd2009-09-09 15:30:11 +00008
9MEGABYTE = 1024 * 1024
10
11rpc_logger = None
12
13def configure_logging():
14 MAX_LOG_SIZE = config.get_config_value('SERVER', 'rpc_max_log_size_mb',
15 type=int)
showard546c8612009-10-19 18:34:31 +000016 NUMBER_OF_OLD_LOGS = config.get_config_value('SERVER', 'rpc_num_old_logs',
17 type=int)
showard02ed4bd2009-09-09 15:30:11 +000018 log_path = config.get_config_value('SERVER', 'rpc_log_path')
19
20 formatter = logging.Formatter(
21 fmt='[%(asctime)s %(levelname)-5.5s] %(message)s',
22 datefmt='%m/%d %H:%M:%S')
23 handler = logging.handlers.RotatingFileHandler(log_path,
24 maxBytes=MAX_LOG_SIZE*MEGABYTE,
25 backupCount=NUMBER_OF_OLD_LOGS)
26 handler.setFormatter(formatter)
27
28 global rpc_logger
29 rpc_logger = logging.getLogger('rpc_logger')
30 rpc_logger.addHandler(handler)
31 rpc_logger.propagate = False
32 rpc_logger.setLevel(logging.DEBUG)
33
34
showard902c96c2009-09-11 18:47:35 +000035if LOGGING_ENABLED:
showard02ed4bd2009-09-09 15:30:11 +000036 configure_logging()