Zapisywanie aktywności i błędów

Z tego przewodnika dowiesz się, jak pisać niestandardowe logi i komunikaty o błędach, które pomogą Ci rozwiązać problemy z krokiem przepływu, który nie działa na karcie Aktywność przepływów.

Domyślnie na karcie Aktywność rejestrowana jest nazwa kroku, który jest wykonywany zgodnie z definicją w pliku manifestu. Aby pomóc Ci zrozumieć, co się wydarzyło podczas wykonania kroku, warto też pisać niestandardowe logi dla tego kroku. Jeśli podczas wykonywania kroku użytkownicy napotkają nieoczekiwane zachowanie, dzienniki mogą im pomóc zrozumieć, co się stało.

Przydatny wpis w dzienniku ma 2 atrybuty:

  • Element zawierający hiperlink do zasobu, który został utworzony lub zaktualizowany w ramach kroku. Jeśli na przykład krok tworzy dokument Google, użyj elementu, aby połączyć go z utworzonym dokumentem.
  • Szczegółowy komunikat o błędzie opisujący, dlaczego nie udało się uruchomić kroku, i jak rozwiązać ten problem.

Poniższy przykładowy kod pokazuje, jak onExecuteFunction() kroku może rejestrować na karcie Aktywność udane wykonanie i błąd:

Google Apps Script

function onExecuteFunctionCreateDocument(e) {

  // true if the document is successfully created, false if something goes wrong.
  var successfulRun = createDocument();

  // If successful, return an activity log linking to the created document.
  if (successfulRun == true) {
    return {
      "hostAppAction": {
        "workflowAction": {
          "returnOutputVariablesAction": {
            "variableValues": [
              {}
            ],
            "log": {
              "textFormatElements": [
                {
                  "text": "Created Google Doc"
                },
                {
                  "chip": {
                    "icon": {
                      "materialIconName": "edit_document"
                    },
                    "url": "https://docs.google.com/document/d/{DOCUMENT}",
                    "label": "{NAMEOFDOCUMENT}"
                  }
                },
                {
                  "text": "Created doc detailing how to improve product."
                }
              ]
            },
            "trigger_log": {
              "textFormatElements": [
                {
                  "text": "Email log "
                }
              ]
            }
          }
        }
      }
    };
  }

  // Otherwise, return an activity log containing an error explaining what happened and how to resolve the issue.
  else {
    return {
      "hostAppAction": {
        "workflowAction": {
          "returnElementErrorAction": {
            "errorActionability": "NOT_ACTIONABLE",
            "errorRetryability": "NOT_RETRYABLE",
            "error_log": {
              "textFormatElements": [
                {
                  "text": "Failed to create Google Doc"
                },
                {
                  "chip": {
                    "icon": {
                      "materialIconName": "document"
                    },
                    "label": "{NAMEOFDOCUMENT}"
                  }
                },
                {
                  "text": "Unable to create Google Document because OAuth verification failed. Grant one of these authorization scopes and try again: https://www.googleapis.com/auth/documents, https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.file"
                }
              ]
            }
          }
        }
      }
    };
  }
}