Reporter

class · пространство имён z3n7 · исходник Reports/Reporter.cs

public class Reporter

Собирает отчёты о прогоне (ошибка или успех) и отправляет их в лог, в Telegram и в строку аккаунта в базе. Данные Telegram берутся из таблицы _api, строка id = 'tg_logger' (apikey, extra = {chat}/{topic}).

Конструкторы

Reporter

public Reporter(IZennoPosterProjectModel project, Instance instance)

исходник

Создаёт отчётчик; запоминает текущее время и число секунд, прошедших с начала сессии.

Методы

ReportError

public string ReportError(bool toLog = true, bool toTelegram = false, bool toDb = true, bool screenshot = false)

исходник

Сообщает о последней ошибке проекта: аккаунт, id и комментарий действия, тип исключения, сообщение, внутреннее сообщение, первая строка стека и текущий URL.

Параметр Описание
toLog Записать в лог как предупреждение.
toTelegram Отправить в Telegram (также сохраняется в failReport).
toDb Поставить status = 'dropped' и записать отчёт в last строки текущего аккаунта.
screenshot Сохранить скриншот с отчётом в виде водяного знака в {project.Path}/.failed/{projectName}/, в масштабе 50%.

Возвращает: Текст для лога; пусто, если последней ошибки нет.

ReportSuccess

public string ReportSuccess(bool toLog = true, bool toTelegram = false, bool toDb = true, string customMessage = null)

исходник

Сообщает об успешном прогоне: аккаунт, переменная lastQuery, необязательное сообщение и затраченное время.

Параметр Описание
toLog Записать в лог.
toTelegram Отправить в Telegram.
toDb Поставить status = 'idle' и записать отчёт в last строки текущего аккаунта.
customMessage Дополнительная строка.

Возвращает: Текст для лога.