framework d'extension Looker

Le framework d'extension de Looker est un framework de développement qui réduit considérablement les efforts et la complexité liés à la création d'applications et d'outils de données JavaScript personnalisés. Par exemple:

  • Applications de plate-forme internes de votre entreprise
  • Plates-formes externes pour vos clients, telles que les portails client d'applications d'analyse intégrée créées avec des données dans Looker
  • Outils internes ciblés
  • Applications pour l'intégration dans des applications externes

Parmi les extensions Looker actuellement disponibles sur Looker Marketplace figurent le dictionnaire de données Looker et le diagramme LookML.

Pourquoi utiliser le framework d'extension ?

Certains aspects de la création d'applications Web sont faciles et amusants, tandis que d'autres sont évidemment plus chronophages et pas vraiment amusants. Le framework d'extension vous aide à simplifier bon nombre de ces tâches moins amusantes.

Le framework d'extension s'occupe de certains aspects les plus fastidieux de la création d'une application Web, ce qui vous permet de vous concentrer sur le développement immédiatement. Looker permet d'accéder aux applications et outils personnalisés créés avec le framework d'extension, ce qui permet de gérer les types de fonctions suivants:

Fonctionnalités du framework d'extension

Le framework d'extension de Looker inclut les fonctionnalités suivantes:

  • Le SDK d'extension Looker, qui fournit des fonctions permettant d'accéder à l'API publique Looker et d'interagir dans l'environnement Looker.
  • Composants Looker, une bibliothèque de composants d'UI React prédéfinis que vous pouvez utiliser dans vos extensions.
  • Le SDK Embed, une bibliothèque que vous pouvez utiliser pour intégrer des tableaux de bord, des Looks et des explorations dans votre extension. Consultez l'extension d'évier de cuisine pour obtenir un exemple de code. Vous pouvez également utiliser le SDK Embed pour intégrer votre extension dans des applications tierces. Les cookies doivent être activés dans le navigateur lorsque vous intégrez des explorations, des Looks ou des tableaux de bord dans une extension.
  • L'utilitaire create-looker-extension, qui crée une extension de base qui inclut tous les fichiers d'extension et toutes les dépendances nécessaires. Vous pouvez l'utiliser comme point de départ.
  • Notre dépôt d'exemples de framework d'extensions Looker, qui comprend des modèles et des exemples d'extensions pour vous aider à démarrer rapidement.
  • La possibilité d'accéder à des points de terminaison d'API tierces et d'ajouter des données tierces à votre extension
  • Possibilité de créer des extensions en plein écran dans Looker Les extensions en plein écran peuvent être utilisées pour les applications de plate-forme internes ou externes.

    Dans une extension en plein écran, vous pouvez empêcher un ensemble d'utilisateurs d'accéder à d'autres parties de Looker depuis votre extension en ajoutant des utilisateurs à un groupe d'utilisateurs Extensions uniquement. Vous pouvez également supprimer la barre de navigation Looker en remplaçant /extensions par /spartan dans l'URL de l'extension.

  • La possibilité de configurer une clé d'accès pour votre extension de sorte que les utilisateurs soient obligés d'en saisir une pour exécuter l'extension. Cela est utile si vous souhaitez facturer votre extension, mais vous devez utiliser les autorisations Looker standards pour restreindre l'accès aux personnes qui ne devraient jamais pouvoir y accéder.

  • À partir de Looker 24.0, les extensions peuvent être développées pour s'exécuter dans une carte dans les tableaux de bord. Les extensions qui peuvent être exécutées en tant que carte ou visualisation peuvent être ajoutées lorsque le tableau de bord est en mode Édition ou enregistrées dans un tableau de bord en tant que visualisation à partir d'une exploration. Les extensions peuvent également être configurées sous forme de vignettes dans les tableaux de bord LookML.

Exigences liées au framework des extensions

Pour développer à l'aide du framework d'extension de Looker:

  • Vous devez disposer des autorisations de développeur LookML sur votre instance.
  • Votre administrateur Looker doit activer la fonctionnalité Extension Framework.
  • Il est recommandé de connaître JavaScript ou TypeScript.
  • Nous vous recommandons le développement dans React, bien qu'il existe un SDK d'extension pour le code JavaScript brut.

Pour s'exécuter dans Looker, chaque extension, quelle que soit sa fonction, doit inclure les éléments suivants:

  • Un projet LookML qui:

  • Le fichier de modèle LookML nécessite un paramètre connection qui pointe vers une connexion de base de données valide sur votre instance.

  • Le fichier manifeste du projet nécessite un paramètre application. Le paramètre application attribue un libellé à l'extension, indique à Looker où trouver le JavaScript de l'extension et fournit une liste des droits d'accès de l'extension. Les droits définissent les ressources Looker auxquelles l'extension peut accéder. L'extension ne pourra pas accéder à une ressource Looker, sauf si celle-ci est répertoriée dans les droits d'accès.

    Voici un exemple de fichier manifeste de projet avec un paramètre 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: []
        }
      }
    

    Pour en savoir plus, consultez la page de documentation sur le paramètre application.

Commencer à développer avec le framework d'extension de Looker

Le moyen le plus simple est de générer d'abord une nouvelle extension de démarrage à partir d'un modèle, puis de personnaliser et d'ajouter des fonctionnalités à ce déclencheur. Cela garantit que toutes les configurations et tous les packagings sont corrects, ce qui peut être difficile à faire manuellement. Consultez la page de documentation Créer une extension Looker pour savoir comment créer un projet Looker pour votre extension et générer une extension de démarrage.

Pour obtenir des modèles plus personnalisés ou avancés, vous pouvez parcourir le dépôt d'exemples du framework d'extension Looker. Toute extension de ce dépôt peut être clonée et réutilisée comme point de départ de votre projet.

Une fois que vous avez créé une extension simple et vérifié que tout fonctionne correctement, vous pouvez ajouter des fonctionnalités et des personnalisations supplémentaires:

  • Vous pouvez consulter une liste de cas d'utilisation courants avec des exemples de code sur la page de documentation Exemples de code du framework d'extension Looker.

  • Reportez-vous au site des composants d'UI Looker pour utiliser notre bibliothèque de composants et accélérer le développement d'interfaces utilisateur et de mises en page.

  • Le modèle Looker Extension Kitchensink est une extension qui fournit des exemples de nombreuses fonctionnalités d'extension. Vous pouvez utiliser ce modèle comme encyclopédie ou comme guide de référence, mais pas comme point de départ ni comme modèle. Pour commencer, nous vous recommandons d'utiliser notre générateur d'extensions ou de cloner l'un des exemples les plus simples.

  • Des exemples d'extensions pouvant être utilisées en tant que vignettes de tableau de bord sont également disponibles. L'extension de visualisation de cartes montre comment créer une visualisation personnalisée à l'aide du framework d'extension. L'extension du SDK de cartes affiche les méthodes d'API disponibles spécifiques aux extensions de carte.