208 похожих чатов

Всем добрый день. Подскажите пожалуйста если задать запуск агента в

точное время и указать интервал, в случае если какой-то запуск провалится (например сервер перезагрузили в момент когда он должен был запуститься) повторное время для запуска не назначится?

или даже не так, просто скажите существует ли условие когда назначенный регулярный агент может перестать выполняться? у меня стояло по расписанию. а сейчас я внезапно для себя обнаружил что он оказывается уже больше месяца не выполняется. по дате естественно я не вспомню что могло на него повлиять. но возможно пада mysql сервер в тот момент. это всё что я могу подумать.

Можно ли как-то этого избежать? крон в отличие от агентов таких минусов не имеет. даже если сорвать один запуск то в следующий раз он всё равно запустится. а тут такая подстава, запуск сорван и ещё нет никаких уведомления админу. как за этим следить?

9 ответов

6 просмотров

посмотрите код, который их запускает. там будет условие, которое блочит выполнение агента.. может битрикс попытался раз 5 запустить его и выпилил в результате

Itachi-Vergil Автор вопроса
Roma
посмотрите код, который их запускает. там будет ус...

function set1Ccodes(){ // Копирует код из реквизитов в свойство C_CODE $IBLOCK_ID = 2; $arSelect = Array("ID", "PROPERTY_С_CODE"); $arFilter = Array("IBLOCK_ID"=>$IBLOCK_ID, "PROPERTY_C_CODE"=>false); $res = CIBlockElement::GetList(["ID"=>"ASC"], $arFilter, false, Array(), $arSelect); while($row = $res->Fetch()) { $row['PROPERTIES'] = []; $result[$row['ID']] =& $row; unset($row); } if (!empty($result)) { $arPropFilter = array( 'CODE' => 'CML2_TRAITS', ); CIBlockElement::GetPropertyValuesArray($result, $arFilter['IBLOCK_ID'], $arFilter, $arPropFilter); foreach ($result as $key => $arItem) { if (!empty($arItem['PROPERTIES']['CML2_TRAITS']['DESCRIPTION'][0])) { foreach ($arItem['PROPERTIES']['CML2_TRAITS']['DESCRIPTION'] as $number => $name) { switch ($name){ case 'Код': CIBlockElement::SetPropertyValuesEx($arItem["ID"], $IBLOCK_ID, array("C_CODE" => $arItem['PROPERTIES']['CML2_TRAITS']['VALUE'][$number])); break; } } } } } return "set1Ccodes()"; }

Itachi Vergil
function set1Ccodes(){ // Копирует код из рекв...

нужно смотреть код в ядре, который запускает агенты

написать обработчик :) и дернуть retry count в базе

Itachi-Vergil Автор вопроса
Andrew Zahalski
написать обработчик :) и дернуть retry count в баз...

зачем тогда агенты если пользоваться обработчиками?

Itachi Vergil
зачем тогда агенты если пользоваться обработчиками...

у меня агент на проверку агентов :) все-таки

Itachi Vergil
зачем тогда агенты если пользоваться обработчиками...

это встроенная защита от дурака... если агент упадет 3 раза то битрикс больше его не запустит и в админке активировать ты его не сможешь (если только через таблицы базы поменяв retry_count)

Itachi-Vergil Автор вопроса
Andrew Zahalski
это встроенная защита от дурака... если агент упад...

да не в этом дело. изменив время запуска я его запустил. меня интересует вообще почему он мог упасть и почему нет оповещений для этого. я его создал и забыл. и месяц не знал что у меня сломана запись кода в свойство. в итоге 2к новых товаров не ищутся по коду в поиске. а я и не в курсе.

Itachi Vergil
да не в этом дело. изменив время запуска я его зап...

почему нет оповещений без понятия но странно что он у тебя не деактивировался

Похожие вопросы

Обсуждают сегодня

Такс, блин, таки кто-то знает, каким образом работают макросы stdin/stdout/stderr? Я влез в stdio.h, там определения нет, отладил через асмокод - вызывается функция со странны...
The Bird of Hermes
18
Всем привет, на линуксе лучше на fasm или nasm учиться писать для начала ?
meszjol
14
Господа, а как такое в миграцию засунуть?
Денис Александрович
12
Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
было так ;void set_http_ver(RESPD* ptr, char* version, uint32_t length) // example: 'RTSP/1.1 ' set_http_ver: mov eax, [esp + 4] mov ecx, [esp + 8] ...
Mixail Frolov
5
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
Карта сайта