Un Storeview vous permet d'exécuter des requêtes JOIN et d'analyser les données issues de plusieurs Logstores. Cette rubrique explique comment créer un Storeview pour Logstore et exploiter ses fonctionnalités de requête et d'analyse.
Créer un Storeview pour Logstore
Prérequis
Vous avez créé un projet et un Logstore Standard, et la collecte des journaux est configurée. Pour plus d'informations, consultez les rubriques Gérer les projets, Créer un Logstore de base et Collecte de données.
Procédure
Connectez-vous à la console Simple Log Service. Dans la liste Projects, cliquez sur le projet cible.
Dans le volet de navigation de gauche, choisissez . Cliquez ensuite sur Create Now ou sur l'icône
pour créer une vue Log Data View.-
Dans la boîte de dialogue Create Storeview, saisissez un Storeview Name, ajoutez les Logstores à associer, puis cliquez sur OK. La création du Storeview prend environ une minute.
RemarqueChaque projet Simple Log Service prend en charge un maximum de 10 vues Log Data View.
Chaque vue Log Data View peut être associée à un maximum de 50 Logstores.
Tous les Logstores d'une vue Log Data View doivent appartenir au même compte Alibaba Cloud.
Fonctionnalité de requête
La vue Log Data View prend en charge les requêtes transversales entre plusieurs Logstores. Par exemple, si une vue Log Data View est associée à deux Logstores, LogStore-1 et LogStore-2, et que tous deux contiennent le champ a, la requête * | select a from log where a > 1 renvoie les journaux de LogStore-1 et LogStore-2 où le champ a satisfait la condition a > 1.
Si une vue Log Data View contient deux Logstores ayant un contenu identique, une recherche par mot-clé renvoie tous les résultats correspondants provenant des deux Logstores. Utilisez le champ de tag pour identifier le Logstore source de chaque entrée de journal.
Dans les détails des journaux issus des résultats de la requête, utilisez le champ __tag__:__logstore__ pour identifier le Logstore source d'une entrée. Par exemple, la valeur logstore-2 indique que l'entrée provient du Logstore-2.
Fonctionnalité d'analyse
Une vue Data View permet d'effectuer des analyses d'agrégation sur plusieurs Logstores. Par exemple, si un Storeview est associé aux Logstores logstore-1 et logstore-2, et que tous deux contiennent un champ nommé a, la requête * | select a, count(1) group by a renvoie le nombre total pour chaque valeur du champ a, agrégé à partir des deux Logstores.
L'analyse d'agrégation nécessite que les clés de champ soient cohérentes. Lorsque les Logstores ont un contenu similaire mais des noms de champs différents, utilisez une prédéfinition pour filtrer les données ou renommer les champs. Par exemple, pour agréger le champ a du logstore-1 et le champ b du logstore-2, renommez d'abord le champ b en a.
Lors de la création d'une vue Log Data View, appliquez une prédéfinition SPL aux Logstores associés. La prédéfinition ne prend en charge que les mots-clés extend et where. Cela permet de filtrer les données ou de résoudre les incohérences de nommage des champs, ce qui s'avère utile pour les analyses d'agrégation. Par exemple, pour agréger le champ a du logstore-1 et le champ b du logstore-2, utilisez une expression telle que extend a = b pour aligner les noms de champs.
Examinez les deux scénarios suivants :
-
Scénario 1 :
Une vue Log Data View est associée à différents Logstores provenant du même service, dont le contenu des journaux est identique. Vérifiez d'abord que les configurations d'index des Logstores sont compatibles. Assurez-vous par exemple qu'ils utilisent tous l'indexation en texte intégral ou que les champs requis disposent de la même configuration d'index. Ajoutez ensuite les Logstores nécessaires à la vue Log Data View.
Après avoir créé la vue Log Data View, utilisez SQL pour l'analyse. Une analyse des différentes valeurs de
statussur les 15 dernières minutes agrège les journaux des deux Logstores.Par exemple, l'instruction SQL
* | SELECT status, count(*) AS PV GROUP BY statusaffiche 4 PV pour le statut 200 et 8 PV pour le statut 302. -
Scénario 2 :
Une vue Log Data View est associée à différents Logstores provenant du même service, mais certains champs de journal portent des noms différents. Utilisez une prédéfinition SPL pour créer un nouveau champ avec un nom cohérent. Par exemple, employez l'instruction SPL
*|extend request_method = methodpour renommer le champmethodenrequest_method. Cliquez sur Preview Data pour visualiser les résultats de la prédéfinition.Utilisez ensuite le champ
request_methoddans vos requêtes et analyses.Par exemple, saisissez l'instruction SQL
* | SELECT request_method, count(*) GROUP BY request_method order by request_method descdans l'éditeur de requête. Cliquez sur Query/Analysis et consultez le résultat dans l'onglet Statistics Chart. Le résultat affiche 4 requêtes GET et 1 requête nulle.
Exemples de requête et d'analyse
|
Scenario |
Predefined query |
Query statement |
Result |
|||
|
Les Logstores logstore-1 et logstore-2 contiennent tous deux le champ |
Aucune |
|
Renvoie les lignes contenant |
|||
|
Les Logstores logstore-1 et logstore-2 contiennent tous deux les champs |
Aucune |
|
select a where b=1` |
Renvoie toutes les valeurs du champ |
||
|
Les Logstores logstore-1 et logstore-2 contiennent tous deux les champs |
|
|
select a` |
Renvoie toutes les valeurs du champ |
||
|
Les Logstores logstore-1 et logstore-2 contiennent tous deux les champs |
|
where a>1` |
|
select a` |
Renvoie les valeurs du champ |
|
|
Les Logstores logstore-1 et logstore-2 contiennent tous deux les champs |
|
where a>1 |
extend y=upper(a)` |
|
select *` |
Renvoie tous les champs répondant aux conditions, y compris le nouveau champ |
|
Le Logstore logstore-1 contient les champs |
Aucune |
|
Renvoie les champs |
|||
|
Le Logstore logstore-1 possède les champs d'index |
Aucune |
|
select a, count(1) group by a` |
Étant donné que le champ |
Gestion des incohérences
Une requête peut renvoyer des résultats même si un même champ présente des types de données différents selon les Logstores.
Si une requête d'analyse porte sur un champ présent uniquement dans certains des Logstores associés, la requête renvoie les résultats uniquement pour ces Logstores.
Une instruction d'analyse échoue et renvoie une erreur si elle implique des champs dont les configurations d'index sont incohérentes entre les Logstores.
Étapes suivantes
Interroger un Storeview
Dans le volet de navigation de gauche, choisissez pour afficher les Storeviews créés pour Logstore.
Mettre à jour un Storeview
Dans la liste des Storeviews, placez le curseur sur le Storeview cible, cliquez sur l'icône
, puis cliquez sur Modify.-
Dans le panneau Update Storeview, modifiez les Logstores associés, puis cliquez sur OK.
Dans la section Stores, sélectionnez le projet et le Logstore (Logstore ou SQL store) pour chaque magasin. Vous pouvez cliquer sur + STORE pour ajouter d'autres magasins.
Supprimer un Storeview
Dans la liste des Storeviews, placez le curseur sur le Storeview cible, cliquez sur l'icône
, puis cliquez sur Delete.
Documents connexes
Vous pouvez gérer les Storeviews à l'aide des opérations d'API suivantes :