Запись последнего экшна

  • Автор темы Автор темы bpunk
  • Дата начала Дата начала

bpunk

Client
Регистрация
23.08.2015
Сообщения
183
Реакции
31
Баллы
28
Как сделать запись последнего экшна на котором может циклиться либо зависать проект, если я принидительно захочу его остановить???
Мне нужно получить информацию для отладки.
 
Как сделать запись последнего экшна на котором может циклиться либо зависать проект, если я принидительно захочу его остановить???
Мне нужно получить информацию для отладки.
перед экшеном делать запись в файл отладочной информации..
 
То есть перед каждым экшном писать значение шага в переменную, и при логическом бэдэнд номер переменной в список?? 0_0
Или может быть есть хитрая схема получить id действия при прерывании потоков в ЗП?
Есть потоки, которые вешаются (ходят в цикле) хотелось бы их убить и понять на каком ид действия.
То есть при прерывании потока писать последний ид действия.

Нашел такой пример
https://help.zennolab.com/en/v5/zen...el.IZennoPosterProjectModel~GetLastError.html
Код:
Развернуть Свернуть Копировать
var error = project.GetLastError();
var tmp = "";
if(error != null)
    tmp = string.Format("ActionComment: {0}.\r\nActionGroupId: {1}.\r\nActionId: {2}", error.ActionComment, error.ActionGroupId, error.ActionId);
return tmp;

Прервать поток, и в бэдэнд указать сниппет и запись в список переменной tmp - это путь к истине? :)
 
Если потоки вешаются по причине зависа инстанса, то оттуда уже ничего не заберешь.
Если по вине кода вашего и бесконечных циклов тоже.
 
GetlastError это штука, которую хорошо вешать на Bad end для получения информации на каком экшене упал проект. Ее можно сохранить в отдельный лог файл для личного анализа
 
Если потоки вешаются по причине зависа инстанса, то оттуда уже ничего не заберешь.
Если по вине кода вашего и бесконечных циклов тоже.
а если я убиваю потоки? принудительно через ZP

выполняется ли бэдэнд при принудительном прерывании потоков в ZP
 
Как вы их убиваете?
 
Кнопкой в ZP "Прервать". "Остановить" я так понимаю запрещает запускать новые, но дает завершить старые потоки.
 
В этом случае никакой информации получить нельзя
 
В этом случае никакой информации получить нельзя
Можно ли в предложения внести и реализовать, запись ид экшена, а потом принудительное завершение (через метод или настройки).
Как правило принудительно убиваю потоки по причине зацикливания или непредсказуемых действий (умирает прокся, шаблон ходит по кругу)
 
Тут проще перестроить логику шаблона, чтобы он не зацикливался.
Что должна понять программа? Что она выполняет однотипные действия? Но ведь это Вы её так настроили..
 
Можно ли в предложения внести и реализовать, запись ид экшена, а потом принудительное завершение (через метод или настройки).
Как правило принудительно убиваю потоки по причине зацикливания или непредсказуемых действий (умирает прокся, шаблон ходит по кругу)
Не вижу в этом смысла. Если у вас шаблон попал в бесконечный цикл то это косяк шаблона. В текстовых логах можно увидеть что он делает, как вариант. Чтобы исправить это.
 
Не вижу в этом смысла. Если у вас шаблон попал в бесконечный цикл то это косяк шаблона. В текстовых логах можно увидеть что он делает, как вариант. Чтобы исправить это.
Подскажите, где текстовые логи.
Проблема в прокси, которые могут по ходу выполнения внезапно отвалиться. Нужно в таком случае найти рабочий и вернуться на тот же шаг, который выполнялся последним. Вопрос: как?
 
C:\Program Files (x86)\ZennoLab\ZennoPoster Pro\Progs\Logs
 
  • Оценить
Реакции: bpunk
Текущий ид при просмотре инстанса можно выдавать хотябы? с возможностью копирования..
 
Тут проще перестроить логику шаблона, чтобы он не зацикливался.
Что должна понять программа? Что она выполняет однотипные действия? Но ведь это Вы её так настроили..
Программа ничего не должна понять, просто если посылается KillTask записать перед этим id экшна. Редко просто так потоки убивают..
 
Планируем изменение логов, когд для каждого шаблона логи можно будет писать в отдельную папку. Там можно будет получить больше информации
 
Проблема в прокси, которые могут по ходу выполнения внезапно отвалиться. Нужно в таком случае найти рабочий и вернуться на тот же шаг, который выполнялся последним. Вопрос: как?
А не проще после каждого важного этапа загрузки страницы проверять загруженность страницы, и в случае не успеха перекидывать ветку на взятие нового прокси?
Я делаю теперь во всех шаблонах так и никаких ошибок не возникает больше с отвалившимися проксями.
 
А не проще после каждого важного этапа загрузки страницы проверять загруженность страницы, и в случае не успеха перекидывать ветку на взятие нового прокси?
Я делаю теперь во всех шаблонах так и никаких ошибок не возникает больше с отвалившимися проксями.
у меня таких проверок 5 во всем шаблоне. нет не проще. Прокси мог быть рабочим и отвалится через мгновение, а дальше что?
 
Ужасные прокси у вас какие )
Тогда храните данные в той же таблице где и данные аккаунтов об этапе выполнения. и типа по bad end записывайте в конец откуда начать новое выполнение, например
 
Ужасные прокси у вас какие )
Тогда храните данные в той же таблице где и данные аккаунтов об этапе выполнения. и типа по bad end записывайте в конец откуда начать новое выполнение, например
Равно как и минусы у них есть и плюсы - прокси юзеров домашних ПК :D
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)