Einführung in das Looker-Erweiterungs-Framework

Für das Looker-Erweiterungs-Framework wird demnächst ein neuer Lademechanismus verwendet. Der neue Ladeprogramm kann Fehler verursachen, wenn vorhandene Erweiterungen geladen werden. Wie Sie Ihre Erweiterungen mit dem neuen Ladeprogramm testen können, bevor sie in Looker-Umgebungen offiziell aktiviert werden, erfahren Sie im Artikel Testen des neuen Frameworks-Ladeprogramms für Erweiterungen in der Looker-Hilfe.

Das Framework der Looker-Erweiterung ist ein Entwicklungs-Framework, das den Aufwand und die Komplexität beim Erstellen benutzerdefinierter JavaScript-Datenanwendungen und -tools wie den folgenden reduziert:

  • Interne Plattformanwendungen für Ihr Unternehmen
  • Externe Plattformen für Ihre Kunden, z. B. Kundenportale für Eingebettete Analytics-Anwendungen, die mit Daten in Looker erstellt wurden
  • Zielgerichtete interne Tools
  • Anwendungen zum Einbetten in externe Anwendungen

Aktuelle Beispiele für Looker-Erweiterungen, die im Looker Marketplace verfügbar sind, sind das Data Dictionary für Looker und das LookML-Diagramm.

Vorteile des Frameworks für Erweiterungen

Einige Bereiche der Erstellung von Webanwendungen sind einfach und macht Spaß, während andere offensichtlich zeitaufwendiger und nicht gerade unterhaltsam sind. Das Framework für Erweiterungen hilft Ihnen dabei, viele dieser Aufgaben zu optimieren.

Das Erweiterungs-Framework übernimmt einige der mühsamen Aspekte beim Erstellen einer Webanwendung, damit Sie sich direkt auf die Entwicklung konzentrieren können. Auf benutzerdefinierte Anwendungen und Tools, die mit dem Framework für Erweiterungen erstellt wurden, kann über Looker zugegriffen werden. So kann Looker folgende Arten von Funktionen verarbeiten:

Framework für Erweiterungen

Das Framework der Looker-Erweiterung umfasst die folgenden Funktionen:

  • Das Looker Extension SDK bietet Funktionen für den öffentlichen Zugriff der Looker API und für die Interaktion innerhalb der Looker-Umgebung.
  • Looker-Komponenten, eine Bibliothek mit vordefinierten React-UI-Komponenten, die Sie in Ihren Erweiterungen verwenden können
  • Das Embed SDK, eine Bibliothek, mit der Sie Dashboards, Looks und Explores in Ihre Erweiterung einbetten können Beispielcode finden Sie in der Erweiterung für die Küchenspüle. Mit dem Embed SDK lassen sich Erweiterungen auch in Anwendungen von Drittanbietern einbetten. Cookies müssen im Browser aktiviert sein, wenn Sie Explores, Looks oder Dashboards in eine Erweiterung einbetten.
  • Mit dem create-looker-extension-Dienstprogramm wird eine einfache Erweiterung erstellt, die alle erforderlichen Erweiterungsdateien und Abhängigkeiten enthält. Sie können dann als Ausgangspunkt dienen.
  • Unsere Beispiele für das Framework für Looker-Erweiterungen mit Vorlagen und Beispielerweiterungen erleichtern Ihnen den Einstieg.
  • Die Möglichkeit, auf API-Endpunkte von Drittanbietern zuzugreifen und dieser Erweiterung Daten von Drittanbietern hinzuzufügen.
  • Die Möglichkeit, Vollbilderweiterungen in Looker zu erstellen. Vollbilderweiterungen können für interne oder externe Plattformanwendungen verwendet werden.

    Sie können eine Vollbilderweiterung verhindern, dass eine Gruppe von Nutzern von Ihrer Erweiterung zu anderen Teilen von Looker wechselt. Fügen Sie dazu der Gruppe „Nur Erweiterung“ Nutzer hinzu. Sie können die Looker-Navigationsleiste auch entfernen, indem Sie /extensions in der Erweiterungs-URL durch /spartan ersetzen.

  • Die Möglichkeit, einen Zugriffsschlüssel für Ihre Erweiterung zu konfigurieren, sodass Nutzer einen Schlüssel eingeben müssen, um die Erweiterung auszuführen. Dies ist nützlich, wenn Sie Erweiterungen in Rechnung stellen möchten, aber Standard-Looker-Berechtigungen verwenden möchten, um den Zugriff auf diejenigen zu sperren, die niemals auf eine Erweiterung zugreifen können sollen.

Anforderungen an Extension Framework

So entwickeln Sie mit dem Framework der Looker-Erweiterung:

– Sie benötigen LookML-Entwicklerberechtigungen für Ihre Instanz.

Damit eine Erweiterung unabhängig von ihrer Funktion in Looker ausgeführt wird, muss sie folgende Elemente in Looker enthalten:

  • Ein LookML-Projekt, das

  • Die LookML-Modelldatei benötigt einen connection-Parameter, der auf eine gültige Datenbankverbindung auf Ihrer Instanz verweist.

  • Für die Projektmanifestdatei ist ein application-Parameter erforderlich. Der Parameter application gibt der Erweiterung ein Label, teilt Looker mit, wo das JavaScript der Erweiterung zu finden ist, und stellt eine Liste von Berechtigungen für die Erweiterung bereit. Berechtigungen definieren die Looker-Ressourcen, auf die die Erweiterung zugreifen kann. Die Erweiterung kann erst auf eine Looker-Ressource zugreifen, wenn diese in den Berechtigungen aufgeführt ist. Hier ein Beispiel für eine Projektmanifestdatei mit einem application-Parameter:

  project_name: "super_duper_extension"
  application: super_duper_extension {
    label: "Super Duper Extension"
    url: "http://localhost:8080/dist/bundle.js"
    entitlements: {
      local_storage: no
      navigation: no
      new_window: no
      new_window_external_urls: []
      use_form_submit: yes
      use_embeds: no
      use_downloads: no
      core_api_methods: []
      external_api_urls: []
      oauth2_urls: []
      scoped_user_attributes: []
      global_user_attributes: []
    }
  }

Weitere Informationen finden Sie in der Dokumentation zum Parameter application.

Erste Schritte mit dem Looker-Erweiterungs-Framework

Am einfachsten ist es, zuerst eine neue Starter-Erweiterung aus einer Vorlage zu generieren und dann diese Funktion anzupassen und dem Auslöser hinzuzufügen. Dadurch wird sichergestellt, dass die Konfiguration und die Verpackung korrekt sind, was von Hand manuell erschwert werden kann. In der Dokumentation Einführung in die Looker-Erweiterung erfahren Sie, wie Sie ein neues Looker-Projekt für die Erweiterung erstellen und eine Starterweiterung generieren.

Weitere benutzerdefinierte oder erweiterte Vorlagen finden Sie im Repository für Beispiele für das Looker Extension Framework. Jede Erweiterung in diesem Repository kann geklont und als Ausgangspunkt für Ihr Projekt verwendet werden.

Nachdem Sie eine einfache Erweiterung erstellt und überprüft haben, ob alles funktioniert, können Sie weitere Funktionen und Anpassungen hinzufügen:

  • Eine Liste häufiger Anwendungsfälle mit Beispielcode finden Sie auf der Dokumentationsseite Beispielcodes für das Looker-Erweiterungs-Framework.

  • Auf der Website Looker UI Components finden Sie unsere Komponentenbibliothek für eine schnelle UI- und Layoutentwicklung.

  • Die Looker-Erweiterungsküchenvorlage ist eine Erweiterung, die Beispiele für eine Vielzahl von Erweiterungsfunktionen bietet. Du kannst diese Vorlage als Enzyklopädie oder Referenzleitfaden verwenden, jedoch nicht als Ausgangspunkt oder tatsächliche Vorlage. Wir empfehlen Ihnen, zu Beginn unseren Erweiterungsgenerator zu verwenden oder eines der einfacheren Beispiele zu klonen.