Exemple #1
0
def configure_sqlalchemy_log(options):
    debug = config.get_option(options, 'debug', type='bool', default=False)
    verbose = config.get_option(options, 'verbose', type='bool', default=False)
    logger = logging.getLogger('sqlalchemy.engine')
    if debug:
        logger.setLevel(logging.DEBUG)
    elif verbose:
        logger.setLevel(logging.INFO)
Exemple #2
0
def _create_engine(options):
    engine_args = {
        "pool_recycle":
        config.get_option(options,
                          'sql_idle_timeout',
                          type='int',
                          default=3600),
        "echo":
        config.get_option(options, 'sql_query_log', type='bool',
                          default=False),
    }
    LOG.info("Creating SQLAlchemy engine with args: %s" % engine_args)
    return create_engine(options['sql_connection'], **engine_args)
Exemple #3
0
def _create_engine(options):
    connection_dict = sql.engine.url.make_url(options['sql_connection'])
    engine_args = {
        'pool_recycle':
        config.get_option(options,
                          'sql_idle_timeout',
                          type='int',
                          default=3600),
        'echo':
        config.get_option(options, 'sql_query_log', type='bool',
                          default=False),
        'convert_unicode':
        True,
    }

    if 'mysql' in connection_dict.drivername:
        engine_args['listeners'] = [MySQLPingListener()]

    LOG.info("Creating SQLAlchemy engine with args: %s" % engine_args)
    return create_engine(options['sql_connection'], **engine_args)