tools.win_pg_dump_controller

Yohn Y. 2022-05-29 Parent:7c93b0305522

4:a38a008ce3e8 Go to Latest

tools.win_pg_dump_controller/win_pg_dump_controller/__main__.py

+ Иная логика работы с эпохами

History
awgur@0 1 # coding: utf-8
awgur@0 2
awgur@0 3 from .log_controller import LogController
awgur@0 4 from .config import Config
awgur@0 5 from .executor import backup
awgur@0 6 from .error import Error
awgur@2 7 from .smtp_connector import MailError, MailSender
awgur@0 8
awgur@0 9 config = Config()
awgur@0 10 log_controller = LogController(config)
awgur@0 11
awgur@0 12 log = log_controller.get_logger('main')
awgur@0 13 try:
awgur@0 14 log_t = log.get_timing()
awgur@0 15
awgur@0 16 log(log_t(f'Начало процесса'))
awgur@0 17
awgur@0 18 for task in config.tasks:
awgur@0 19 log(log_t(f'Обработка: {task.name}'))
awgur@0 20 backup(task, config, log_controller)
awgur@0 21
awgur@0 22 log(log_t(f'Завершение обработки: {task.name}'))
awgur@0 23
awgur@0 24 log(log_t('Очистка старых журналов...'))
awgur@0 25 log_controller.clean()
awgur@0 26 log(log_t('Завершено'))
awgur@0 27
awgur@2 28 if log_controller.main_log is not None:
awgur@2 29 with open(log_controller.main_log) as IN:
awgur@2 30 mail_content = IN.read()
awgur@2 31
awgur@2 32 mail = MailSender.from_config(config)
awgur@2 33 mail.sendmail(mail_content, logs=log_controller.log_files)
awgur@2 34
awgur@0 35 except Error as e:
awgur@0 36 log.err(str(e))
awgur@0 37 print('FAIL')
awgur@0 38 exit(1)
awgur@0 39
awgur@0 40 except:
awgur@0 41 log.excpt('Неизвестная ошибка')
awgur@0 42 print('FAIL')
awgur@0 43 exit(2)
awgur@0 44
awgur@0 45 else:
awgur@0 46 print('ok')