Das Looker-Erweiterungs-Framework ist ein Entwicklungs-Framework, das den Aufwand und die Komplexität beim Erstellen benutzerdefinierter JavaScript-Datenanwendungen und -tools wie
- 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 werden
- Ausgewählte interne Tools
- Anwendungen zum Einbetten in externen Anwendungen
Aktuelle Beispiele für Looker-Erweiterungen im Looker Marketplace sind das Data Dictionary für Looker und das LookML-Diagramm.
Vorteile des Frameworks für Erweiterungen
Manche Teile von Webanwendungen sind einfach und nutzerfreundlich, während andere zeitaufwendig und nicht unbedingt unterhaltsam sind. Das Framework der Erweiterung hilft Ihnen, viele dieser nicht ganz unterhaltsamen Aufgaben zu optimieren.
Das Erweiterungs-Framework übernimmt einige der mühsamen Aspekte beim Erstellen einer Webanwendung, sodass Sie sich sofort auf die Entwicklung konzentrieren können. Benutzerdefinierte Anwendungen und Tools, die mit dem Erweiterungs-Framework erstellt wurden, können über Looker aufgerufen werden. So kann Looker die folgenden Funktionen ausführen:
- Authentifizierung: Damit können Sie die vorhandenen Authentifizierungsoptionen von Looker für die Anmeldung verwenden, z. B. Passwortanmeldung, LDAP, SAML und OpenID Connect.
- Zugriffssteuerung und Berechtigungsverwaltung.
- API-Zugriff: Damit können Sie andere gängige Entwicklerressourcen wie API-Endpunkte von Drittanbietern in Looker nutzen.
Framework für Erweiterungen
Das Looker-Erweiterungsframework 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 vordefinierter React-UI-Komponenten, die Sie in Erweiterungen verwenden können.
- Das Embed SDK, eine Bibliothek, in der Sie Dashboards, Looks und Explores in Ihre Erweiterung einbetten können Den Beispielcode finden Sie unter Erweiterung für Küchenspüle. Mit dem Embed SDK können Sie Ihre Erweiterung auch in Anwendungen von Drittanbietern einbetten. Wenn Sie den Tab „Entdecken“, „Looks“ oder Dashboards in eine Erweiterung einbetten, müssen Cookies im Browser aktiviert sein.
- Mit dem
create-looker-extension
-Dienstprogramm wird eine einfache Erweiterung erstellt, die alle erforderlichen Dateien und Abhängigkeiten für Erweiterungen enthält. Sie können diese als Ausgangspunkt verwenden. - Unsere Beispiele für das Framework für Looker-Erweiterungen mit Vorlagen und Beispielerweiterungen für einen schnellen Einstieg.
- Die Möglichkeit, auf API-Endpunkte von Drittanbietern zuzugreifen und Ihrer 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.
In einer Vollbilderweiterung können Sie eine Gruppe von Nutzern daran hindern, von Ihrer Erweiterung aus zu anderen Teilen von Looker zu wechseln. Fügen Sie dazu einer Nutzergruppe hinzu, die nur die Erweiterung enthält. 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 die Erweiterung zu konfigurieren, sodass Nutzer einen Schlüssel eingeben müssen, um die Erweiterung auszuführen. Dies ist nützlich, wenn Sie für Ihre Erweiterung Gebühren erheben möchten, aber die Standardberechtigungen von Looker verwenden sollten, um den Zugriff für Nutzer zu sperren, die nie auf eine Erweiterung zugreifen können.
Anforderungen an Erweiterungs-Framework
So entwickeln Sie mit dem Looker-Erweiterungsframework:
- Sie benötigen LookML-Entwicklerberechtigungen für Ihre Instanz.
- Ihr Looker-Administrator muss die Funktion Extension Framework aktivieren.
- Wir empfehlen, JavaScript oder TypeScript zu verwenden.
- Wir empfehlen die Entwicklung in React. Es gibt jedoch ein Extension SDK für JavaScript-Rohdaten.
Damit eine Erweiterung in Looker ausgeführt werden kann, muss jede Funktion unabhängig von ihrer Funktion die folgenden Elemente in Looker enthalten:
Ein LookML-Projekt, das:
- Enthält eine Modelldatei
- Enthält eine Projektmanifestdatei
- mit einem Git-Repository verbunden ist,
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 Parameterapplication
gibt der Erweiterung ein Label, teilt Looker mit, wo der JavaScript-Code der Erweiterung zu finden ist, und stellt eine Liste der Berechtigungen für die Erweiterung bereit. Berechtigungen definieren die Looker-Ressourcen, auf die die Erweiterung zugreifen kann. Die Erweiterung kann nur dann auf eine Looker-Ressource zugreifen, wenn sie in den Berechtigungen aufgeführt ist. Hier ist ein Beispiel für eine Projektmanifestdatei mit einemapplication
-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 auf der Dokumentationsseite zum Parameter application
.
Erste Schritte mit dem Looker-Erweiterungsframework
Am einfachsten ist es, eine neue Erweiterung aus einer Vorlage zu erstellen. Anschließend können Sie diese Funktion anpassen und ergänzen. Dadurch wird sichergestellt, dass die gesamte Konfiguration und Verpackung korrekt ist, was von Hand schwierig sein kann. Auf der Seite Einführung in die Looker-Erweiterung finden Sie eine Anleitung zum Erstellen eines neuen Looker-Projekts für die Erweiterung und zum Generieren einer Starterweiterung.
Weitere benutzerdefinierte oder erweiterte Vorlagen finden Sie im Beispiel-Repository 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 zusätzliche Funktionen und Anpassungen hinzufügen:
Eine Liste häufiger Anwendungsfälle mit Beispielcode finden Sie auf der Dokumentationsseite Framework-Codebeispiele für Looker-Erweiterungen.
Auf der Website Komponenten von Looker-UI finden Sie unsere Komponentenbibliothek für die schnelle UI- und Layoutentwicklung.
Die Looker-Erweiterung „Küchenvorlage“ ist eine Erweiterung, die Beispiele für eine Vielzahl von Erweiterungsfunktionen enthält. Du kannst diese Vorlage als Enzyklopädie oder als Referenz verwenden, aber nicht als Ausgangspunkt oder als tatsächliche Vorlage. Wir empfehlen Ihnen, zu Beginn unseren Erweiterungsgenerator zu verwenden oder eines der einfacheren Beispiele zu klonen.