Modification et validation du code LookML

Utiliser l'IDE

Cette page décrit certaines des fonctionnalités de l'IDE de Looker qui peuvent vous aider à écrire du code LookML.

Vous pouvez accéder à l'environnement de développement intégré (IDE) Looker via le menu Develop (Développement) de Looker. Pour en savoir plus et obtenir d'autres options, consultez Accéder aux fichiers d'un projet.

Suggestion automatique

À mesure que vous saisissez du texte, l'IDE suggère des paramètres et des valeurs possibles qui sont sensibles au contexte de votre saisie. Par exemple, les suggestions pour le paramètre type d'une dimension n'incluront que des options valides pour ce paramètre. De plus, les champs des paramètres sql doivent être marqués avec ${...}. L'IDE ajoute donc cette syntaxe lors de la suggestion de champs.

La suggestion automatique apparaît automatiquement partout où elle peut être affichée. Pour le fermer, appuyez sur la touche Esc de votre clavier. Pour l'afficher à tout moment, appuyez sur Ctrl+Espace (Windows) ou Ctrl+Espace (Mac).

Vérification des erreurs ad hoc

L'IDE détecte les erreurs de syntaxe au fur et à mesure de la saisie. Un X rouge dans la marge indique une erreur de syntaxe, soulignée en rouge. Lorsque vous passez la souris sur cette croix rouge, une brève description du problème s'affiche. Par exemple, si vous saisissez par erreur avrage au lieu de average comme valeur du paramètre type pour une mesure, l'IDE affiche l'erreur Invalid value for "type":avrage.

L'outil de validation LookML est toujours nécessaire pour effectuer une validation complète du modèle. Certaines erreurs, telles qu'une référence de champ non valide en raison d'une jointure manquante, nécessitent un examen global du modèle. Elles ne sont donc détectées que lorsque le validateur LookML est exécuté.

Panneau "Aide rapide"

Sélectionnez l'icône Aide rapide pour ouvrir le panneau Aide rapide, qui fournit des explications et des options concernant la position actuelle dans le code. Sélectionnez un nom de paramètre dans la barre latérale pour ouvrir la page de documentation Looker correspondante.

Formatage automatique

En mode Développement, vous pouvez utiliser le raccourci clavier de mise en forme de fichier pour mettre votre fichier LookML en retrait automatiquement. Le retrait indique la hiérarchie des paramètres et des sous-paramètres, ce qui rend votre code LookML plus facile à lire et à comprendre.

Pliantes

Une petite flèche apparaît dans la marge, à côté du début de chaque paramètre LookML de premier niveau dans le fichier. Cette flèche permet de plier ou de déplier cette section du code LookML afin que vous puissiez vous concentrer sur des sections spécifiques.

Le menu See file actions (Voir les actions sur le fichier) du fichier LookML propose également les options Fold LookML (plier le code LookML) et Unfold LookML (déplier LookML) permettant de développer ou de réduire toutes les sections LookML jusqu'au paramètre de premier niveau dans le fichier actuel.

Vous pouvez également utiliser les raccourcis clavier pour plier et déplier le code LookML.

Marquer des ajouts, des modifications et des suppressions

Dans l'IDE LookML, plusieurs indicateurs sont toujours affichés en mode Développement et que vous avez des modifications non validées.

  • Le nom du fichier est indiqué par un point bleu dans la partie gauche de la fenêtre pour indiquer que le fichier est nouveau, modifié ou renommé.
  • Lorsque vous ouvrez un fichier nouveau ou modifié, les numéros des lignes qu'il contient sont surlignés en vert pour afficher les nouvelles lignes ou celles qui ont été modifiées, et une ligne rouge horizontale indique les lignes supprimées.

Ajout de commentaires

Vous pouvez ajouter des commentaires à votre code LookML pour le rendre plus lisible. Pour ajouter un seul commentaire, utilisez le caractère #:

dimension: name {
  sql: ${TABLE}.name ;; # This is the customer's full name
}

Pour mettre en commentaire un bloc de code entier à l'aide des raccourcis clavier, procédez comme suit:

  1. Sélectionnez les lignes que vous souhaitez commenter.
  2. Appuyez sur Commande+ / (Mac) ou Ctrl+ / (Windows).

L'IDE ajoutera le caractère # à chacune des lignes sélectionnées.

Commenter des blocs SQL

Si vous commentez des lignes qui se trouvent entièrement dans un bloc de code SQL, ajoutez manuellement la notation de commentaire SQL.

Lorsque vous utilisez le bloc de commentaires SQL, les sections commentées sont toujours interprétées comme du code LookML. Vos commentaires s'afficheront donc dans le code SQL généré par LookML, mais ils n'affecteront pas les résultats de la requête.

Accéder à un objet ou à un fichier

Dans l'IDE Looker, vous pouvez effectuer une recherche rapide pour accéder directement aux objets LookML et aux fichiers de projet à l'aide de la fonctionnalité Accéder à l'objet ou au fichier. Cliquez sur l'icône Accéder à un objet ou à un fichier à partir de l'explorateur de fichiers ou du navigateur d'objets, ou utilisez le raccourci clavier Commande+J (Mac) ou Ctrl+J (Windows).

Pour en savoir plus, consultez la page de documentation Accéder aux fichiers de projet LookML.

Rechercher et remplacer du texte dans votre projet

L'IDE Looker dispose d'une fonction de recherche et remplacement qui vous permet de rechercher du texte dans tous les fichiers de votre projet, puis de remplacer toutes les instances ou les instances sélectionnées en une seule opération groupée.

Pour utiliser la fonction de recherche de l'IDE Looker, procédez comme suit:

  1. Accédez au panneau de recherche dans l'IDE.
  2. Saisissez un terme dans le champ Rechercher.
  3. Vous pouvez éventuellement sélectionner Sensible à la casse pour rechercher uniquement les instances correspondant à la casse que vous avez saisie dans le champ Rechercher, ou sélectionner RegEX pour effectuer une recherche par expression régulière.
  4. Sélectionnez Rechercher.
  5. Vous pouvez éventuellement sélectionner le nom d'un fichier pour l'ouvrir dans l'IDE.

Si vous êtes en mode Développement, le champ Remplacer par est également affiché. Pour remplacer du texte dans votre projet, procédez comme suit:

  1. Saisissez le texte de remplacement dans le champ Remplacer par. Vous pouvez également laisser le champ Remplacer par vide si vous souhaitez supprimer le texte du champ Rechercher au lieu de le remplacer.

  2. Sélectionnez Sélectionner et remplacer pour prévisualiser la façon dont le texte sera remplacé dans votre projet.

  3. Les résultats affichent toutes les instances de votre projet mises en surbrillance pour les remplacements. Vous pouvez utiliser les options suivantes pour personnaliser les instances à remplacer:

    • Utilisez la case à cocher à côté du récapitulatif des résultats pour sélectionner ou désélectionner toutes les instances de votre projet.
    • Cochez ou décochez une instance pour la sélectionner ou la désélectionner.
  4. Cliquez sur le bouton Remplacer la sélection pour appliquer le remplacement aux instances sélectionnées. L'IDE affiche les modifications apportées.

Créer et tester des champs

Pour vous donner un exemple de modification du code LookML, nous allons ajouter plusieurs champs, puis les tester.

Créer une dimension

Nous allons d'abord ajouter une dimension à la vue users qui détermine si un utilisateur se trouve en Californie ou à New York. La dimension sera type: yesno, ce qui signifie qu'elle affichera Yes si l'utilisateur se trouve en Californie ou à New York, et No dans le cas contraire.

Le code LookML de notre nouvelle dimension se présente comme suit:

dimension: from_ca_or_ny {
  type: yesno
  sql: ${TABLE}.state = "California" OR ${TABLE}.state = "New York" ;;
}

Ajoutez cette dimension au fichier de vue user, puis cliquez sur le bouton Enregistrer les modifications du fichier.

Pour en savoir plus sur ${TABLE}.state, consultez la section Opérateurs de substitution.

Créer une mesure

Nous allons ensuite ajouter une mesure à la vue user qui correspond à la moyenne de l'âge de nos utilisateurs. Cette mesure sera type: average et sera agrégée pour la colonne age.

Le code LookML de cette nouvelle mesure se présente comme suit:

measure: average_age {
  type: average
  sql: ${TABLE}.age ;;
}

Ajoutez cette mesure au fichier de vue user, puis cliquez sur le bouton Save Changes (Enregistrer les modifications) du fichier.

Tester les champs dans l'exploration

Vous pouvez tester votre nouvelle dimension et la mesurer en les interrogeant. Une fois vos modifications enregistrées, ces champs apparaissent dans le sélecteur de champs dans l'exploration. Utilisez le menu déroulant Voir les actions sur les fichiers à côté du nom de fichier de la vue pour accéder facilement à l'exploration de la vue actuelle. Le menu déroulant See file actions (Voir les actions sur les fichiers) répertorie toutes les explorations basées sur la vue, y compris les explorations auxquelles la vue est jointe. Par exemple, pour accéder à l'exploration d'une vue appelée users, vous pouvez sélectionner l'option Explorer les utilisateurs dans le menu déroulant Voir les actions sur les fichiers.

Dans l'exploration Utilisateurs, vous pouvez sélectionner les nouveaux champs pour les ajouter à une requête. Par exemple, vous pouvez créer une requête avec les deux nouveaux champs indiquant l'âge moyen des utilisateurs qui se trouvent en Californie ou à New York et l'âge moyen des utilisateurs qui ne sont pas:

Tableau de données d'un exemple d'exploration "Utilisateurs" avec les champs Utilisateurs de Californie ou New York (Oui/Non) et Âge moyen des utilisateurs sélectionnés.

Valider votre code LookML

Lorsque les modifications vous conviennent, vous pouvez les enregistrer. L'IDE vous alerte en cas d'erreur de syntaxe non résolue dans un seul fichier.

Utilisez ensuite le validateur LookML pour effectuer une validation complète du modèle. Certaines erreurs, telles qu'une référence de champ non valide en raison d'une jointure manquante, nécessitent un examen global du modèle. Elles ne sont donc détectées que lorsque le validateur LookML est exécuté. Veillez à valider vos modifications LookML avant de les publier dans l'environnement de production. Bien que la validation ne détecte pas tous les problèmes, tels que les problèmes d'autorisation de base de données, elle empêche la plupart des erreurs.

Le programme de validation LookML n'analyse que les fichiers LookML qui ont été mis à jour depuis la dernière validation LookML ou qui sont concernés par les mises à jour:

  • Si un paramètre au niveau du modèle change, tout est à nouveau validé.
  • Si une vue est modifiée, seules les explorations dans lesquelles elle est utilisée sont à nouveau validées.
  • Si une exploration change, seule cette exploration est validée à nouveau.

Validation en cours

Pour exécuter l'outil de validation LookML, cliquez sur le bouton Validate LookML (Valider LookML) en haut à droite de l'IDE Looker, ou cliquez sur l'icône Project Health (État du projet) en haut de l'IDE pour ouvrir le panneau Project Health (État du projet), puis cliquez sur l'icône Validate LookML (Valider LookML).

Après avoir exécuté l'outil de validation LookML, une liste d'erreurs et d'autres avertissements peut s'afficher. Vous pouvez sélectionner n'importe quelle flèche pour développer les listes d'erreurs ou d'avertissements.

Le bouton de validation dans le panneau État du projet s'affiche à nouveau si vous effectuez et enregistrez une autre modification.

Messages de validation

Looker affiche des messages de validation après l'exécution de la validation sur votre code LookML.

Aucune erreur LookML trouvée

Si aucun problème n'est détecté par le programme de validation, Looker affiche une coche verte avec le texte Aucune erreur LookML trouvée.

Erreurs LookML

Les erreurs LookML sont des problèmes qui peuvent empêcher l'exécution des requêtes. Le nombre entre parenthèses correspond au nombre d'erreurs détectées (neuf dans l'exemple suivant):

Exemple de message de validation avec le texte "Erreurs LookML" (9).

La liste des problèmes qui s'affiche indique la raison pour laquelle la validation a échoué. Souvent, si vous cliquez sur l'erreur, vous accédez directement à la ligne de code qui pose problème. Un "X " rouge s'affiche à côté de la ligne. Pointez dessus pour afficher des informations plus détaillées sur l'erreur dans certains cas:

Exemple d'erreur qui s'affiche lorsque l'utilisateur pointe sur une définition de paramètre de type sans valeur, avec un texte d'erreur indiquant que vous devez fournir une valeur pour le type

Conseil à l'équipe Chat: L'erreur de validation qui nous est le plus souvent posée est "Champ inconnu ou inaccessible". Consultez la page des bonnes pratiques Erreur: champ inconnu ou inaccessible afin de connaître les causes et la procédure à suivre pour y remédier.

Avertissements LookML

Les avertissements LookML n'empêchent pas forcément l'exécution d'une requête, mais ils peuvent tout de même entraîner un dysfonctionnement ou un fonctionnement inattendu pour vos utilisateurs. Comme pour les erreurs, le nombre entre parenthèses correspond au nombre d'avertissements détectés (trois avertissements dans l'exemple suivant):

Exemple de message de validation avec le texte Avertissements LookML (3).

Comme pour les erreurs LookML, vous pouvez développer les avertissements et accéder au code du problème en sélectionnant l'avertissement dans le panneau Project Health (État du projet), puis en pointant sur l'icône rouge X pour afficher plus d'informations:

Exemple d'avertissement avec un texte indiquant que l'exploration doit correspondre à un nom de vue, ou qu'elle doit avoir une propriété from ou view_name.

Déployer vos modifications

Après avoir vérifié que vos modifications fonctionnent correctement, vous pouvez utiliser l'intégration Git de Looker pour valider et déployer vos modifications en production.