Fehlerbehandlung und Meldungen für Community-Connectors

Für eine gute Nutzererfahrung sollte Ihr Code Fehler korrekt verarbeiten. Sie liefern den Nutzenden umsetzbare Fehlermeldungen, die Korrekturmaßnahmen für um das Problem zu lösen.

Dieses Dokument beschreibt Fehler, die bei Connectors auftreten können, und erläutert, Nachrichten funktionieren und wie Sie mit Connector-Fehlern umgehen.

Hinweis: Weitere Informationen zum Umgang mit Ausnahmen in JavaScript finden Sie unter try...catch-Anweisung.

Fehlertypen

Die Arten und Ursachen von Fehlern, die bei der Verwendung Ihrer Konnektoren lassen sich in der Regel einer der folgenden drei Kategorien zuordnen:

  1. Interne Fehler des Connectors
  2. Externe Connector-Fehler
  3. Looker Studio-Fehler

Interne und externe Fehler des Connectors sollten vom Connector behoben werden Entwickler. Diese Fehler treten aufgrund von vom Entwickler erstellten Code auf.

Interner Connector-Fehler

Während der Connector-Ausführung treten interne Connector-Fehler auf. Wenn zum Beispiel ein Connector kann während der Ausführung von getData() keine API-Antwort parsen. Diese Fehler sollten vorhergesehen und mit nutzerfreundlichen Erklärungen behoben werden. sofern zutreffend.

Weitere Informationen zum Umgang mit internen Fehlern des Connectors finden Sie unter Best Practices für den Umgang mit Connector-Fehlern

Externer Connector-Fehler

Externe Connector-Fehler treten nach der Connector-Ausführung auf. Wenn zum Beispiel ein Bei der getData()-Anfrage für drei Felder werden nur Daten für zwei zurückgegeben. Obwohl die Connector hat die Ausführung abgeschlossen, er hat die Anfrage von Looker nicht erfüllt Studio Gründliche Tests können diese Fehler verhindern.

Externe Connector-Fehler lassen sich in der Regel beheben, indem Sie die Fehlerdetails prüfen (falls und Fehler beheben, um das Problem zu identifizieren. Weitere Informationen zu Informationen zur Fehlerbehebung im Connector finden Sie unter Fehler im Code beheben.

Looker Studio-Fehler

Looker Studio-Fehler sind Fehler, die nicht mit Ihrem Connector-Code zusammenhängen. Beispiel: Ein Nutzer versucht, ein Zeitreihendiagramm mit einer Datenquelle ohne Datum und Uhrzeit.

Wenn der Fehler nicht direkt mit dem Connector zusammenhängt, werden keine Maßnahmen ergriffen. für den Connector-Entwickler. Weitere Hilfe erhalten Nutzer unter in der Looker Studio-Hilfe.

Fehlermeldungen werden angezeigt

Fehlerdetails basierend auf dem Administratorstatus anzeigen

Wenn ein Connector einen Fehler ausgibt, wird in Looker Studio die Fehlermeldung angezeigt abhängig vom Administratorstatus des Nutzers.

  • Wenn der Nutzer ein Administrator ist, sieht er alle Details. Dazu gehören Fehlermeldung, Fehlertyp und Stacktrace.
  • Ist der Nutzer kein Administrator, sieht er nur die Details, wenn enthält eine nutzerfreundliche Meldung. Weitere Informationen zum Anzeigen von Fehlern Nachrichten an Nutzer ohne Administratorberechtigungen finden Sie unter Für Nutzer sichtbare Fehler auslösen.

Für Nutzer sichtbare Fehler auslösen

Standardmäßig können nur Connector-Administratoren Fehlerdetails sehen. So wird verhindert, Unbeabsichtigte Offenlegung vertraulicher Daten wie API-Schlüssel in einem Stack Trace. Um Nutzern ohne Administratorberechtigungen Fehlermeldungen anzuzeigen, verwenden Sie newUserError() aus dem Apps Script-Dienst in Looker Studio

Beispiel:

try {
  // API request that can be malformed.
  getDataFromAPI();
} catch (e) {
  DataStudioApp.createCommunityConnector()
      .newUserError()
      .setDebugText('Error fetching data from API. Exception details: ' + e)
      .setText('There was an error communicating with the service. Try again later, or file an issue if this error persists.')
      .throwException();

}

In diesem Beispiel legt setText() den Text fest, der allen Nutzern angezeigt wird. setDebugText() legt den Text fest, der nur Administratoren angezeigt wird.

Best Practices für den Umgang mit Connector-Fehlern

Sie sollten versuchen, so viele Fehler wie möglich abzufangen und zu beheben. Ihres Connector-Codes ausführen. Einige gängige Vorgänge, die möglicherweise Fehler oder einen unerwünschten Status verursachen:

  • Ein fehlgeschlagener URL-Abrufversuch (vorübergehende Fehler, Zeitüberschreitungen)
  • Für den angeforderten Zeitraum sind keine Daten verfügbar
  • Daten aus der API können nicht geparst oder formatiert werden
  • Autorisierungstokens wurden widerrufen

Wiederherstellbare Fehler behandeln

Punkte der Connector-Ausführung, die fehlschlagen, aber wiederherstellbar sind, sollten behandelt werden. Wenn beispielsweise eine API-Anfrage aus einem nicht schwerwiegenden Grund fehlschlägt (z.B. Serverlast-Entlastung), sollte der Vorgang wiederholt werden, bevor ein Fehler ausgegeben wird.

Fehler abfangen und ausgeben

Nicht behebbare Fehler sollten abgefangen und noch einmal gemeldet werden. Der noch einmal gemeldete Fehler Nutzer sollten verstehen, warum der Fehler aufgetreten ist. Wenn das Problem behoben werden kann sollten Details zu den Korrekturmaßnahmen angegeben werden.

Weitere Informationen finden Sie unter Für Nutzer sichtbare Fehler ausgeben.

Fehler in Stackdriver protokollieren

Verwenden Sie Stackdriver, um Fehler und andere Meldungen zu protokollieren. Dies hilft dabei, um Fehler zu verstehen, Probleme zu beheben und unbehandelte Ausnahmen zu erkennen.

Um mehr über Stackdriver Error Reporting zu erfahren, erfahren Sie, wie Sie das Ausnahme-Logging aktivieren. und wie Nutzer zu Debugging-Zwecken sicher identifiziert werden können, siehe Stackdriver Logging verwenden

VERWORFEN: Verwenden Sie das Präfix DS_USER: für sichere Fehlermeldungen

Um nutzerfreundliche Fehlermeldungen für Nutzer ohne Administratorberechtigungen bereitzustellen, fügen Sie Das Präfix DS_USER: enthält Fehlermeldungen. Dieses Präfix wird verwendet, um sichere für Nutzer, die keine Administratoren sind, und ist nicht in der eigentlichen Fehlermeldung enthalten.

Die folgenden Beispiele zeigen einen Fall, in dem eine Fehlermeldung Nutzer ohne Administratorberechtigungen eine weitere, bei der eine Fehlermeldung nur dem Administrator angezeigt wird Nutzer:

data-studio/errors.gs
// Admin and non-admin users will see the following error.
try {
  // Code that might fail.
} catch (e) {
  throw new Error('DS_USER:This will be shown to admin & non-admin.');
}

// Only admin users will see the following error.
try {
  // Code that might fail.
} catch (e) {
  throw new Error('This message will only be shown to admin users');
}