def get_transaction_rate_for_database()

in postgresql_metrics/postgres_queries.py [0:0]


def get_transaction_rate_for_database(conn):
    sql = ("SELECT current_database(), datname, now(), xact_commit + xact_rollback, xact_rollback "
           "FROM pg_stat_database WHERE datname = current_database()")
    results = query(conn, sql)
    db_name, dat_name, time_now, transactions_now, rollbacks_now = results[0]
    if None in results[0]:
        LOG.error("Fetching transactions got 'None' in result set")
        return None, None, None
    recent_transactions = get_metric_diff(db_name, 'transactions', time_now, transactions_now)
    recent_rollbacks = get_metric_diff(db_name, 'rollbacks', time_now, rollbacks_now)
    return dat_name, recent_transactions, recent_rollbacks