Coverage for girder/__init__: 100%

# Coverage for girder/__init__ : 100%

## 26 statements 26 run 0 missing 0 excluded

Hot-keys on this page

r m x p toggle line displays

j k next/prev highlighted chunk

0 (zero) top of page

1 (one) first highlighted chunk

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #!/usr/bin/env python # -*- coding: utf-8 -*- ############################################################################### # Copyright Kitware Inc. # # Licensed under the Apache License, Version 2.0 ( the "License" ); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ############################################################################### import logging.handlers import os from girder.constants import ROOT_DIR, MAX_LOG_SIZE, LOG_BACKUP_COUNT class LogLevelFilter(object): """ Filter log records based on whether they are between a min and max level. """ def __init__(self, min, max): self.minLevel = min self.maxLevel = max def filter(self, logRecord): level = logRecord.levelno return level <= self.maxLevel and level >= self.minLevel def _setupLogger(): """ Sets up the girder logger. """ logger = logging.getLogger('girder') logger.setLevel(logging.DEBUG) eh = logging.handlers.RotatingFileHandler( os.path.join(ROOT_DIR, 'logs', 'error.log'), maxBytes=MAX_LOG_SIZE, backupCount=LOG_BACKUP_COUNT) eh.setLevel(logging.WARNING) eh.addFilter(LogLevelFilter(min=logging.WARNING, max=logging.CRITICAL)) ih = logging.handlers.RotatingFileHandler( os.path.join(ROOT_DIR, 'logs', 'info.log'), maxBytes=MAX_LOG_SIZE, backupCount=LOG_BACKUP_COUNT) ih.setLevel(logging.INFO) ih.addFilter(LogLevelFilter(min=logging.DEBUG, max=logging.INFO)) fmt = logging.Formatter('[%(asctime)s] %(levelname)s: %(message)s') eh.setFormatter(fmt) ih.setFormatter(fmt) logger.addHandler(eh) logger.addHandler(ih) return logger logger = _setupLogger()