Пример #1
0
    def setup_logging(self, section):
        """
        Read an Oasis standard logging config
        """
        log_dir = self.get(section, 'LOG_DIRECTORY')
        log_filename = self.get(section, 'LOG_FILENAME')
        log_path = os.path.join(log_dir, log_filename)

        read_log_config({
            'LOG_FILE':
            log_path,
            'LOG_LEVEL':
            self.get(section, 'LOG_LEVEL'),
            'LOG_MAX_SIZE_IN_BYTES':
            self.getint(section, 'LOG_MAX_SIZE_IN_BYTES'),
            'LOG_BACKUP_COUNT':
            self.getint(section, 'LOG_BACKUP_COUNT'),
        })
Пример #2
0
    def test_log_config_is_loaded___logger_is_updated(self, level):
        with patch('logging.root', logging.RootLogger(logging.NOTSET)):
            read_log_config({
                'LOG_FILE': '/tmp/log_file.txt',
                'LOG_LEVEL': level,
                'LOG_MAX_SIZE_IN_BYTES': 100,
                'LOG_BACKUP_COUNT': 10,
            })

            logger = logging.getLogger()

            self.assertEqual(level, logger.level)

            self.assertEqual(1, len(logger.handlers))
            handler = logger.handlers[0]
            self.assertIsInstance(handler, RotatingFileHandler)
            self.assertEqual('/tmp/log_file.txt', handler.baseFilename)
            self.assertEqual(100, handler.maxBytes)
            self.assertEqual(10, handler.backupCount)
Пример #3
0
INI_PATH = os.path.abspath(os.path.join(CURRENT_DIRECTORY, 'FlamingoApi.ini'))

CONFIG_PARSER = conf.load_ini_file(INI_PATH)
CONFIG_PARSER['LOG_FILE'] = CONFIG_PARSER['LOG_FILE'].replace('%LOG_DIRECTORY%', CONFIG_PARSER['LOG_DIRECTORY'])

flamingo_utils.IS_WINDOWS_HOST = bool(CONFIG_PARSER['IS_WINDOWS_HOST'])
flamingo_utils.FILES_DIRECTORY = os.path.join('/', 'var', 'www', 'oasis', 'Files')
flamingo_utils.OASIS_FILES_DIRECTORY = os.path.join(flamingo_utils.FILES_DIRECTORY, 'OasisFiles')

logger = logging.getLogger()

logger.info("FILES_DIRECTORY: {}".format(flamingo_utils.FILES_DIRECTORY))
logger.info("IS_WINDOWS_HOST: {}".format(flamingo_utils.IS_WINDOWS_HOST))

# Logging configuration
log.read_log_config(CONFIG_PARSER)

# Database configuration
db.read_db_config(CONFIG_PARSER)
if db.check_connection():
    logger.info("Successfully connected to Flamingo database")
else:
    logger.exception("Failed to connect to Flamingo database")
    exit()


@app.route("/healthcheck")
@log.oasis_log()
def healthcheck():
    '''
    Basic healthcheck