Python: Получить количество строк в таблице и уведомление, когда разрыв в числе строк превышает пороговое значение - PullRequest
0 голосов
/ 24 февраля 2020

Я просто пытаюсь отслеживать процесс репликации, измеряя пробелы в целевых таблицах. Если разрыв таблицы (ов) превышает более чем, например, 10, тогда создайте предупреждение SNS (напечатайте в этом случае), так как я перенесу это в AWS лямбда.

У меня есть следующий скрипт, который по существу ниже читает список таблиц и запускает счетчик выбора таблиц. Я также сплю несколько секунд, чтобы я мог измерить второй счетчик и передать его в оператор if, чтобы поднять (оповещение SNS) или напечатать (на данный момент) уведомление, когда счет превышает предопределенное значение. Я искал словарь python для этого, но так как я делаю одну из моих первых нескольких попыток в python, поэтому любая помощь приветствуется.

Спасибо

import psycopg2
import time 

# Connection with the DataBase

conn = psycopg2.connect(user = "onlineuser", database = "onedb", host = "123.123.123.123", port = "5432")
cursor = conn.cursor()

sql = 'SELECT count(*) from onlineuser.{}'
tables = ['oltptrans','oltpcases']
for t in tables:
    cursor.execute(sql.format(t))
    result = cursor.fetchone()
    print(result[0])

time.sleep(5)

sql2 = 'SELECT count(*) from onlineuser.{}'
tables2 = ['oltptrans','oltpcases']
for t2 in tables:
    cursor.execute(sql.format(t2))
    result2 = cursor.fetchone()
    print(result2[0])

if result2[0] - result[0] > 5:     # If the rowcount gap is greater than 5, print or raise SNS 
                                   # alert/message 
    print ("Trouble")

conn.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...