Il framework di estensioni di Looker è un framework di sviluppo che riduce in modo significativo l'impegno e la complessità della creazione di applicazioni e strumenti di dati JavaScript personalizzati, ad esempio:
- Applicazioni della piattaforma interna per la tua azienda
- Piattaforme esterne per i tuoi clienti, come i portali clienti per le applicazioni di analisi incorporate create con i dati in Looker
- Strumenti interni mirati
- Applicazioni per l'incorporamento in applicazioni esterne
Gli esempi attuali di estensioni di Looker disponibili su Looker Marketplace includono Data Dictionary e Diagramma LookML di Looker.
Perché utilizzare il framework delle estensioni?
Alcune parti della creazione di applicazioni web sono facili e divertenti, mentre altre sono ovviamente più dispendiose in termini di tempo e non esattamente divertenti. Il framework delle estensioni ti aiuta a semplificare molte di queste attività non proprio divertenti.
Il framework di estensione si occupa di alcuni degli aspetti più noiosi della creazione di un'applicazione web, in modo che tu possa concentrarti sull'inizio dello sviluppo. È possibile accedere ad applicazioni e strumenti personalizzati creati con il framework delle estensioni da Looker, consentendo a Looker di gestire i seguenti tipi di funzioni, ad esempio:
- Autenticazione: consente di utilizzare le opzioni di autenticazione esistenti di Looker per l'accesso (ad esempio accesso con password, LDAP, SAML e OpenID Connect).
- Controllo dell'accesso e gestione delle autorizzazioni.
- Accesso API: consente di utilizzare altre risorse comuni per sviluppatori, come gli endpoint API di terze parti, all'interno di Looker.
Funzionalità del framework estensione
Il framework di estensione Looker include le seguenti funzionalità:
- L'SDK Looker Extension, che fornisce funzioni per l'accesso all'API pubblica di Looker e per l'interazione all'interno dell'ambiente Looker.
- Componenti Looker, una libreria di componenti UI React predefiniti che puoi utilizzare nelle tue estensioni.
- L'SDK Embed, una libreria che puoi utilizzare per incorporare dashboard, Look ed Explore nella tua estensione. Per un esempio di codice, consulta l'estensione Kitchen Sink. Puoi anche utilizzare l'SDK Embed per incorporare l'estensione in applicazioni di terze parti. I cookie devono essere attivati nel browser quando incorpori esplorazioni, look o dashboard in un'estensione.
- L'utilità
create-looker-extension, che crea un'estensione di base che include tutti i file e le dipendenze necessari e che puoi utilizzare come punto di partenza per la creazione. - Il nostro repository di esempi di framework di estensioni di Looker, che include modelli ed estensioni di esempio per aiutarti a iniziare rapidamente.
- La possibilità di accedere agli endpoint API di terze parti e aggiungere dati di terze parti all'estensione.
La possibilità di creare estensioni a schermo intero in Looker. Le estensioni a schermo intero possono essere utilizzate per applicazioni della piattaforma interne o esterne.
In un'estensione a schermo intero, puoi impedire a un insieme di utenti di navigare in altre parti di Looker dalla tua estensione aggiungendoli a un gruppo di utenti Solo estensioni. Puoi anche rimuovere la barra di navigazione di Looker sostituendo
/extensionscon/spartannell'URL dell'estensione.La possibilità di configurare una chiave di accesso per l'estensione in modo che gli utenti debbano inserirla per eseguirla. Questa opzione è utile se vuoi addebitare un costo per la tua estensione, ma devi utilizzare le autorizzazioni standard di Looker per limitare l'accesso a chi non dovrebbe mai accedere a un'estensione.
A partire da Looker 24.0, le estensioni possono essere sviluppate per essere eseguite in un riquadro delle dashboard. Le estensioni che supportano l'esecuzione come riquadro o visualizzazione possono essere aggiunte mentre la dashboard è in modalità di modifica o salvate in una dashboard come visualizzazione da un'esplorazione. Le estensioni possono anche essere configurate come riquadri nelle dashboard LookML.
Requisiti del framework di estensione
Per sviluppare utilizzando il framework di estensione di Looker:
- Devi disporre delle autorizzazioni di sviluppatore LookML per la tua istanza.
- L'amministratore di Looker deve attivare la funzionalità Extension Framework.
- Ti consigliamo di avere familiarità con JavaScript o TypeScript.
- Consigliamo lo sviluppo in React, anche se esiste un SDK di estensione per JavaScript non elaborato.
Per essere eseguita in Looker, ogni estensione, indipendentemente dalla sua funzione, deve includere i seguenti elementi in Looker:
Un progetto LookML che soddisfi questi requisiti:
- Include un file del modello
- Include un file manifest del progetto
- È collegato a un repository Git
Il file del modello LookML richiede un parametro
connectionche rimandi a una connessione al database valida nella tua istanza.Il file manifest del progetto richiede un parametro
application. Il parametroapplicationfornisce all'estensione un'etichetta, indica a Looker dove trovare il JavaScript dell'estensione e fornisce un elenco di diritti per l'estensione. I diritti definiscono le risorse Looker a cui l'estensione può accedere. L'estensione non potrà accedere a una risorsa Looker a meno che non sia elencata nei diritti.Di seguito è riportato un esempio di file manifest del progetto con un parametro
application:project_name: "super_duper_extension" application: super_duper_extension { label: "Super Duper Extension" url: "http://localhost:8080/dist/bundle.js" mount_points: { standalone: no } 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: [] } }Per maggiori dettagli, consulta la pagina della documentazione del parametro
application.
Iniziare a sviluppare con il framework di estensione di Looker
Il modo più semplice per iniziare è generare una nuova estensione iniziale da un modello, quindi personalizzare e aggiungere funzionalità a questa estensione iniziale. In questo modo, la configurazione e il packaging sono corretti, cosa difficile da fare manualmente. Consulta la pagina della documentazione Creazione di un'estensione Looker per istruzioni su come creare un nuovo progetto Looker per l'estensione e generare un'estensione iniziale.
Per modelli più personalizzati o avanzati, puoi sfogliare il repository di esempi del framework di estensioni di Looker. Qualsiasi estensione in questo repository può essere clonata e riutilizzata come punto di partenza per il tuo progetto.
Una volta creata un'estensione di base e verificato che tutto funzioni, puoi iniziare ad aggiungere funzionalità e personalizzazioni aggiuntive:
Puoi visualizzare un elenco di casi d'uso comuni con codice di esempio nella pagina della documentazione Esempi di codice del framework delle estensioni di Looker.
Consulta il sito Componenti UI di Looker per utilizzare la nostra libreria di componenti per lo sviluppo rapido di UI e layout.
Il modello Kitchensink dell'estensione Looker è un'estensione che fornisce esempi di un'ampia gamma di funzionalità delle estensioni. Puoi utilizzare questo modello come enciclopedia o guida di riferimento, ma non come punto di partenza o modello effettivo. Ti consigliamo di utilizzare il nostro generatore di estensioni o di clonare uno degli esempi più semplici per iniziare.
Sono disponibili anche esempi di estensioni che possono essere utilizzate come riquadri della dashboard. L'estensione di visualizzazione a riquadri mostra come creare una visualizzazione personalizzata utilizzando il framework delle estensioni. L'estensione SDK per riquadri mostra i metodi API disponibili specifici per le estensioni dei riquadri.