Есть ли способ сделать Zaps преднамеренно «Стоп» с помощью красного флага и уведомлений по электронной почте? - PullRequest
0 голосов
/ 06 июня 2019

У нас есть Zap, который запускается 100 раз в день, и в обычных условиях он обычно имеет статус «Фильтр» (желтый) в истории задач, а в остальное время - «Успех» (зеленый). .

Проблема в том, что я пытаюсь отловить ошибки. Внутри кода Javascript в этом zap есть много вызовов API, и если какой-либо из этих вызовов API завершится неудачно или вызовет странное поведение, я бы хотел, чтобы Zap перешел в состояние «Стоп» (красный) в истории задач. Это сделает эти инциденты более заметными в истории задач, а также предоставит нашим разработчикам уведомления по электронной почте.

Я знаю о фильтрах и о том, как они работают, проблема в том, что этот Zap имеет статус Filtered целый день, 100 раз, поэтому, если бы я настроил фильтр для ошибок, он бы просто сливался со всеми другие задачи, которые работают отлично. Это также не предоставило бы мне уведомления по электронной почте, и опять же уведомления в любом случае были бы бесполезны.

Пример вызова API изнутри Zap:

var fieldKey = "";
    var endpoint = pipedriveURL + "dealFields:(key,name)?start=0&api_token=" + pipedriveAPIKey;
    var res = await fetch(endpoint, {method: 'GET'});
    var resBody = await res.json();

    for (var i of resBody.data) {
        if (i.name === fieldName) {
            fieldKey = i.key;
        }
    }

    // Key not found exit
    if (fieldKey === "") {
        console.log("Field Key not found in getFieldKeyFromName");
    }

Если приведенный выше код по какой-то причине начинает давать сбой, вместо того, чтобы копаться в сотнях задач, пытаясь прочитать все эти console.log (), я бы хотел, чтобы они были немного более заметными и их было легко найти с помощью статус «Остановлен» (красный).

Некоторые сбои API естественным образом останавливают zap с ошибкой Javascript, но есть и другие случаи, когда я хотел бы преднамеренно Ошибка выполнения Zap. Это возможно?

1 Ответ

0 голосов
/ 06 июня 2019

Конечно, вы можете выдать ошибку, как обычно:

throw new Error('bad thing')

Это пометит этот шаг zap как неудачный.

...