

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Connectez-vous à des sources de données intégrées
<a name="AMG-data-sources-builtin"></a>

Les sources de données suivantes sont prises en charge dans tous les espaces de travail Amazon Managed Grafana.

Pour les espaces de travail compatibles avec la version 9 et les versions ultérieures, certaines de ces sources de données peuvent ne pas être installées par défaut. Les sources de données principales sont disponibles sur toutes les installations, mais les sources de données qui ne font pas partie de l'ensemble de base peuvent nécessiter l'installation du plugin Grafana approprié. Vous pouvez installer des plug-ins pour des sources de données supplémentaires qui ne sont pas répertoriées ici. Pour plus d'informations sur la gestion des plug-ins, consultez[Étendez votre espace de travail avec des plugins](grafana-plugins.md).

**Topics**
+ [Gestionnaire d'alertes](data-source-alertmanager.md)
+ [Amazon CloudWatch](using-amazon-cloudwatch-in-AMG.md)
+ [Amazon OpenSearch Service](using-Amazon-OpenSearch-in-AMG.md)
+ [AWS IoT SiteWise](using-iotsitewise-in-AMG.md)
+ [AWS IoT TwinMaker](AMG-iot-twinmaker.md)
+ [Prometheus](prometheus-data-source.md)
+ [Amazon Timestream](timestream-datasource.md)
+ [Amazon Athena](AWS-Athena.md)
+ [Amazon Redshift](AWS-Redshift.md)
+ [AWS X-Ray](x-ray-data-source.md)
+ [Moniteur Azure](using-azure-monitor-in-AMG.md)
+ [Graphite](using-graphite-in-AMG.md)
+ [Surveillance de Google Cloud](using-google-cloud-monitoring-in-grafana.md)
+ [InfluxDB](using-influxdb-in-AMG.md)
+ [Jaeger](jaeger-data-source.md)
+ [Loki](using-loki-in-AMG.md)
+ [Microsoft SQL Server](using-microsoft-sql-server-in-AMG.md)
+ [MySQL](using-mysql-in-AMG.md)
+ [OpenSearch](using-opensearch-in-AMG.md)
+ [OpenTSDB](using-opentsdb-in-AMG.md)
+ [PostgreSQL](using-postgresql-in-AMG.md)
+ [Temple](tempo-data-source.md)
+ [TestData](testdata-data-source.md)
+ [Zipkin](zipkin-data-source.md)

# Se connecter à une source de données Alertmanager
<a name="data-source-alertmanager"></a>

Grafana inclut un support intégré pour Prometheus Alertmanager. Une fois les alertes Grafana configurées, vous pouvez utiliser l'interface utilisateur des alertes Grafana pour gérer les silences, les points de contact ainsi que les politiques de notification. Une option déroulante dans ces pages vous permet de basculer entre Grafana et n'importe quelle source de données Alertmanager configurée.

**Implémentations d'AlertManager**

[Les implémentations d'Alertmanager](https://prometheus.io/) dans Prometheus[,](https://cortexmetrics.io/) Cortex et [Grafana Mimir](https://grafana.com/docs/mimir/latest/) sont prises en charge. Vous pouvez définir l'implémentation sur la page des paramètres de la source de données. Les points de contact et les politiques de notification de Prometheus sont en lecture seule dans l'interface utilisateur d'alerte de Grafana, car elle ne prend pas en charge la mise à jour de la configuration via l'API HTTP.

## Configuration d'une source de données Alertmanager
<a name="data-source-alertmanager-create"></a>

Vous pouvez configurer une source de données Alertmanager à utiliser avec les alertes Grafana.

**Conditions préalables**

Pour configurer Alertmanager, vous devez remplir les conditions préalables suivantes :
+ Une instance de Prometheus, avec des métriques ingérées et au moins une règle d'alerte ou d'enregistrement configurée. Vous aurez besoin de l'URL de votre espace de travail.
+ Autorisations définies pour qu'Amazon Managed Grafana ait un accès en lecture à vos alertes, groupes d'alertes, silences et points de contact depuis votre implémentation d'Alertmanager.

**Pour configurer une source de données Alertmanager**

1. **Depuis votre console Grafana, dans le menu Grafana, choisissez la page **Source de données sous Configuration**.**

1. Choisissez **Ajouter une source de données**, puis sélectionnez **Alertmanager** dans la liste des types de sources de données.

1. Fournissez les informations suivantes pour votre nouvelle source de données.
   + Dans **Nom**, saisissez le nom de votre choix pour votre source de données.
   + ****Pour **Implémentation**, choisissez votre implémentation d'Alertmanager : Prometheus, **Mimir ou Cortex**.****
   + Sous **HTTP**, pour **URL**, indiquez l'URL d'Alertmanager. Pour Prometheus, il s'agit de l'URL de l'espace de travail, ajoutée en annexe. `alertmanager` Par exemple, `https://myprometheus/workspaces/ws-example-1234-5678-abcd-xyz00000001/alertmanager`.
   + Sous **Auth**, configurez les informations d'authentification nécessaires pour accéder à votre implémentation d'Alertmanager.

1. Choisissez **Enregistrer et tester** pour terminer la configuration de votre source de données.

   Si votre source de données est correctement configurée, vous verrez un message indiquant que le **bilan de santé est réussi**.

# Connect à une source de CloudWatch données Amazon
<a name="using-amazon-cloudwatch-in-AMG"></a>

Avec Amazon Managed Grafana, vous pouvez ajouter Amazon en CloudWatch tant que source de données en utilisant l'option de configuration de la source de AWS données dans la console de l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout en CloudWatch tant que source de données en découvrant vos CloudWatch comptes existants et en gérant la configuration des informations d'authentification requises pour y accéder CloudWatch. Vous pouvez utiliser cette méthode pour configurer l'authentification et l'ajouter CloudWatch en tant que source de données. Vous pouvez également configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.

**Topics**
+ [Utiliser la configuration AWS de la source de données pour l'ajouter CloudWatch en tant que source de données](adding-CloudWatch-AWS-config.md)
+ [Ajouter manuellement CloudWatch en tant que source de données](adding--CloudWatch-manual.md)
+ [Utilisation de l’éditeur de requêtes](CloudWatch-using-the-query-editor.md)
+ [Tableaux de bord sélectionnés](CloudWatch-curated-dashboards.md)
+ [Requêtes modélisées](cloudwatch-templated-queries.md)
+ [Utilisation d'exemples d'ec2\$1instance\$1attribute](cloudwatch-ec2-instance-attribute-examples.md)
+ [Utilisation de variables de modèle au format JSON](cloudwatch-using-json-format-template-variables.md)
+ [Tarification](cloudwatch-pricing.md)
+ [Quotas de service](cloudwatch-service-quotas.md)
+ [Observabilité entre comptes](cloudwatch-cross-account.md)

# Utiliser la configuration AWS de la source de données pour l'ajouter CloudWatch en tant que source de données
<a name="adding-CloudWatch-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par des services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les CloudWatch ressources de votre compte ou de l'ensemble de votre unité organisationnelle. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour l'ajouter en CloudWatch tant que source de données.

**Pour utiliser la configuration AWS de la source de données pour l'ajouter CloudWatch en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Dans le volet de navigation, cliquez sur l'icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. 

1. Cochez la case pour **Amazon**, CloudWatch puis choisissez **Actions**, **Activer la politique gérée par les services**.

1. Cliquez à nouveau **sur l'onglet Sources de données**. 

1. Choisissez **Configure in Grafana** dans la ligne **Amazon CloudWatch**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center, si nécessaire.

1. Dans la barre de navigation de la console de l'espace de travail Grafana, choisissez l' AWS icône, puis choisissez **AWS services**,. **CloudWatch**

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de CloudWatch données effectue la requête. 

1. Sélectionnez les comptes souhaités, puis choisissez **Ajouter une source de données**.

# Ajouter manuellement CloudWatch en tant que source de données
<a name="adding--CloudWatch-manual"></a>

**Pour ajouter manuellement la source CloudWatch de données**

1. **Dans le menu latéral de la console Grafana, survolez l'icône **Configuration** (engrenage), puis choisissez Sources de données.**

1. Choisissez **Add data source**.

1. Choisissez la source **CloudWatch**de données. Si nécessaire, vous pouvez commencer à taper **CloudWatch** dans le champ de recherche pour vous aider à le trouver.

## CloudWatch paramètres
<a name="settings-CloudWatch"></a>

Les CloudWatch paramètres suivants s'appliquent.


| Nom | Description | 
| --- | --- | 
|  `Name`  | Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes. | 
|  `Default`  | Désigne la source de données à présélectionner pour les nouveaux panneaux. | 
|  `Default Region`  | Définissez la région dans l'éditeur de requêtes. Peut être modifié en fonction de chaque requête. | 
|  `Namespaces of Custom Metrics`  | Spécifie les CloudWatch espaces de noms des métriques personnalisées. Peut inclure plusieurs espaces de noms, séparés par des virgules. | 
|  `Auth Provider`  | Spécifie le fournisseur qui doit obtenir les informations d'identification. | 
|  `Assume Role Arn`  | Spécifie le nom de ressource Amazon (ARN) du rôle à assumer. | 
|  `External ID`  | (Facultatif) Spécifie l'ID externe. À utiliser si vous jouez un rôle dans un autre Compte AWS qui a été créé avec un identifiant externe. | 
| `Timeout` | Configurez le délai d'expiration spécifiquement pour les requêtes CloudWatch Logs. | 
| `X-Ray trace links` | Pour ajouter automatiquement des liens dans vos journaux lorsque le journal contient le `@xrayTraceId` champ, liez une source de données X-Ray dans la section **X-Ray Trace link** de la configuration de la source de données. Une [source de données X-Ray](x-ray-data-source.md) doit déjà être configurée. | 

### Authentification
<a name="CloudWatch-authentication"></a>

Pour activer l'authentification entre Amazon Managed Grafana et Amazon Managed Grafana CloudWatch, vous pouvez utiliser la console Amazon Managed Grafana pour créer rapidement les politiques et les autorisations nécessaires. Vous pouvez également configurer manuellement l'authentification en utilisant certaines des mêmes méthodes que sur un serveur Grafana autogéré.

Pour utiliser la configuration de la source de données Amazon Managed Grafana afin de configurer rapidement les politiques, suivez les étapes décrites dans. [Utiliser la configuration AWS de la source de données pour l'ajouter CloudWatch en tant que source de données](adding-CloudWatch-AWS-config.md)

Pour configurer les autorisations manuellement, utilisez l'une des méthodes décrites dans la section suivante.

#### AWS informations d'identification
<a name="CloudWatch-authentication-aws-credentials"></a>

Trois méthodes d'authentification différentes sont disponibles. 
+ **AWS SDK par défaut** : utilise les autorisations définies dans le rôle associé à votre espace de travail. Pour de plus amples informations, veuillez consulter [Autorisations gérées par le client](AMG-manage-permissions.md#AMG-customer-managed). 
+ **Accès et clé secrète** — Correspond au AWS SDK pour Go `StaticProvider`. Utilise l'ID de clé d'accès et la clé secrète fournis pour s'authentifier. Cette méthode n'a aucune solution de rechange et échouera si la paire de clés fournie ne fonctionne pas.

#### Rôles IAM
<a name="CloudWatch-authentication-iam-roles"></a>

 Actuellement, tous les accès CloudWatch se font côté serveur par le backend Grafana à l'aide du SDK officiel. AWS Si vous choisissez la méthode d'authentification *par défaut du AWS SDK* et que votre serveur Grafana est en cours d'exécution AWS, vous pouvez utiliser les rôles IAM pour gérer l'authentification automatiquement.

 Pour en savoir plus, consultez [Rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html).

#### politiques IAM
<a name="CloudWatch-authentication-iam-policies"></a>

Grafana a besoin d'autorisations accordées via IAM pour pouvoir lire les CloudWatch métriques et les balises, instances et régions EC2. Vous pouvez associer ces autorisations aux rôles IAM et utiliser le support Grafana intégré pour assumer des rôles. 

 L'exemple de code suivant montre une politique minimale. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowReadingMetricsFromCloudWatch",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:DescribeAlarmsForMetric",
                "cloudwatch:DescribeAlarmHistory",
                "cloudwatch:DescribeAlarms",
                "cloudwatch:ListMetrics",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:GetMetricData",
                "cloudwatch:GetInsightRuleReport"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowReadingLogsFromCloudWatch",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups",
                "logs:GetLogGroupFields",
                "logs:StartQuery",
                "logs:StopQuery",
                "logs:GetQueryResults",
                "logs:GetLogEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowReadingTagsInstancesRegionsFromEC2",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeTags",
                "ec2:DescribeInstances",
                "ec2:DescribeRegions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowReadingResourcesForTags",
            "Effect": "Allow",
            "Action": "tag:GetResources",
            "Resource": "*"
        },
        {
            "Sid": "AllowReadingAcrossAccounts",
            "Effect": "Allow",
            "Action": [
                "oam:ListSinks",
                "oam:ListAttachedLinks"
            ],
            "Resource": "*"
        }
    ]
}
```

------

#### Endossement d’un rôle
<a name="CloudWatch-assuming-a-role"></a>

 Le `Assume Role ARN` champ vous permet de spécifier le rôle IAM à assumer, le cas échéant. Si vous laissez ce champ vide, les informations d'identification fournies sont utilisées directement et le rôle ou l'utilisateur associé doit disposer des autorisations requises. Si ce champ n'est pas vide, les informations d'identification fournies sont utilisées pour effectuer un `sts:AssumeRole` appel. 

# Utilisation de l’éditeur de requêtes
<a name="CloudWatch-using-the-query-editor"></a>

La source de CloudWatch données d'Amazon Managed Grafana fournit un puissant éditeur de requêtes qui vous permet de récupérer et d'analyser les métriques et les journaux des différents AWS services auxquels des données sont envoyées. CloudWatch L'éditeur de requêtes prend en charge deux modes de requête distincts : Metric Search et CloudWatch Logs.

Le mode éditeur de requêtes pour les métriques utilise l' CloudWatch API pour trouver les métriques téléchargées vers CloudWatch. Le mode des journaux utilise les CloudWatch journaux APIs pour rechercher des enregistrements de journal. Chaque mode possède son propre éditeur de requêtes spécialisé. Vous sélectionnez l'API que vous souhaitez utiliser à l'aide du commutateur de mode de requête situé en haut de l'éditeur.

**Topics**
+ [Utilisation de l'éditeur de requêtes métriques](CloudWatch-using-the-metric-query-editor.md)
+ [Utilisation de l'éditeur de requêtes Amazon CloudWatch Logs](CloudWatch-using-the-logs-query-editor.md)

# Utilisation de l'éditeur de requêtes métriques
<a name="CloudWatch-using-the-metric-query-editor"></a>

L'éditeur de requêtes métriques vous permet de créer deux types de requêtes : **Metric Search** et **Metric Query**. L'option **Metric Query** interroge les données à l'aide de CloudWatch Metrics Insights.

## Champs courants de l'éditeur de requêtes
<a name="metrics-insights-common-fields"></a>

 Trois champs sont communs aux modes **Metric Search** et **Metric Query**.

 **Champs communs**

**Id**  
L'`GetMetricData`API exige que toutes les requêtes aient un identifiant unique. Utilisez ce champ pour spécifier l'ID de votre choix. L'identifiant peut inclure des chiffres, des lettres et des traits de soulignement, et doit commencer par une lettre minuscule. Si aucun identifiant n'est spécifié, Amazon Managed Grafana génère un identifiant selon le modèle suivant :. `query[refId of the current query row]` Par exemple, `queryA` représente la première ligne de requête dans l'éditeur de panneaux.

**Period**  
Une période est la durée associée à une CloudWatch statistique spécifique. Les périodes sont définies en secondes. Les valeurs valides incluent 1, 5, 10, 30 ou un multiple de 60. Si vous laissez le champ de période vide ou si vous le définissez sur`auto`, il est calculé automatiquement en fonction de la plage de temps et de la politique de CloudWatch rétention. La formule utilisée est`time range in seconds / 2000`, puis elle passe à la valeur supérieure suivante dans un tableau de périodes prédéfinies [60, 300, 900, 3600, 21600, 86400] après avoir supprimé les périodes en fonction de la rétention. Pour connaître la période utilisée par Amazon Managed Grafana, choisissez **Afficher l'aperçu de la requête** dans l'éditeur de requêtes.

**Alias**  
Les modèles d'alias suivants s'appliquent.      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/grafana/latest/userguide/CloudWatch-using-the-metric-query-editor.html)

# Utilisation de l'option de recherche métrique
<a name="CloudWatch-using-the-metric-search"></a>

 Pour créer une requête valide dans **Metric Search**, vous devez spécifier l'espace de noms, le nom de la métrique et au moins une statistique. Si **Match Exact** est activé, vous devez également spécifier toutes les dimensions de la métrique que vous interrogez. Le schéma des métriques doit correspondre exactement. Pour plus d'informations, consultez la section [Syntaxe CloudWatch des expressions de recherche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/search-expression-syntax.html).

Si **Match Exact** est désactivé, vous pouvez spécifier autant de dimensions que vous souhaitez filtrer. Jusqu'à 100 mesures correspondant à vos critères de filtre sont renvoyées. 

## Requêtes dynamiques utilisant des caractères génériques de dimension
<a name="dynamic-queries-using-dimension-wildcards"></a>

 Vous pouvez surveiller une liste dynamique de mesures en utilisant le caractère générique astérisque (`*`) pour une ou plusieurs valeurs de dimension. 

 Cela vous permet de surveiller les métriques relatives aux AWS ressources, telles que les instances ou les conteneurs EC2. Par exemple, lorsque de nouvelles instances sont créées dans le cadre d'un événement de mise à l'échelle automatique, elles apparaissent automatiquement dans le graphique sans que vous ayez à suivre la nouvelle instance IDs. Cette fonctionnalité est actuellement limitée à la récupération d'un maximum de 100 métriques. Vous pouvez choisir **Afficher l'aperçu de la requête** pour voir l'expression de recherche créée automatiquement pour prendre en charge les caractères génériques. 

 Par défaut, l'expression de recherche est définie de telle sorte que les métriques demandées doivent correspondre exactement aux noms de dimension définis. Cela signifie que dans l'exemple, seules les métriques comportant exactement une dimension et un nom `InstanceId` sont renvoyées. 

 Pour inclure des métriques dont d'autres dimensions sont définies, vous pouvez désactiver **Match Exact**. La désactivation de **Match Exact** crée également une expression de recherche même si vous n'utilisez pas de caractères génériques. Grafana recherche toute métrique correspondant au moins à l'espace de noms, au nom de la métrique et à toutes les dimensions définies. 

## Variables de modèle à valeurs multiples
<a name="cloudwatch-multi-value-template-variables"></a>

 Lorsque vous définissez des valeurs de dimension basées sur des variables de modèle à valeurs multiples, une expression de recherche est utilisée pour rechercher les métriques correspondantes. Cela permet d'utiliser plusieurs variables de modèle dans une seule requête. Vous pouvez également utiliser des variables de modèle pour les requêtes pour lesquelles l'option **Match Exact** est désactivée. 

 Les expressions de recherche étant actuellement limitées à 1024 caractères, votre requête risque d'échouer si votre liste de valeurs est longue. Si vous souhaitez interroger toutes les métriques ayant une valeur pour un nom de dimension donné, nous vous recommandons d'utiliser le caractère générique astérisque (`*`) au lieu de l'`All`option. 

 L'utilisation de variables de modèle à valeurs multiples n'est prise en charge que pour les valeurs de dimension. L'utilisation de variables de modèle à valeurs multiples pour `Region``Namespace`, ou n'`Metric Name`est pas prise en charge. 

## Expressions mathématiques métriques
<a name="cloudwatch-metric-math-expressions"></a>

 Vous pouvez créer de nouvelles métriques de séries chronologiques en opérant sur les CloudWatch métriques à l'aide de fonctions mathématiques. Les opérateurs arithmétiques, la soustraction unaire et d'autres fonctions sont pris en charge et peuvent être appliqués aux métriques. CloudWatch Pour plus d'informations sur les fonctions mathématiques CloudWatch métriques, voir [Utilisation des fonctions mathématiques métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html). 

 Par exemple, pour appliquer des opérations arithmétiques à une métrique, attribuez un ID (une chaîne unique) à la métrique brute. Vous pouvez ensuite utiliser cet identifiant et lui appliquer des opérations arithmétiques dans le `Expression` champ de la nouvelle métrique. 

 Si vous utilisez le `Expression` champ pour référencer une autre requête, par exemple`queryA * 2`, vous ne pouvez pas créer de règle d'alerte basée sur cette requête. 

## Period
<a name="cloudwatch-period"></a>

 Une période est la durée associée à une CloudWatch statistique Amazon spécifique. Les périodes sont définies en secondes. Les valeurs valides incluent 1, 5, 10, 30 ou un multiple de 60. 

Si vous laissez le champ de période vide ou si vous le définissez sur **auto**, il est calculé automatiquement en fonction de la plage de temps. La formule utilisée est`time range in seconds / 2000`, puis elle passe à la valeur supérieure suivante dans un tableau de périodes prédéfinies`[60, 300, 900, 3600, 21600, 86400]`. Pour connaître la période utilisée par Amazon Managed Grafana, choisissez **Afficher l'aperçu de la requête** dans l'éditeur de requêtes. 

## Lien profond entre les panneaux Grafana et la console CloudWatch
<a name="deep-linking-from-grafana-panels-to-the-cloudwatch-console"></a>

 Le choix d'une série chronologique dans le panneau affiche un menu contextuel avec un lien vers **Afficher dans CloudWatch la console**. Le choix de ce lien ouvre un nouvel onglet qui vous amène à la CloudWatch console et affiche toutes les mesures relatives à cette requête. Si vous n'êtes pas actuellement connecté à la CloudWatch console, le lien vous redirige vers la page de connexion. Le lien fourni est valide pour tous Compte AWS , mais n'affiche les statistiques correctes Compte AWS que si vous êtes connecté à la source de données sélectionnée dans Grafana. 

 Cette fonctionnalité n'est pas disponible pour les métriques basées sur des expressions mathématiques métriques. 

# Utilisation de l'option de requête métrique pour interroger les données de CloudWatch Metrics Insights
<a name="CloudWatch-using-the-metric-query"></a>

**Note**  
Amazon CloudWatch Metrics Insights est en version préliminaire. CloudWatch Les fonctionnalités de Metrics Insights sont ouvertes à tous Comptes AWS. Les fonctionnalités peuvent être sujettes à modification. 

 Vous pouvez interroger CloudWatch les données de Metrics Insights en choisissant le `metric query` mode dans l'**éditeur de requêtes Metric**. 

 CloudWatch Metrics Insights est un puissant moteur de requêtes SQL très performant que vous pouvez utiliser pour interroger vos métriques à grande échelle. Il s'agit d'un moteur de requête SQL rapide et flexible que vous pouvez utiliser pour identifier les tendances et les modèles au sein de tous vos CloudWatch indicateurs en temps réel. Il utilise un dialecte SQL. Pour plus d'informations sur la syntaxe des requêtes Metrics Insights, consultez[Syntaxe des requêtes et mots clés](#metrics-insights-syntax-keywords).

## Syntaxe des requêtes et mots clés
<a name="metrics-insights-syntax-keywords"></a>

CloudWatch Metrics Insights utilise un dialecte SQL. L'exemple suivant montre la syntaxe de la requête.

```
SELECT FUNCTION(metricName)
FROM namespace | [ SCHEMA(namespace[, labelKey [, ...] ]) ]
     [ WHERE labelKey OPERATOR labelValue [AND|OR|([...])*] [, ...] ]
[ GROUP BY labelKey [, ...]]
[ ORDER BY FUNCTION() [DESC | ASC] ]
[ LIMIT number]
```

 Les mots clés ne distinguent pas les majuscules des minuscules, mais les identifiants le sont également. Les identifiants incluent les noms des métriques, des espaces de noms et des dimensions. 

 Le tableau suivant fournit les mots clés de requête et leurs descriptions.


|  Mot clé  |  Description  | 
| --- | --- | 
|  FUNCTION  |  Obligatoire. Spécifie la fonction d'agrégation à utiliser, ainsi que le nom de la métrique à interroger. Les valeurs valides sont AVG, COUNT, MAX, MIN et SUM.  | 
|  MetricName   |  Obligatoire. Par exemple, CPUUtilization.  | 
|  FROM  |  Obligatoire. Spécifie la source de la métrique. Vous pouvez spécifier soit l'espace de noms de métrique qui contient la métrique à interroger, soit une fonction de table SCHEMA. Voici quelques exemples d'espaces de noms : AWS/EC2 et. AWS/Lambda  | 
|  SCHEMA  |  (Facultatif) Filtre les résultats de la requête pour afficher uniquement les mesures qui correspondent exactement ou celles qui ne correspondent pas.  | 
|  WHERE  |  (Facultatif) Filtre les résultats pour n'afficher que les mesures correspondant à l'expression que vous avez spécifiée. Par exemple, WHERE InstanceType \$1= 'c3.4xlarge'.  | 
|  GROUP BY  |  (Facultatif) Regroupe les résultats de la requête en plusieurs séries chronologiques. Par exemple, GROUP BY ServiceName.  | 
|  ORDER BY  |  (Facultatif) Spécifie l'ordre des séries chronologiques à renvoyer. Les options sont ASC etDESC.  | 
|  LIMIT  |  (Facultatif) Limite le nombre de séries chronologiques à renvoyer.  | 

Voici quelques exemples : 
+ 

  ```
  SELECT AVG(CPUUtilization) FROM "AWS/EC2" 
  ```

   Correspond à toutes les `CPUUtilization` métriques de l'`AWS/EC2`espace de noms, en ignorant leurs dimensions, et renvoie une seule série chronologique agrégée. 
+ 

  ```
  SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2")
  ```

   Correspond uniquement aux `CPUUtilization` métriques de l'`AWS/EC2`espace de noms dont aucune dimension n'est définie.
+ 

  ```
  SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2", InstanceId)
  ```

   Correspond uniquement aux `CPUUtilization` métriques qui ont été signalées CloudWatch avec exactement une dimension,`InstanceId`.
+ 

  ```
  SELECT SUM(RequestCount) FROM SCHEMA("AWS/ApplicationELB", LoadBalancer,
  AvailabilityZone)
  ```

   Correspond uniquement aux `RequestCount` métriques signalées au formulaire CloudWatch `AWS/ApplicationELB` avec exactement deux dimensions, `LoadBalancer` et`AvailabilityZone`. 

 Les valeurs des étiquettes doivent être placées entre guillemets simples.

### Caractères d'échappement
<a name="escape-characters"></a>

Dans une requête, les valeurs d'étiquette doivent toujours être entourées de guillemets simples.   Par exemple, `SELECT MAX(CPUUtilization) FROM "AWS/EC2" WHERE AutoScalingGroupName = 'my-production-fleet'`. 

 Les espaces de noms de métriques, les noms de métriques et les clés d'étiquette contenant des caractères autres que des lettres, des chiffres et des traits de soulignement (`_`) doivent être entourés de guillemets doubles. Par exemple, `SELECT MAX("My.Metric")`. Si l'un d'entre eux contient lui-même un guillemet double (par exemple`Bytes"Input"`), vous devez éviter ce guillemet double avec des barres obliques inverses, comme dans. `SELECT AVG("Bytes\"Input\"")` Si un espace de noms de métrique, un nom de métrique ou une clé d'étiquette contient un mot qui est un mot-clé réservé dans Metrics Insights, ceux-ci doivent également être entre guillemets doubles. Par exemple, si vous disposez d'une métrique nommée `LIMIT`, vous devez utiliser `SELECT AVG("LIMIT")`. Il est également valable de placer n'importe quel espace de noms, nom de métrique ou étiquette entre guillemets doubles, même s'il n'inclut pas de mot-clé réservé. 

## Mode générateur et mode code
<a name="metrics-insights-query-modes"></a>

Vous pouvez créer une requête en `Builder` mode ou en `Code` mode.

**Pour créer une requête en `Builder` mode**

1. Parcourez et sélectionnez un espace de noms de métrique, un nom de métrique, un filtre, un groupe et des options de commande à l'aide des informations du tableau précédent.

1. Pour chacune de ces options, choisissez dans la liste des options possibles.

**Pour créer une requête en `Code` mode**

1. Rédigez votre requête dans l'éditeur de code.

1. Pour exécuter la requête, choisissez **Exécuter la requête** dans l'éditeur de code.

Pour créer une requête dans le `builder` mode :
+ Parcourez et sélectionnez un espace de noms de métrique, un nom de métrique, un filtre, un groupe et des options de commande à l'aide des informations du tableau ci-dessus.
+ Pour chacune de ces options, choisissez dans la liste des options possibles.

Grafana construit automatiquement une requête SQL en fonction de vos sélections.

 Pour créer une requête dans le `code` mode :
+ Rédigez votre requête dans l'éditeur de code.
+ Pour exécuter la requête, choisissez l'option **Exécuter la requête** dans l'éditeur de code.

L'éditeur de code intègre une fonction de saisie semi-automatique qui fournit des suggestions de mots clés, d'agrégations, d'espaces de noms, de métriques, d'étiquettes et de valeurs d'étiquette. Les suggestions apparaissent lorsque vous entrez un espace, une virgule ou le signe dollar. Vous pouvez également utiliser la combinaison de touches`CTRL+Space`.

L'éditeur de code peut compléter automatiquement la requête. Cependant, l'utilisation de variables de modèle dans l'éditeur de code peut interférer avec l'autocomplétion.

## CloudWatch Exemples de Metrics Insights
<a name="goldeneye-examples"></a>

**Note**  
CloudWatch Metrics Insights est en version préliminaire ouverte. L'aperçu est ouvert à tous les AWS comptes et vous n'avez pas besoin de demander l'accès. Des fonctionnalités peuvent être ajoutées ou modifiées avant l'annonce de la disponibilité générale. 

Cette section contient des exemples de requêtes CloudWatch Metrics Insights utiles que vous pouvez copier et utiliser directement ou copier et modifier dans l'éditeur de requêtes. Certains de ces exemples sont déjà disponibles dans la console et vous pouvez y accéder en choisissant **Add query** (Ajouter une requête) dans la vue **Metrics** (Métriques). 

### Exemples EC2
<a name="goldeneye-EC2-examples"></a>

 Afficher les métriques d'utilisation du processeur par instance

```
SELECT AVG(CPUUtilization)
FROM "AWS/EC2"
GROUP BY InstanceId
```

Afficher l'utilisation moyenne du processeur sur l'ensemble du parc

```
SELECT AVG(CPUUtilization)
FROM SCHEMA("AWS/EC2", InstanceId)
```

 Afficher les 10 instances présentant l'utilisation moyenne du processeur la plus élevée 

```
SELECT MAX(CPUUtilization)
FROM "AWS/EC2"
GROUP BY InstanceId
LIMIT 10
```

Afficher les 10 instances présentant le taux d'utilisation du processeur le plus élevé, classées par maximum, par ordre décroissant

```
SELECT AVG(CPUUtilization)
FROM "AWS/EC2"
GROUP BY InstanceId
ORDER BY MAX() DESC
LIMIT 10
```

Dans ce cas, l' CloudWatch agent collecte une CPUUtilization métrique par application. Cette requête filtre la moyenne de cette métrique pour un nom d'application spécifique.

```
SELECT AVG(CPUUtilization)
FROM "AWS/CWAgent"
WHERE ApplicationName = 'eCommerce'
SELECT AVG(ConcurrentExecutions)
FROM "AWS/Lambda"
```

Afficher le temps d'exécution moyen des 10 principales fonctions Lambda, classées par maximum, par ordre décroissant

```
SELECT AVG(Duration)
FROM "AWS/Lambda"
GROUP BY FunctionName
ORDER BY MAX() DESC
LIMIT 10
```

Afficher le maximum, la moyenne et le minimum des temps d'exécution Lambda

```
SELECT MAX(Duration)
FROM "AWS/Lambda"
```

### Application Load Balancer
<a name="application-loadbalancer-examples"></a>

 Afficher les métriques qui ont les dimensions **LoadBalancer**et **AvailabilityZone**

```
SELECT SUM(RequestCount)
FROM SCHEMA("AWS/ApplicationELB", LoadBalancer, AvailabilityZone)
```

Afficher les métriques avec le nombre de connexions TCP simultanées actives

```
SELECT AVG(ActiveConnectionCount)
FROM "AWS/ApplicationELB"
```

### Exemples Amazon EBS
<a name="Amazon-elastic-block-store-examples"></a>

 Afficher les 10 premiers octets d'écriture moyens par volume par ordre décroissant

```
SELECT AVG(VolumeWriteBytes)
FROM "AWS/EBS"
GROUP BY VolumeId
ORDER BY MAX() DESC
LIMIT 10
```

Afficher le temps d'écriture moyen d'un volume Amazon EBS

```
SELECT AVG(VolumeTotalWriteTime)
FROM "AWS/EBS"
```

Afficher le temps d'inactivité moyen d'un volume Amazon EBS

```
SELECT AVG(VolumeIdleTime)
FROM "AWS/EBS"
View average burst balance per volume
SELECT AVG(BurstBalance)
FROM "AWS/EBS"
GROUP BY VolumeId
View average read bytes across Amazon EBS volumes
SELECT AVG(VolumeReadBytes)
FROM "AWS/EBS"
```

Afficher le nombre moyen d'octets d'écriture sur les volumes Amazon EBS

```
SELECT AVG(VolumeWriteBytes)
FROM "AWS/EBS"
```

### Exemples Amazon Simple Storage Service
<a name="simple-storage-service-examples"></a>

 Afficher le groupe de latence moyenne par nom de compartiment

```
SELECT AVG(TotalRequestLatency)
FROM "AWS/S3"
GROUP BY BucketName
```

Afficher le nombre moyen d'objets par compartiment dans tous les compartiments Amazon S3

```
SELECT AVG(NumberOfObjects)
FROM "AWS/S3"
GROUP BY BucketName
```

### Exemples Amazon Simple Notification Service
<a name="Amazon-simple-notificaation-service-examples"></a>

A mazon-simple-notificaation-service -exemples 

```
SELECT AVG(NumberOfMessagesPublished)
FROM "AWS/SNS"
```

Afficher le nombre moyen de messages ayant échoué pour chaque nom de rubrique

```
SELECT AVG(NumberOfNotificationsFailed)
FROM "AWS/SNS"
GROUP BY TopicName
```

### AWS Exemples d'utilisation de l'API
<a name="AWS-API-usage-examples"></a>

Afficher les 20 meilleurs appels AWS APIs en fonction du nombre d'appels enregistrés sur votre compte 

```
SELECT COUNT(CallCount)
FROM "AWS/Usage"
WHERE "Type" = 'API'
GROUP BY "Service", "Resource"
ORDER BY SUM() DESC
LIMIT 20
```

## CloudWatch Limites de Metrics Insights
<a name="metrics-insights-limits"></a>

CloudWatch Metrics Insights a actuellement les limites suivantes : 
+ Vous ne pouvez interroger que les trois dernières heures de données.
+ Une seule requête ne peut traiter plus de 10 000 métriques. Cela signifie que si les `WHERE` clauses `SELECT``FROM`, et correspondent à plus de 10 000 métriques, seules les 10 000 premières métriques trouvées seront traitées par la requête.
+ Une seule requête ne peut pas renvoyer plus de 500 séries chronologiques. Cela signifie que si la requête traite plus de 500 métriques, toutes les métriques ne seront pas renvoyées dans les résultats de la requête. Si vous utilisez une `ORDER BY` clause, toutes les métriques traitées seront triées et les 500 ayant les valeurs les plus élevées ou les plus faibles selon votre `ORDER BY` clause seront renvoyées. Si vous n'incluez aucune `ORDER BY` clause, vous ne pouvez pas contrôler les 500 métriques correspondantes qui sont renvoyées. 
+ Chaque `GetMetricData` opération ne peut comporter qu'une seule requête, mais vous pouvez avoir plusieurs widgets dans un tableau de bord qui incluent chacun une requête. 

# Utilisation de l'éditeur de requêtes Amazon CloudWatch Logs
<a name="CloudWatch-using-the-logs-query-editor"></a>

 Pour interroger CloudWatch les journaux, sélectionnez la région et jusqu'à 20 groupes de journaux que vous souhaitez interroger. Utilisez la zone de saisie principale pour rédiger votre requête. Pour plus d'informations, consultez la section [Syntaxe de requête CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html). 

 Vous pouvez également écrire des requêtes renvoyant des données de séries chronologiques à l'aide de la `stats` commande dans CloudWatch Logs Insights. Lorsque vous effectuez `stats` des requêtes dans Explore, vous devez vous assurer que vous êtes en mode Metrics Explore. 

 À droite du champ de saisie de la requête se trouve un lien CloudWatch Logs Insights qui ouvre la console CloudWatch Logs Insights avec votre requête. Vous pouvez y poursuivre votre exploration si nécessaire. 

## Utilisation de variables de modèle
<a name="cloudwatch-using-template-variables"></a>

 Comme plusieurs autres sources de données, la source de CloudWatch données prend en charge l'utilisation de variables de modèle dans les requêtes. Pour de plus amples informations, veuillez consulter [Modèles et variables](templates-and-variables.md). 

## Liens profonds entre les panneaux Grafana et la console Logs CloudWatch
<a name="deep-linking-from-grafana-panels-to-the-cloudwatch-console-2"></a>

 Si vous souhaitez consulter votre requête dans la console CloudWatch Logs Insights, cliquez sur le bouton **CloudWatch Logs Insights** à côté de l'éditeur de requêtes. Si vous n'êtes pas actuellement connecté à la CloudWatch console, le lien vous redirige vers la page de connexion. Le lien fourni est valide pour tous Compte AWS , mais n'affiche les statistiques correctes Compte AWS que si vous êtes connecté à la source de données sélectionnée dans Grafana. 

## Alerte
<a name="cloudwatch-alerting"></a>

 Comme CloudWatch les requêtes Logs peuvent renvoyer des données numériques, par exemple à l'aide de la `stats` commande, les alertes sont prises en charge. Pour de plus amples informations, veuillez consulter [Alerte Grafana](alerts-overview.md). 

# Tableaux de bord sélectionnés
<a name="CloudWatch-curated-dashboards"></a>

 La source de CloudWatch données mise à jour est fournie avec des tableaux de bord préconfigurés pour cinq des services les plus populaires AWS  : 
+  Amazon EC2 
+  Amazon Elastic Block Store 
+  AWS Lambda 
+  Amazon CloudWatch Logs 
+  Amazon Relational Database Service 

 Pour importer les tableaux de bord préconfigurés, rendez-vous sur la page de configuration de votre source de CloudWatch données et choisissez l'onglet **Tableaux de bord**. Choisissez **Importer** pour le tableau de bord que vous souhaitez utiliser. Pour personnaliser le tableau de bord, nous vous recommandons de l'enregistrer sous un autre nom, faute de quoi le tableau de bord sera remplacé lors de la publication d'une nouvelle version du tableau de bord. 

# Requêtes modélisées
<a name="cloudwatch-templated-queries"></a>

 Au lieu de coder en dur des détails tels que les serveurs, les applications et les noms des capteurs dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Voir [Modèles](templates-and-variables.md#templates) pour une introduction à la fonctionnalité de création de modèles et aux différents types de variables de modèles. 

## Variable de requête
<a name="cloudwatch-query-variable"></a>

 La source de CloudWatch données fournit les requêtes suivantes que vous pouvez spécifier dans le champ **Requête** de la vue d'édition des **variables**. Vous pouvez les utiliser pour remplir la liste des options d'une variable avec des éléments tels que `region``namespaces`,`metric names`, et`dimension keys/values`. 

 À la place de`region`, vous pouvez spécifier `default` d'utiliser la région par défaut configurée dans la source de données pour la requête. 


|  Nom  |  Description  | 
| --- | --- | 
|  regions()  |  Renvoie une liste de toutes les AWS régions. | 
|  namespaces()  |  Renvoie la liste des espaces de noms pris CloudWatch en charge.  | 
|  metrics(namespace, [region])  |  Renvoie une liste de métriques dans l'espace de noms. (Spécifiez la région ou utilisez-la "default" pour les mesures personnalisées.)  | 
|  dimension\$1keys(namespace)  |  Renvoie une liste des clés de dimension dans l'espace de noms.  | 
|  dimension\$1values(region, namespace, metric, dimension\$1key, [filters])  |  Renvoie une liste de valeurs de dimension correspondant à la valeur spécifiée region namespacemetric, oudimension\$1key. Vous pouvez également utiliser la dimension filters pour obtenir un résultat plus spécifique.  | 
|  ebs\$1volume\$1ids(region, instance\$1id)  |  Renvoie une liste de volumes IDs correspondant au volume spécifiéregion,instance\$1id.  | 
|  ec2\$1instance\$1attribute(region, attribute\$1name, filters)  |  Renvoie une liste d'attributs correspondant à la valeur spécifiéeregion,attribute\$1name,filters.  | 
|  resource\$1arns(region, resource\$1type, tags)  |  Renvoie une liste des valeurs ARNs correspondant aux valeurs spécifiéesregion,resource\$1type, ettags.  | 
|  statistics()  |  Renvoie une liste de toutes les statistiques standard.  | 

 Pour plus de détails sur les métriques CloudWatch fournies, consultez la section [AWS Services qui publient CloudWatch des métriques](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html). 

### Exemples de requêtes modélisées
<a name="cloudwatch-examples-templated-queries"></a>

 Le tableau suivant présente des exemples de requêtes dimensionnelles qui renvoient une liste de ressources pour des AWS services individuels. 


|  Query  |  Service  | 
| --- | --- | 
|  dimension\$1values(us-east-1,AWS/ELB,RequestCount,LoadBalancerName)  |  Elastic Load Balancing  | 
|  dimension\$1values(us-east-1,AWS/ElastiCache,CPUUtilization,CacheClusterId)  |  Amazon ElastiCache  | 
|  dimension\$1values(us-east-1,AWS/Redshift,CPUUtilization,ClusterIdentifier)  |  Amazon Redshift  | 
|  dimension\$1values(us-east-1,AWS/RDS,CPUUtilization,DBInstanceIdentifier)  |  Amazon RDS  | 
|  dimension\$1values(us-east-1,AWS/S3,BucketSizeBytes,BucketName)  |  Amazon Simple Storage Service (Amazon S3)  | 
|  dimension\$1values(us-east-1,CWAgent,disk\$1used\$1percent,device,\$1"InstanceId":"\$1instance\$1id"\$1)  |  CloudWatch Agent  | 
|  resource\$1arns(eu-west-1,elasticloadbalancing:loadbalancer,\$1"elasticbeanstalk:environment-name":["myApp-dev","myApp-prod"]\$1)  |  Elastic Load Balancing  | 
|  resource\$1arns(eu-west-1,ec2:instance,\$1"elasticbeanstalk:environment-name":["myApp-dev","myApp-prod"]\$1)  |  Amazon EC2  | 

# Utilisation d'exemples d'ec2\$1instance\$1attribute
<a name="cloudwatch-ec2-instance-attribute-examples"></a>

## Filtres JSON
<a name="json-filters"></a>

 La `ec2_instance_attribute` requête est `filters` au format JSON. Vous pouvez définir des filtres prédéfinis de. `ec2:DescribeInstances` Notez que le filtrage proprement dit a lieu dans Grafana AWS, et non dans Grafana. 

 L'exemple de code suivant montre la syntaxe des filtres. 

```
{ filter_name1: [ filter_value1 ], filter_name2: [ filter_value2 ] }
```

 L'exemple suivant montre la `ec2_instance_attribute()` requête. 

```
ec2_instance_attribute(us - east - 1, InstanceId, { 'tag:Environment': ['production'] });
```

## Sélection d'attributs
<a name="cloudwatch-selecting-attributes"></a>

 Un seul attribut par instance peut être renvoyé. N'importe quel attribut plat peut être sélectionné (c'est-à-dire s'il possède une valeur unique et n'est pas un objet ou un tableau). Les attributs plats suivants sont disponibles. 
+  `AmiLaunchIndex` 
+  `Architecture` 
+  `ClientToken` 
+  `EbsOptimized` 
+  `EnaSupport` 
+  `Hypervisor` 
+  `IamInstanceProfile` 
+  `ImageId` 
+  `InstanceId` 
+  `InstanceLifecycle` 
+  `InstanceType` 
+  `KernelId` 
+  `KeyName` 
+  `LaunchTime` 
+  `Platform` 
+  `PrivateDnsName` 
+  `PrivateIpAddress` 
+  `PublicDnsName` 
+  `PublicIpAddress` 
+  `RamdiskId` 
+  `RootDeviceName` 
+  `RootDeviceType` 
+  `SourceDestCheck` 
+  `SpotInstanceRequestId` 
+  `SriovNetSupport` 
+  `SubnetId` 
+  `VirtualizationType` 
+  `VpcId` 

 Les balises peuvent être sélectionnées en préfixant le nom de la balise par`Tags`. 

 L'exemple suivant montre la `ec2_instance_attribute()` requête. 

```
ec2_instance_attribute(us - east - 1, Tags.Name, { 'tag:Team': ['sysops'] });
```

# Utilisation de variables de modèle au format JSON
<a name="cloudwatch-using-json-format-template-variables"></a>

 Certaines requêtes acceptent les filtres au format JSON et Grafana prend en charge la conversion des variables de modèle en JSON. 

 Si`env = 'production', 'staging'`, la requête suivante renverra les ARN des instances EC2 pour lesquelles la `Environment` balise est `production` ou. `staging` 

```
resource_arns(us-east-1, ec2:instance, {"Environment":${env:json}})
```

# Tarification
<a name="cloudwatch-pricing"></a>

 La source de CloudWatch données Amazon pour Grafana utilise les appels d'`GetMetricData` CloudWatch API `ListMetrics` et pour répertorier et récupérer des métriques. La tarification des CloudWatch journaux est basée sur la quantité de données ingérées, archivées et analysées via les requêtes CloudWatch Logs Insights. Pour plus d'informations, consultez [Amazon CloudWatch Pricing](https://aws.amazon.com/cloudwatch/pricing). 

 Chaque fois que vous sélectionnez une dimension dans l'éditeur de requêtes, Grafana émet une `ListMetrics` demande. Chaque fois que vous modifiez les requêtes dans l'éditeur de requêtes, une nouvelle demande est émise. GetMetricData 

 Les demandes d'API pour récupérer des échantillons de données utilisent l'`GetMetricData`opération. Cette opération fournit une meilleure prise en charge des mathématiques CloudWatch métriques. Il prend également en charge la génération automatique d'expressions de recherche lorsque vous utilisez des caractères génériques ou lorsque vous désactivez l'option **Match Exact**. L'`GetMetricData`opération entraîne des frais. Pour en savoir plus, consultez [Tarification Amazon CloudWatch](https://aws.amazon.com/cloudwatch/pricing).

# Quotas de service
<a name="cloudwatch-service-quotas"></a>

 AWS définit des quotas, ou des limites, pour les ressources, les opérations et les éléments de votre AWS compte. En fonction du nombre de requêtes dans votre tableau de bord et du nombre d'utilisateurs accédant au tableau de bord, il est possible que vous atteigniez les limites d'utilisation pour diverses ressources CloudWatch et CloudWatch journaux. Notez que les quotas sont définis par compte et par AWS région. Si vous utilisez plusieurs régions ou si vous avez configuré plusieurs sources de CloudWatch données pour effectuer des requêtes sur plusieurs comptes, vous devez demander une augmentation du quota pour chaque compte et pour chaque région dans laquelle vous atteignez la limite. 

 Pour plus d’informations, consultez [Quotas de service CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html). 

# Observabilité entre comptes
<a name="cloudwatch-cross-account"></a>

**Avertissement**  
Cette fonctionnalité nécessite que votre espace de travail Grafana soit de version 9 ou ultérieure.

Le CloudWatch plugin vous permet de surveiller et de dépanner les applications sur plusieurs comptes régionaux. Grâce à l'observabilité entre comptes, vous pouvez facilement rechercher, visualiser et analyser les métriques et les journaux sans vous soucier des limites des comptes.

Pour activer l'observabilité entre comptes, activez-la d'abord dans CloudWatch, puis ajoutez les actions IAM appropriées à l' role/user exécution du plugin. Si votre espace de travail Amazon Managed Grafana fonctionne au sein d'un VPC, vous devez également disposer d'une passerelle NAT pour prendre en charge l'accès à Internet.
+ Pour savoir comment activer cette fonctionnalité, consultez la section sur l'[observabilité CloudWatch entre comptes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html) dans le guide de * CloudWatchl'utilisateur Amazon*.
+ Les actions suivantes sont les actions IAM appropriées à ajouter pour celui role/user qui exécute le plugin.

  ```
  {
  "Sid":  "AllowReadingAcrossAccounts",
  "Effect":  "Allow",
  "Action": [
    "oam:ListSinks",
    "oam:ListAttachedLinks"
  ],
  "Resource":  "*"
  }
  ```
+ L'observabilité entre comptes pour la source de CloudWatch données repose sur Amazon CloudWatch Observability Access Manager. L'Observability Access Manager ne prend pas en charge les points de terminaison VPC. Si votre espace de travail Amazon Managed Grafana s'exécute au sein d'un VPC, vous devez également disposer d'une passerelle NAT qui permet à l'espace de travail d'appeler APIs sur Internet.

**Note**  
Vous devez également disposer des autorisations IAM pour lire les CloudWatch données du compte auquel vous essayez d'accéder.

# Connectez-vous à une source OpenSearch de données Amazon Service
<a name="using-Amazon-OpenSearch-in-AMG"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

Avec Amazon Managed Grafana, vous pouvez ajouter Amazon OpenSearch Service en tant que source de données en utilisant l'option de configuration de la source de AWS données dans la console de l'espace de travail Grafana. Cette source de données prend en charge les domaines de OpenSearch service, qui exécutent OpenSearch des clusters, ainsi que les anciens clusters Elasticsearch.

L' AWS option de configuration de la source de données simplifie l'ajout de OpenSearch Service en tant que source de données en découvrant vos comptes de OpenSearch service existants et en gérant la configuration des informations d'authentification requises pour y accéder OpenSearch. Vous pouvez utiliser cette méthode pour configurer l'authentification et ajouter le OpenSearch service en tant que source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.

La source de données du OpenSearch service prend en charge le langage PPL (Piped Processing Language). Pour plus d'informations sur PPL, consultez [Interroger les données Amazon OpenSearch Service à l'aide du langage de traitement pipé](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ppl-support.html). 

Vous pouvez utiliser la source de données du OpenSearch service pour effectuer de nombreux types de OpenSearch requêtes simples ou complexes afin de visualiser les journaux ou les métriques qui y sont stockés OpenSearch. Vous pouvez également annoter les événements du journal dans OpenSearch vos graphiques. 

**Topics**
+ [Utiliser la configuration de la source de AWS données pour ajouter un OpenSearch service en tant que source de données](ES-adding-AWS-config.md)
+ [Ajouter manuellement Amazon OpenSearch Service en tant que source de données](ES-adding-the-data-source.md)
+ [OpenSearch Paramètres du service](#ES-settings)
+ [Utilisation de la source OpenSearch de données Amazon Service](ES-use-datasource.md)
+ [Amazon OpenSearch Service sans serveur](datasources-opensearch-serverless.md)
+ [Support Traces](datasources-opensearch-traces.md)

# Utiliser la configuration de la source de AWS données pour ajouter un OpenSearch service en tant que source de données
<a name="ES-adding-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par le service qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les ressources du OpenSearch service dans votre compte ou dans l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour ajouter le OpenSearch service en tant que source de données.

**Pour utiliser la configuration de la source de AWS données pour ajouter un OpenSearch service en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Dans le coin supérieur gauche de la page, cliquez sur l’icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case **Amazon OpenSearch Service**, puis choisissez **Actions**, **Activer la politique gérée par le service**.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana** dans la ligne **Amazon OpenSearch Service**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône, puis choisissez **AWS services, **Amazon OpenSearch ** Service**.

1. Sélectionnez la région dans laquelle vous souhaitez qu'Amazon Managed Grafana recherche pour découvrir les ressources du OpenSearch service, puis sélectionnez les comptes et les domaines de OpenSearch service que vous souhaitez ajouter, configurez les paramètres d'index, puis choisissez **Ajouter des sources de données**.

# Ajouter manuellement Amazon OpenSearch Service en tant que source de données
<a name="ES-adding-the-data-source"></a>

**Pour ajouter manuellement la source OpenSearch de données Amazon Service**

1.  Dans le menu latéral de la console Grafana, choisissez l'**AWS**icône, puis choisissez Sources de **données**.

1. Choisissez la source ** OpenSearch de données Amazon Service**. Si nécessaire, vous pouvez commencer à taper **OpenSearch** dans le champ de recherche pour vous aider à le trouver.

1. Choisissez la **région** à partir de laquelle vous souhaitez rechercher des données.

1. Choisissez **Add data source**.

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 

## OpenSearch Paramètres du service
<a name="ES-settings"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Url  |  Le point de terminaison de votre domaine de OpenSearch service. Le point de terminaison prend le format suivant : https://search-my-domain.us-east-1.es.amazonaws.com. | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana. Navigateur = L'URL doit être accessible depuis le navigateur.  | 

 Le mode d'accès contrôle la manière dont les demandes adressées à la source de données seront traitées. Le serveur doit être le moyen préféré si rien d'autre n'est indiqué. 

### Mode d'accès au serveur (par défaut)
<a name="ES-server-access-mode-default"></a>

 Toutes les demandes sont effectuées depuis le navigateur vers le backend ou le serveur de Grafana, qui les transmet à la source de données, contournant ainsi les éventuelles exigences de partage de ressources entre origines (CORS). Si vous sélectionnez ce mode d'accès, l'URL doit être accessible depuis le backend ou le serveur Grafana. 

### Accès (direct) au navigateur
<a name="ES-browser-direct-access"></a>

Amazon Managed Grafana ne prend pas en charge l'accès direct par navigateur.

### Paramètres de l'index
<a name="ES-index-settings"></a>

 Ici, vous pouvez définir une valeur par défaut pour `time field` et spécifier le nom de votre OpenSearch index. Vous pouvez utiliser un modèle temporel pour le nom de l'index ou un caractère générique. 

### OpenSearch/Version d'Elasticsearch
<a name="OpenSearch-version"></a>

Spécifiez votre version OpenSearch ou celle de votre ancienne version d'Elasticsearch dans le menu déroulant des versions. La version est importante car il existe des différences dans la façon dont les requêtes sont composées pour chaque version. Grafana prend actuellement en charge OpenSearch la version 1.0.x. Les versions prises en charge d'Elasticsearch sont `2.0+``5.0+`, `5.6+``6.0+`, et. `7.0+` La valeur `5.6+` signifie la version 5.6 ou supérieure, mais inférieure à 6.0. La valeur `6.0+` signifie la version 6.0 ou supérieure, mais inférieure à 7.0. Enfin, `7.0+` signifie la version 7.0 ou supérieure, mais inférieure à 8.0.

### Intervalle de temps minimum
<a name="ES-min-time-interval"></a>

Limite inférieure pour le regroupement automatique par intervalle de temps. Il est recommandé de régler la fréquence d'écriture, par exemple `1m` si vos données sont écrites toutes les minutes. Cette option peut également se trouver overridden/configured dans un panneau de tableau de bord sous les options de source de données. Cette valeur **doit** être formatée sous la forme d'un nombre suivi d'un identifiant horaire valide, par exemple `1m` (1 minute) ou `30s` (30 secondes). Les identifiants horaires suivants sont pris en charge. 


|  Identifiant  |  Description  | 
| --- | --- | 
|  y  |  Année  | 
|  M  |  Mois  | 
|  w  |  semaine  | 
|  d  |  jour  | 
|  h  |  Heure  | 
|  m  |  Minute  | 
|  s  |  Seconde  | 
|  ms  |  Milliseconde  | 

### Journaux
<a name="ES-logs-beta"></a>

Deux paramètres, `Message field name` et`Level field name`, peuvent éventuellement être configurés à partir de la page des paramètres de la source de données pour déterminer les champs qui seront utilisés pour les messages de journal et les niveaux de journalisation lors de la visualisation des connexions. [Explorez](explore.md) 

 Par exemple, si vous utilisez une configuration par défaut de Filebeat pour envoyer les journaux au OpenSearch Service, la configuration suivante devrait fonctionner. 
+  **Nom du champ du message :** message 
+  **Nom du champ de niveau : fields.level** 

### Liaisons de données
<a name="ES-data-links"></a>

 Les liens de données créent un lien à partir d'un champ spécifié accessible dans la vue des journaux dans Explore. 

 Chaque configuration de liaison de données comprend les éléments suivants :
+ **Champ** : nom du champ utilisé par le lien de données.
+ **URL/requête** — Si le lien est externe, entrez l'URL complète du lien. S'il s'agit d'un lien interne, cette entrée sert de requête pour la source de données cible. Dans les deux cas, vous pouvez interpoler la valeur du champ à l'aide d'une `${__value.raw }` macro. 
+ **Lien interne** : sélectionnez cette option s'il s'agit d'un lien interne ou externe. Si le lien est interne, un sélecteur de source de données vous permet de sélectionner la source de données cible. Seules les sources de données de suivi sont prises en charge.

# Utilisation de la source OpenSearch de données Amazon Service
<a name="ES-use-datasource"></a>

## Éditeur de requêtes métriques
<a name="ES-metric-query-editor"></a>

L'éditeur de OpenSearch requêtes vous permet de sélectionner plusieurs indicateurs et de les regrouper selon plusieurs termes ou filtres. Utilisez les icônes plus et moins situées à droite pour les add/remove indicateurs ou regroupez-les par clauses. Certaines métriques et clauses de regroupement par comportent des options. Choisissez le texte de l'option pour développer la ligne \$1 afin d'afficher et de modifier la métrique ou de la regrouper par options. 

## Utilisation du langage de traitement canalisé (PPL)
<a name="ES-PPL"></a>

La source de données Amazon OpenSearch Service prend en charge le langage PPL (Piped Processing Language), qui permet des fonctionnalités de requête et de visualisation plus simples mais puissantes pour. OpenSearch Le PPL permet aux clients d'explorer et de rechercher des données sans avoir à composer de longues instructions DSL ( OpenSearch Domain Specific Language) ou à écrire des requêtes à l'aide d'objets JSON. Avec PPL, vous pouvez écrire des requêtes sous la forme d'un ensemble de commandes délimitées par des canaux similaires aux canaux UNIX.

Prenons l'exemple de requête DSL suivant comme exemple :

```
GET opensearch_sample_data_logs/_search{"from":0,"size":0,"timeout":"1m","query":{"bool":{"should":[{"term":{"response.keyword":{"value":"404","boost":1}}},{"term":{"response.keyword":{"value":"503","boost":1}}}],"adjust_pure_negative":true,"boost":1}},"sort":[{"_doc":{"order":"asc"}}],"aggregations":{"composite_buckets":{"composite":{"size":1000,"sources":[{"host":{"terms":{"field":"host.keyword","missing_bucket":true,"order":"asc"}}},{"response":{"terms":{"field":"response.keyword","missing_bucket":true,"order":"asc"}}}]},"aggregations":{"request_count":{"value_count":{"field":"request.keyword"}},"sales_bucket_sort":{"bucket_sort":{"sort":[{"request_count":{"order":"desc"}}],"size":10}}}}}}>
```

La requête DSL précédente peut être remplacée par la commande PPL suivante qui est concise et lisible par l'homme.

```
source = opensearch_sample_data_logs | where response='404' or response='503' | stats count(request) as request_count by host, response | sort –request_count
```

Pour plus d'informations sur PPL, consultez la section [Interrogation des données Amazon OpenSearch Service à l'aide du langage de traitement canalisé.](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ppl-support.html)

## Dénomination des séries et modèles d'alias
<a name="ES-series-naming-and-alias-patterns"></a>

 Vous pouvez contrôler le nom des séries chronologiques à l'aide du champ de `Alias` saisie. 


|  Modèle  |  Description  | 
| --- | --- | 
|  \$1\$1term fieldname\$1\$1  |  Remplacé par la valeur d'un terme Grouper par.  | 
|  \$1\$1metric\$1\$1  |  Remplacé par le nom de la métrique (ex. Moyenne, minimale, maximale). | 
|  \$1\$1field\$1\$1  |  Remplacé par le nom du champ métrique. | 

## Métriques du pipeline
<a name="ES-pipeline-metrics"></a>

*Certaines agrégations métriques sont appelées agrégations de pipelines ; par exemple, *moyenne mobile* et dérivée.* OpenSearch les métriques du pipeline nécessitent une autre métrique sur laquelle se baser. Utilisez l'icône en forme d'œil à côté de la métrique pour empêcher les métriques d'apparaître dans le graphique. Cela est utile pour les métriques que vous avez uniquement dans la requête et destinées à être utilisées dans une métrique de pipeline. 

## Création de modèles
<a name="ES-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

### Variable de requête
<a name="ES-query-variable"></a>

 La source OpenSearch de données du service prend en charge deux types de requêtes que vous pouvez utiliser dans le champ *Requête* des variables de *requête*. La requête est écrite à l'aide d'une chaîne JSON personnalisée. 


|  Query  |  Description  | 
| --- | --- | 
|  \$1"find": "fields", "type": "keyword"\$1  |  Renvoie une liste de noms de champs avec le type d'indexkeyword.  | 
|  \$1"find": "terms", "field": "@hostname", "size": 1000\$1  |  Renvoie une liste de valeurs pour un champ à l'aide de l'agrégation de termes. La requête utilisera la plage horaire actuelle du tableau de bord comme plage de temps pour la requête.  | 
|  \$1"find": "terms", "field": "@hostname", "query": '<lucene query>'\$1  |  Renvoie une liste de valeurs pour un champ en utilisant l'agrégation de termes et un filtre de requête Lucene spécifié. La requête utilisera la plage horaire actuelle du tableau de bord comme plage de temps pour la requête.  | 

Il existe une limite de taille par défaut de 500 pour les requêtes Terms. Pour définir une limite personnalisée, définissez la propriété de taille dans votre requête. Vous pouvez utiliser d'autres variables dans la requête. L'exemple de code suivant montre la définition de requête pour une variable nommée`$host`. 

```
{"find": "terms", "field": "@hostname", "query": "@source:$source"}
```

Dans l'exemple précédent, nous utilisons une autre variable nommée `$source` dans la définition de la requête. Chaque fois que vous modifiez, à l'aide de la liste déroulante, la valeur actuelle de la `$source` variable, une mise à jour de la `$host` variable est initiée. Après la mise à jour, la `$host` variable contient uniquement les noms d'hôtes filtrés en fonction, dans ce cas, de la propriété du `@source` document. 

Ces requêtes renvoient par défaut les résultats par ordre des termes (qui peuvent ensuite être triés alphabétiquement ou numériquement comme pour n'importe quelle variable). Pour produire une liste de termes triés par nombre de documents (une liste de valeurs supérieures à N), ajoutez une `orderBy` propriété de`doc_count`. Cela permet de sélectionner automatiquement un tri décroissant. L'utilisation `asc` avec doc\$1count (une liste inférieure à N) peut être effectuée en configurant`order: "asc"`, mais elle est déconseillée car cela augmente l'erreur sur le nombre de documents. Pour conserver les termes dans l'ordre du nombre de documents, définissez la liste déroulante de **tri** de la variable sur **Désactivé**. Vous pouvez également toujours utiliser **Alphabétique** pour les trier à nouveau. 

```
{"find": "terms", "field": "@hostname", "orderBy": "doc_count"}
```

### Utilisation de variables dans les requêtes
<a name="ES-using-variables-in-queries"></a>

 Il existe deux syntaxes : 
+  `$<varname>`Exemple : @hostname : \$1hostname 
+  `[[varname]]`Exemple : @hostname : [[hostname]] 

 Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire, mais elle ne permet pas d'utiliser une variable au milieu d'un mot. Lorsque les options *Multi-valeurs* ou *Inclure toutes les valeurs* sont activées, Grafana convertit les étiquettes du texte brut en une condition compatible avec Lucene. 

 Dans l'exemple précédent, nous avons une requête Lucene qui filtre les documents en fonction de la `@hostname` propriété à l'aide d'une variable nommée. `$hostname` Il utilise également une variable dans la zone de saisie du groupe *Termes* par champ. Cela vous permet d'utiliser une variable pour modifier rapidement le mode de regroupement des données. 

## Annotations
<a name="ES-annotations"></a>

Les annotations vous permettent de superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation à l'aide du menu Tableau de bord ou de la vue Annotations. Grafana peut interroger n'importe quel OpenSearch index pour les événements d'annotation. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 


|  Nom  |  Description  | 
| --- | --- | 
|  Query  |  Vous pouvez laisser la requête de recherche vide ou spécifier une requête Lucene.  | 
|  Time  |  Nom du champ horaire ; il doit s'agir d'un champ de date.  | 
|  Time End  |  Le nom facultatif du champ de fin d'heure doit être un champ de date. Si cette option est définie, les annotations seront marquées comme une zone située entre l'heure et la fin de l'heure.  | 
|  Text  |  Champ de description de l'événement.  | 
|  Tags  |  Nom de champ facultatif à utiliser pour les balises d'événements (il peut s'agir d'un tableau ou d'une chaîne CSV).  | 

## Interrogation des journaux
<a name="ES-querying-logs-beta"></a>

 L'interrogation et l'affichage des données du journal depuis OpenSearch sont disponibles dans Explore. Pour afficher vos journaux, sélectionnez la source OpenSearch de données du service, puis entrez éventuellement une requête Lucene. Pour de plus amples informations, veuillez consulter [Explorez](explore.md). 

### Requêtes de journal
<a name="ES-log-queries"></a>

 Une fois le résultat renvoyé, le panneau du journal affiche une liste des lignes du journal et un graphique à barres où l'axe X indique l'heure et l'axe Y indique la fréquence ou le nombre. 

### Filtrer les messages du journal
<a name="ES-filter-log-messages"></a>

 Entrez éventuellement une requête Lucene dans le champ de requête pour filtrer les messages du journal. Par exemple, en utilisant une configuration Filebeat par défaut, vous devriez pouvoir `fields.level:error` afficher uniquement les messages du journal des erreurs. 

# Amazon OpenSearch Service sans serveur
<a name="datasources-opensearch-serverless"></a>

**Note**  
OpenSearch Le support Service Serverless n'est disponible qu'avec les espaces de travail Grafana qui exécutent Grafana version 9.4 ou ultérieure.

Vous pouvez utiliser la source de données OpenSearch Service pour accéder aux données Amazon OpenSearch Service Serverless avec Amazon Managed Grafana. L'accès aux données est contrôlé par des politiques d'accès aux données. L'exemple suivant montre une politique qui permet aux utilisateurs d'interroger une collection et un index spécifiques. Assurez-vous de remplacer *`collection_name`**`index_name`*, et par *`principal_arn`* les valeurs correctes pour votre cas d'utilisation.

```
[
  {
    "Rules": [
      {
        "Resource": ["collection/{collection_name}"],
        "Permission": ["aoss:DescribeCollectionItems"],
        "ResourceType": "collection"
      },
      {
        "Resource": ["index/{collection_name}/{index_name}"],
        "Permission": ["aoss:DescribeIndex", "aoss:ReadDocument"],
        "ResourceType": "index"
      }
    ],
    "Principal": ["principal_arn"],
    "Description": "read-access"
  }
]
```

# Support Traces
<a name="datasources-opensearch-traces"></a>

Le OpenSearch plugin prend en charge l'affichage d'une liste de traces sous forme de tableau et d'une seule **trace dans Trace View**, qui montre la chronologie des intervalles de trace.

**Note**  
L'interrogation OpenSearch des traces n'est disponible qu'à l'aide de requêtes Lucene.  
La prise en charge du suivi n'est disponible que pour les espaces de travail Grafana compatibles avec la version 9.4 ou ultérieure.

Pour créer une requête affichant toutes les traces, utilisez le type de requête Lucene `Traces` avec une requête vide. Si nécessaire, sélectionnez le type de visualisation de **table**.

La sélection d'un ID de trace dans le tableau ouvre cette trace dans la vue de trace.

Pour créer une requête affichant une seule trace, utilisez la requête et`traceid: {traceId}`, si nécessaire, sélectionnez le type de visualisation **Traces**.

# Se connecter à une source AWS IoT SiteWise de données
<a name="using-iotsitewise-in-AMG"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

 Avec Amazon Managed Grafana, vous pouvez l'ajouter en AWS IoT SiteWise tant que source de données en utilisant l'option de configuration de la source de AWS données dans la console de l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout en AWS IoT SiteWise tant que source de données en découvrant vos AWS IoT SiteWise comptes existants et en gérant la configuration des informations d'authentification requises pour y accéder AWS IoT SiteWise. Vous pouvez utiliser cette méthode pour configurer l'authentification et l'ajouter AWS IoT SiteWise en tant que source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.

**Topics**
+ [Utiliser la configuration AWS de la source de données pour l'ajouter AWS IoT SiteWise en tant que source de données](IoTSiteWise-adding-AWS-config.md)
+ [Ajouter manuellement la source AWS IoT SiteWise de données](iotsitewise-add-the-data-source.md)
+ [AWS IoT SiteWise paramètres](#iotsitewise-settings)
+ [Utilisation de la source AWS IoT SiteWise de données](IoTSiteWise-using.md)

# Utiliser la configuration AWS de la source de données pour l'ajouter AWS IoT SiteWise en tant que source de données
<a name="IoTSiteWise-adding-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par des services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les AWS IoT SiteWise ressources de votre compte ou de l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour l'ajouter en AWS IoT SiteWise tant que source de données.

**Pour utiliser la configuration AWS de la source de données pour l'ajouter AWS IoT SiteWise en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Dans le coin supérieur gauche de la page, cliquez sur l’icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case pour l'**AWS IoT SiteWise**, puis choisissez **Actions**, **Activer la politique gérée par les services**.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana** dans la ligne **AWS IoT SiteWise**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. **Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône, puis choisissez **AWS services**, IoT. SiteWise**

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de AWS IoT SiteWise données interroge, sélectionnez les comptes, puis choisissez **Ajouter une source de données**.

# Ajouter manuellement la source AWS IoT SiteWise de données
<a name="iotsitewise-add-the-data-source"></a>

**Pour ajouter manuellement la source AWS IoT SiteWise de données**

1.  Dans le menu latéral de la console Grafana, faites une pause sur l'icône **Configuration** (engrenage), puis choisissez Sources de **données**.

1. Choisissez **Add data source**.

1. Choisissez la source SiteWise de données **AWS IoT**. Si nécessaire, vous pouvez commencer à taper **SiteWise** dans le champ de recherche pour vous aider à le trouver.

## AWS IoT SiteWise paramètres
<a name="iotsitewise-settings"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Nom  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Fournisseur d'authentification  |  Spécifiez le fournisseur pour obtenir les informations d'identification.  | 
|  Région par défaut  |  Utilisé dans l'éditeur de requêtes pour définir la région (peut être modifiée pour chaque requête).  | 
|  Nom du profil d'identification  |  Spécifiez le nom du profil à utiliser (si vous utilisez un \$1/.aws/credentials fichier) ; laissez ce champ vide par défaut.  | 
|  Assumer le rôle Arn  |  Spécifiez l'ARN du rôle à assumer.  | 
|  Point de terminaison (facultatif)  |  Si vous devez spécifier un autre point de terminaison de service.  | 

# Utilisation de la source AWS IoT SiteWise de données
<a name="IoTSiteWise-using"></a>

Pour plus d'informations sur l'utilisation de la source de AWS IoT SiteWise données, consultez [AWS IoT SiteWise Datasource](https://github.com/grafana/iot-sitewise-datasource/blob/main/src/README.md) sur Github.

# Se connecter à une source AWS IoT TwinMaker de données
<a name="AMG-iot-twinmaker"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

 Avec Amazon Managed Grafana, vous pouvez ajouter AWS IoT TwinMaker un puissant service d'analyse de données industrielles en tant qu'application et source de données dans votre espace de travail Grafana. Avec AWS IoT TwinMaker, vous pouvez créer des applications jumelles numériques 3D destinées à l'utilisateur final pour surveiller les opérations industrielles. Il AWS IoT TwinMaker s'agit d'un service qui permet aux développeurs de créer plus rapidement des répliques numériques de systèmes réels, aidant ainsi un plus grand nombre de clients à réaliser le potentiel des jumeaux numériques pour optimiser les opérations. Le AWS IoT TwinMaker for Grafana fournit des panneaux personnalisés, des modèles de tableau de bord et une source de données pour se connecter à vos données de jumeaux numériques. 

# Ajout manuel de la source AWS IoT TwinMaker de données
<a name="twinmaker-add-the-data-source"></a>

## Conditions préalables
<a name="twinmaker-prerequisites"></a>

Avant de commencer, assurez-vous d'avoir accès **AWS IoT TwinMaker**à votre Compte AWS.

 Pour savoir comment ajouter une autorisation d'accès à votre rôle IAM de l'espace de travail AWS IoT TwinMaker, consultez[Ajout de l'autorisation pour le rôle AWS IoT TwinMaker d'utilisateur de votre espace de travail](AMG-iot-twinmaker.md#twinmaker-add-permission).

**Pour ajouter la source AWS IoT TwinMaker de données :**

1. Assurez-vous que votre rôle d'utilisateur est administrateur ou éditeur.

1.  **Dans le menu latéral de la console Grafana, passez le pointeur de la souris sur l'icône **Configuration** (engrenage), puis choisissez Sources de données.**

1. Choisissez **Add data source**.

1. Choisissez la source **AWS IoT TwinMaker**de données. Si nécessaire, vous pouvez commencer à taper **TwinMaker** dans le champ de recherche pour vous aider à le trouver.

1. Cela ouvre la page des **détails de connexion**. Suivez les étapes de configuration du[AWS IoT TwinMaker paramètres des détails de connexion](AMG-iot-twinmaker.md#twinmaker-connection-details). 

## Ajout de l'autorisation pour le rôle AWS IoT TwinMaker d'utilisateur de votre espace de travail
<a name="twinmaker-add-permission"></a>

**Pour ajouter des autorisations au rôle d'utilisateur AWS IoT TwinMaker de votre espace de travail, utilisez une autorisation de rôle entre les rôles de l'espace de travail Amazon Managed Grafana et du TwinMaker tableau de bord.**

1. Accédez à [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/). 

1. Créez manuellement un rôle de tableau de bord. Pour plus d'informations sur la création d'un rôle de tableau de bord, consultez[Pour créer manuellement un rôle dans le tableau de bord Grafana AWS IoT TwinMaker](#iot-twinmaker-dashboard-role).

## AWS IoT TwinMaker paramètres des détails de connexion
<a name="twinmaker-connection-details"></a>

**Configurer les paramètres des détails de connexion**

1.  Dans le menu **Détails de la connexion**, sélectionnez le fournisseur d'authentification (recommandé : **rôle Workspace IAM**). 

1.  Choisissez la **région par défaut** que vous souhaitez interroger. 

1.  Dans les **TwinMaker paramètres**, entrez le nom de l' AWS IoT TwinMakerespace de travail.

# Utilisation de la source AWS IoT TwinMaker de données
<a name="IoT-twinmaker-using"></a>

Pour plus d'informations sur l'utilisation de la source de AWS IoT TwinMaker données, voir [AWS IoT TwinMakerSource de données](https://github.com/grafana/grafana-iot-twinmaker-app) sur GitHub.

## Pour créer manuellement un rôle dans le tableau de bord Grafana AWS IoT TwinMaker
<a name="iot-twinmaker-dashboard-role"></a>

**Pour créer manuellement un rôle dans le tableau de bord Grafana AWS IoT TwinMaker**

1. Connectez-vous à la console IAM à [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)l'adresse.

1. Trouvez votre rôle dans l'espace de travail Amazon Managed Grafana dans le résumé. Il se présente comme suit :

   ```
    AmazonGrafanaServiceRole-random_ID
   ```

1. Ajoutez la politique intégrée suivante au rôle :

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": {
           "Effect": "Allow",
           "Action": "sts:AssumeRole",
           "Resource": "arn:aws:iam::111122223333:role/TwinMakerDashboardRole"
       }
   }
   ```

------

1. Ajoutez une nouvelle politique intégrée pour chaque rôle du tableau de bord. Vous pouvez également ajouter une liste des rôles Amazon Resource Names (ARNs) sur la ligne **Resource**.

1. Trouvez votre rôle dans le tableau de bord dans la console IAM. Il doit avoir une `SceneViewer` politique et, éventuellement, une `VideoPlayer` politique.

1. Choisissez l’onglet **Relation d’approbation**.

1. Choisissez **Modifier la relation d’approbation**.

1. Entrez la politique suivante, en la *AMGWorkspaceRoleArn* remplaçant par l'Arn de votre compte :

------
#### [ JSON ]

****  

   ```
      {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "AWS": "AMGWorkspaceRoleARN"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

## Exemple de AWS IoT TwinMaker politique
<a name="AMG-TM-policy"></a>

Voici une AWS IoT TwinMaker politique minimale que vous pouvez associer à un rôle de tableau de bord. Vous devez remplacer les valeurs de l'ARN et de l'ID de l' AWS IoT TwinMaker espace de travail, ainsi que de l'ARN du compartiment Amazon S3, en fonction de vos propres ressources.

# Connectez-vous à Amazon Managed Service for Prometheus et aux sources de données open source Prometheus
<a name="prometheus-data-source"></a>

 Dans Amazon Managed Grafana, la source de données Prometheus prend en charge l'utilisation de serveurs Prometheus autogérés et d'Amazon Managed Service pour les espaces de travail Prometheus comme sources de données. Pour plus d'informations sur Amazon Managed Service for Prometheus, consultez [Qu'est-ce qu'Amazon Managed Service](https://docs.aws.amazon.com/prometheus/latest/userguide/what-is-Amazon-Managed-Service-Prometheus.html) for Prometheus ?

 Avec Amazon Managed Grafana, vous pouvez ajouter un espace de travail Amazon Managed Service for Prometheus en tant que source de données en utilisant l'option de configuration de la source de données dans la console de l' AWS espace de travail Grafana. Cette fonctionnalité simplifie l'ajout d'Amazon Managed Service for Prometheus en tant que source de données en découvrant vos comptes Amazon Managed Service for Prometheus existants et en gérant la configuration des informations d'authentification requises pour accéder à Amazon Managed Service for Prometheus.

**Note**  
Vous pouvez consulter vos alertes Prometheus dans l'interface d'alerte unifiée de Grafana, en. [Configuration d'une source de données Alertmanager](data-source-alertmanager.md#data-source-alertmanager-create)

**Topics**
+ [Utiliser la configuration de la source de AWS données pour ajouter Amazon Managed Service for Prometheus en tant que source de données](AMP-adding-AWS-config.md)
+ [Ajouter manuellement la source de données Prometheus](prometheus-manually-adding.md)
+ [Utilisation de la source de données Prometheus](using-prometheus-datasource.md)
+ [Visualisez les alertes d'Amazon Managed Service pour Prometheus](amp-configure-alerts.md)
+ [Configuration des exemplaires](amp-configure-exemplars.md)

# Utiliser la configuration de la source de AWS données pour ajouter Amazon Managed Service for Prometheus en tant que source de données
<a name="AMP-adding-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par des services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les ressources Amazon Managed Service for Prometheus sur votre compte ou dans l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour ajouter Amazon Managed Service for Prometheus en tant que source de données.

**Pour utiliser la configuration de la source de AWS données afin d'ajouter Amazon Managed Service for Prometheus en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/) 

1. Dans le coin supérieur gauche de la page, cliquez sur l’icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md).

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case **Amazon Managed Service for Prometheus**, puis **choisissez** Actions**,** Activer la politique de gestion des services.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana dans** la ligne **Amazon Managed Service for Prometheus**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. **Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône, puis choisissez **AWS Services, Prometheus**.**

1. **Sélectionnez la région dans laquelle vous souhaitez qu'Amazon Managed Grafana recherche pour découvrir les espaces de travail Amazon Managed Service for Prometheus, puis sélectionnez les comptes et les espaces de travail Amazon Managed Service for Prometheus que vous souhaitez ajouter, puis choisissez Ajouter une source de données.**

# Ajouter manuellement la source de données Prometheus
<a name="prometheus-manually-adding"></a>

**Pour ajouter manuellement la source de données Prometheus**

1.  **Dans le menu latéral de la console Grafana, faites une pause sur l'élément du menu **Administration** (ou sur l'icône de **configuration** (engrenage) dans Grafana v8), puis choisissez Sources de données.**

1. Choisissez **Add data source**.

1. Choisissez la source de **données Prometheus**. Si nécessaire, vous pouvez commencer à taper **Prometheus** dans le champ de recherche pour vous aider à le trouver.

# Utilisation de la source de données Prometheus
<a name="using-prometheus-datasource"></a>

## Réglages de Prometheus
<a name="prometheus-settings"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Url  |  L'URL de votre serveur Prometheus ; par exemple,. https://prometheus.example.org:9090  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.  | 
|  Basic Auth  |  Activez l'authentification de base auprès de la source de données Prometheus.  | 
|  User  |  Nom d'utilisateur pour l'authentification de base.  | 
|  Password  |  Mot de passe pour l'authentification de base.  | 
|  Scrape interval  |  Réglez ce paramètre sur l'intervalle de raclage et d'évaluation habituels configurés dans Prometheus. La valeur par défaut est 15 s.  | 
|  Disable metrics lookup  |  Si vous cochez cette option, le sélecteur de métriques et sa metric/label prise en charge seront désactivés dans la saisie semi-automatique du champ de requête. Cela est utile si vous rencontrez des problèmes de performances avec des instances Prometheus plus volumineuses.  | 
|  Custom Query Parameters  |  Ajoutez des paramètres personnalisés à l'URL de requête Prometheus. Par exemple timeoutpartial\$1response,dedup, oumax\$1source\$1resolution. Les paramètres multiples doivent être concaténés avec un « & ».  | 

## Éditeur de requêtes Prometheus
<a name="prometheus-query-editor"></a>

 Les sections suivantes fournissent des informations et des options pour l'éditeur de requêtes Prometheus dans le tableau de bord et dans Explore. 

### Éditeur de requêtes dans les tableaux de bord
<a name="query-editor-in-dashboards"></a>

 Ouvrez un graphique en mode édition en choisissant le titre, puis en choisissant **Modifier** (ou en appuyant sur la touche **E** tout en faisant une pause sur le panneau). 


|  Nom  |  Description  | 
| --- | --- | 
|  Query expression  |  [Pour plus d'informations sur les expressions de requête Prometheus, consultez la documentation Prometheus.](https://prometheus.io/docs/querying/basics/)  | 
|  Legend format  |  Contrôle le nom de la série chronologique à l'aide d'un nom ou d'un modèle. Par exemple, \$1\$1hostname\$1\$1 est remplacé par la valeur de l'étiquettehostname.  | 
|  Min step  |  Une limite inférieure supplémentaire pour le [`step`paramètre des requêtes de plage Prometheus](https://prometheus.io/docs/prometheus/latest/querying/api/#range-queries) et pour \$1\$1\$1interval les variables et. \$1\$1\$1rate\$1interval La limite est absolue et n'est pas modifiée par le paramètre Résolution.  | 
|  Resolution  |  1/1définit à la fois la \$1\$1\$1interval variable et le [`step`paramètre des requêtes de plage de Prometheus](https://prometheus.io/docs/prometheus/latest/querying/api/#range-queries) de telle sorte que chaque pixel corresponde à un point de données. Pour de meilleures performances, utilisez des résolutions plus basses. 1/2récupère uniquement un point de données pour un pixel sur deux, et 1/10 récupère un point de données pour 10 pixels. Notez que l'intervalle de temps minimal et le pas minimal limitent la valeur finale de \$1\$1\$1interval etstep.  | 
|  Metric lookup  |  Recherchez des noms de métriques dans ce champ de saisie.  | 
|  Format as  |  Basculez entre TableTime series, ouHeatmap. Tablefonctionne uniquement dans le panneau de table. Heatmapconvient à l'affichage de mesures de type histogramme sur un panneau de cartes thermiques. Il convertit les histogrammes cumulés en histogrammes réguliers et trie les séries en fonction de la limite du compartiment.  | 
|  Instant  |  Effectuez une requête « instantanée » pour renvoyer uniquement la dernière valeur que Prometheus a récupérée pour la série chronologique demandée. Les requêtes instantanées renvoient des résultats beaucoup plus rapidement que les requêtes par plage normales. Utilisez-les pour rechercher des ensembles d'étiquettes.  | 
|  Min time interval  |  Cette valeur multipliée par le dénominateur du paramètre Résolution définit une limite inférieure à la fois à la \$1\$1\$1interval variable et au [`step`paramètre des requêtes de plage Prometheus](https://prometheus.io/docs/prometheus/latest/querying/api/#range-queries). La valeur par défaut est l'intervalle Scrape tel que défini dans les options de la source de données.  | 

**Note**  
 Amazon Managed Grafana modifie les dates de demande des requêtes afin de les aligner sur l'étape calculée dynamiquement. Cela garantit un affichage cohérent des données métriques, mais cela peut entraîner un petit écart de données sur le bord droit d'un graphique. 

#### Requêtes instantanées dans les tableaux de bord
<a name="prometheus-instant-queries-in-dashboards"></a>

 La source de données Prometheus vous permet d'exécuter des requêtes instantanées, qui ne demandent que la dernière valeur. Vous pouvez visualiser les résultats dans un tableau pour voir tous les libellés disponibles d'une série chronologique.

 Les résultats des requêtes instantanées sont composés d'un seul point de données par série. Ils peuvent être affichés dans le panneau graphique à l'aide de remplacements de séries. Pour les afficher dans le graphique sous la forme du dernier point de valeur, ajoutez une substitution de série et sélectionnez`Points > true`. Pour afficher une ligne horizontale sur l'ensemble du graphique, ajoutez une dérogation de série et sélectionnez `Transform > constant` Pour plus d'informations sur les remplacements de séries, voir. [Dérogations de séries](graph-panel.md#graph-panel-series-overrides) 

### Éditeur de requêtes dans Explore
<a name="p-query-editor-in-explore"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Query expression  |  [Pour plus d'informations sur l'expression de requête Prometheus, consultez la documentation Prometheus.](https://prometheus.io/docs/querying/basics/)  | 
|  Step  |  [`Step`paramètre des requêtes de plage Prometheus](https://prometheus.io/docs/prometheus/latest/querying/api/#range-queries). Les unités de temps peuvent être utilisées ici, par exemple : 5s, 1m, 3h, 1d, 1y. L'unité par défaut si aucune unité n'est spécifiée est s (secondes).  | 
|  Query type  |  Range, Instant, ou Both. Lors de l'exécution de la requête Range, le résultat de la requête est affiché sous forme de graphique et de tableau. La requête instantanée renvoie uniquement la dernière valeur que Prometheus a récupérée pour la série chronologique demandée et elle est affichée dans le tableau. Lorsque les deux sont sélectionnés, la requête instantanée et la requête par plage sont exécutées. Le résultat de la requête de plage est affiché dans le graphique et le résultat de la requête instantanée est affiché dans le tableau.  | 

## Navigateur de métriques
<a name="prometheus-metrics-browser"></a>

Le navigateur de métriques vous permet de trouver rapidement des métriques et de sélectionner des libellés pertinents pour créer des requêtes de base. Lorsque vous ouvrez le navigateur, vous verrez toutes les métriques et étiquettes disponibles. Si votre instance Prometheus est prise en charge, chaque métrique affichera ses informations HELP et TYPE sous forme d'infobulle.

Lorsque vous sélectionnez une métrique, le navigateur réduit les libellés disponibles pour n'afficher que ceux applicables à la métrique. Vous pouvez ensuite sélectionner une ou plusieurs étiquettes pour lesquelles les valeurs d'étiquette disponibles sont affichées dans les listes de la section inférieure. Sélectionnez une ou plusieurs valeurs pour chaque étiquette afin de réduire la portée de votre requête.

**Note**  
Si vous ne vous souvenez pas du nom d'une métrique au départ, vous pouvez également sélectionner d'abord quelques libellés, pour affiner la liste, puis trouver les valeurs d'étiquette pertinentes. 

Toutes les listes du navigateur de métriques sont surmontées d'un champ de recherche qui permet de filtrer rapidement les métriques ou les libellés correspondant à une chaîne donnée. La section des valeurs ne comporte qu'un seul champ de recherche. Son filtrage s'applique à toutes les étiquettes pour vous aider à trouver des valeurs parmi les étiquettes une fois qu'elles ont été sélectionnées, par exemple, parmi vos étiquettes app, job, job\$1name, une seule pourrait avoir la valeur que vous recherchez.

Une fois que vous êtes satisfait de votre requête, cliquez sur « Utiliser la requête » pour exécuter la requête. Le bouton **Utiliser comme demande de taux** ajoute un taux (...) [\$1\$1\$1interval] autour de votre requête pour vous aider à écrire des requêtes pour les contre-métriques. Le bouton « Valider le sélecteur » permet de vérifier auprès de Prometheus combien de séries chronologiques sont disponibles pour ce sélecteur.

### Limitations
<a name="metrics-browser-limitations"></a>

Le navigateur de métriques a une limite stricte de 10 000 étiquettes (clés) et 50 000 valeurs d'étiquette (y compris les noms des métriques). Si votre instance Prometheus renvoie plus de résultats, le navigateur continuera de fonctionner. Cependant, les ensembles de résultats seront coupés au-delà de ces limites maximales.

## Création de modèles
<a name="p-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

### Variable de requête
<a name="p-query-variable"></a>

 Variable du type *Query* vous permet d'interroger Prometheus pour obtenir une liste de métriques, d'étiquettes ou de valeurs d'étiquettes. Le plugin de source de données Prometheus fournit les fonctions suivantes que vous pouvez utiliser dans **le** champ de saisie Query. 


|  Nom  |  Description  | 
| --- | --- | 
|  label\$1names()  |  Renvoie une liste de noms d'étiquettes.  | 
|  label\$1values(label)  |  Renvoie une liste des valeurs d'étiquette pour chaque métrique. label  | 
|  label\$1values(metric, label)  |  Renvoie une liste des valeurs d'étiquette pour label la métrique spécifiée.  | 
|  metrics(metric)  |  Renvoie une liste de métriques correspondant à l'expression metric régulière spécifiée.  | 
|  query\$1result(query)  |  Renvoie une liste des résultats de requête Prometheus pour. query  | 

 Pour plus d'informations sur les *noms des métriques*, les *noms* d'*étiquettes et les valeurs d'étiquette*, consultez la documentation [Prometheus](https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels). 

#### Utilisation de variables d'intervalle et de plage
<a name="p-using-interval-and-range-variables"></a>

**Note**  
 Support pour `$__range``$__range_s`, et ne `$__range_ms` sont disponibles qu'à partir de Grafana v5.3. 

 Vous pouvez utiliser certaines variables globales dans les variables de requête : `$__interval``$__interval_ms`,`$__range`,`$__range_s`, et`$__range_ms`. Pour de plus amples informations, veuillez consulter [Variables globales](variables-types.md#global-variables). Ils peuvent être pratiques à utiliser avec la `query_result` fonction lorsque vous devez filtrer des requêtes variables car la `label_values` fonction ne prend pas en charge les requêtes. 

 Pour obtenir les bonnes instances lorsque vous modifiez la plage de temps sur le tableau de bord, assurez-vous de définir le `refresh` déclencheur de la variable sur`On Time Range Change`. 

L'exemple de code suivant montre comment renseigner une variable avec les cinq instances de demande les plus fréquentées sur la base du QPS moyen sur la période indiquée dans le tableau de bord. 

```
Query: query_result(topk(5, sum(rate(http_requests_total[$__range])) by (instance)))
Regex: /"([^"]+)"/
```

 L'exemple de code suivant montre comment renseigner une variable avec les instances ayant un certain état sur la plage de temps indiquée dans le tableau de bord, en utilisant`$__range_s`. 

```
Query: query_result(max_over_time(<metric>[${__range_s}s]) != <state>)
Regex:
```

### Utilisation d'`$__rate_interval`une variable
<a name="p-using-__rate_interval-variable"></a>

 La `$__rate_interval` variable est destinée à être utilisée dans la fonction de taux. Il est défini comme max (`$__interval`\$1 intervalle *Scrape, 4 \$1 intervalle* *Scrape*). L'*intervalle Scrape* est le paramètre Min step (alias query\$1interval, un paramètre par requête ProMQL), le cas échéant, et sinon l'*intervalle Scrape tel que* défini dans la source de données Prometheus (mais en ignorant tout paramètre d'intervalle minimum dans le panneau, car ce dernier est modifié par le paramètre de résolution). 

### Utilisation de variables dans les requêtes
<a name="p-using-variables-in-queries"></a>

 Il existe deux syntaxes : 
+  `$<varname>`Exemple : rate (http\$1requests\$1total \$1job=\$1"\$1job "\$1 [5m]) 
+  `[[varname]]`Exemple : rate (http\$1requests\$1total \$1job=\$1 "[[job]]"\$1 [5m]) 

 Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire mais ne permet pas d'utiliser une variable au milieu d'un mot. Lorsque les options *Multi-valeurs* ou *Inclure toutes les valeurs* sont activées, Grafana convertit les étiquettes du texte brut en une chaîne compatible avec les regex. Ce qui signifie que vous devez utiliser `=~` au lieu de`=`. 

## Annotations
<a name="p-annotations"></a>

 Vous pouvez utiliser des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation à l'aide du menu Tableau de bord ou de la vue Annotations. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 

 Prometheus propose deux méthodes pour interroger les annotations. 
+  Une requête métrique normale 
+  Une requête Prometheus pour les alertes en attente et en cours de déclenchement. Pour plus d'informations, consultez la section [Inspection des alertes pendant l'exécution](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/#inspecting-alerts-during-runtime)). 

 L'option step est utile pour limiter le nombre d'événements renvoyés par votre requête. 

# Visualisez les alertes d'Amazon Managed Service pour Prometheus
<a name="amp-configure-alerts"></a>

Vous pouvez visualiser vos alertes Amazon Managed Service for Prometheus ou Prometheus dans Amazon Managed Grafana en configurant une source de données Alertmanager pour les sources de données Prometheus auxquelles vous êtes déjà connecté.

**Conditions préalables**

Pour configurer un Alertmanager à utiliser avec Amazon Managed Service for Prometheus, vous devez remplir les conditions préalables suivantes :
+ Une instance [Amazon Managed Service pour Prometheus](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-onboard-create-workspace.html), avec des métriques ingérées et au moins une règle d'alerte ou d'enregistrement configurée. **Vous aurez besoin de l'URL de votre espace de travail (dans les détails de votre espace de travail dans Amazon Managed Service for Prometheus, vous pouvez voir l'URL du point de terminaison).** L'espace de travail URl est l'URL du point de terminaison (sans le « `api/v1/remote_write` à la fin »).
+ [Un espace de travail Amazon Managed Grafana [créé](AMG-create-workspace.md) avec l'instance Prometheus configurée comme source de données.](prometheus-data-source.md)
+ Amazon Managed Grafana doit avoir les autorisations suivantes pour vos ressources Prometheus. Vous devez les ajouter aux politiques gérées par le service ou aux politiques gérées par le client décrites dans [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md).
  + `aps:ListRules`
  + `aps:ListAlertManagerSilences`
  + `aps:ListAlertManagerAlerts`
  + `aps:GetAlertManagerStatus`
  + `aps:ListAlertManagerAlertGroups`
  + `aps:PutAlertManagerSilences`
  + `aps:DeleteAlertManagerSilence`

**Pour configurer une source de données Alertmanager à utiliser avec Amazon Managed Service pour Prometheus**

1. **Depuis votre console Grafana, dans le menu Grafana, choisissez la page **Source de données sous Configuration**.**

1. Choisissez **Ajouter une source de données**, puis sélectionnez **Alertmanager** dans la liste des types de sources de données.

1. Fournissez les informations suivantes pour votre nouvelle source de données.
   + Pour **Implémentation**, choisissez **Prometheus**.
   + Sous **HTTP**, pour **URL**, indiquez l'URL de l'espace de travail Prometheus, en annexe. `alertmanager` Par exemple, `https://aps-workspaces.us-east1.amazonaws.com/workspaces/ws-example-1234-5678-abcd-xyz00000001/alertmanager`.
   + Sous **Auth**, activez **SigV4Auth**. Cela indique à Grafana d’utiliser l’[authentification](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)AWS pour les demandes.
   + Sous **Sigv4Auth Details**, pour **Default Region**, indiquez la région de votre instance Prometheus, par exemple `us-east-1`.

1. Choisissez **Enregistrer et tester** pour terminer la configuration de votre source de données.

   Si votre source de données est correctement configurée, vous verrez un message indiquant que le **bilan de santé est réussi**.

**Pour connecter votre nouvelle source de données Alertmanager à la source de données Prometheus**

1. **Depuis votre console Grafana, dans le menu Grafana, choisissez la page **Source de données sous Configuration**.**

1. Sélectionnez votre source de données Amazon Managed Service for Prometheus d'origine et activez le bouton **Gérer les alertes via l'interface utilisateur d'alerte**.

1. Choisissez **Enregistrer et tester** pour terminer la configuration de votre source de données.

# Configuration des exemplaires
<a name="amp-configure-exemplars"></a>

**Note**  
Cette fonctionnalité nécessite la version 2.26 ou ultérieure de Prometheus.  
Les exemplaires ne sont pas pris en charge dans Amazon Managed Service for Prometheus.

Vous pouvez afficher les données des exemplaires à côté d'une métrique à la fois dans Explore et dans Dashboards. Les exemplaires associent des métadonnées de cardinalité plus élevée provenant d'un événement spécifique aux données de séries chronologiques traditionnelles.

Vous pouvez configurer des exemplaires dans les paramètres de la source de données en ajoutant des liens vers vos exemplaires. Vous pouvez utiliser des macros dans votre URL. Par exemple, vous pouvez créer une URL telle que`https://example.com/${__value.raw}`.

# Connectez-vous à une source de données Amazon Timestream
<a name="timestream-datasource"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

 Avec Amazon Managed Grafana, vous pouvez ajouter Amazon Timestream en tant que source de données en utilisant l'option de configuration de la source de données dans la console de AWS l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout de Timestream en tant que source de données en découvrant vos comptes Timestream existants et en gérant la configuration des informations d'authentification requises pour accéder à Timestream. Vous pouvez utiliser cette méthode pour configurer l'authentification et ajouter Timestream comme source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.



# Utiliser la configuration AWS de la source de données pour ajouter Timestream en tant que source de données
<a name="Timestream-adding-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par des services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les ressources Timestream de votre compte ou de l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour ajouter Timestream en tant que source de données.

**Pour utiliser la configuration AWS de la source de données pour ajouter Timestream en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Dans le coin supérieur gauche de la page, cliquez sur l’icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. **Cochez ensuite la case **Amazon Timestream**, puis **choisissez** Actions, Activer la politique gérée par les services.**

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana dans la ligne** Amazon **Timestream**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez **Applications** puis **Sources de AWS données** (dans Grafana v8, choisissez l' AWS icône dans le menu de gauche).

1. Choisissez l'onglet **AWS Services**, puis **Timestream**.

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de données **Timestream** interroge, sélectionnez les comptes, puis choisissez **Ajouter une source de données**.

# Ajouter manuellement la source de données Timestream
<a name="timestream-add-the-data-source"></a>

**Pour ajouter manuellement la source de données Timestream**

1.  Dans le menu latéral de la console Grafana, faites une pause sur l'icône **Configuration** (engrenage), puis choisissez Sources de **données**.

1. Choisissez **Add data source**.

1. Choisissez la source de **données Amazon Timestream**. Si nécessaire, vous pouvez commencer à taper **Timestream** dans le champ de recherche pour vous aider à le trouver.

## Réglages du flux temporel
<a name="timestream-settings"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Nom  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Fournisseur d'authentification  |  Spécifiez le fournisseur pour obtenir les informations d'identification.  | 
|  Région par défaut  |  Utilisé dans l'éditeur de requêtes pour définir la région (peut être modifié pour chaque requête). | 
|  Nom du profil d'identification  |  Spécifiez le nom du profil à utiliser (si vous utilisez un \$1/.aws/credentials fichier), laissez le champ vide par défaut.  | 
|  Assumer le rôle Arn  |  Spécifiez l'ARN du rôle à assumer.  | 
|  Point de terminaison (facultatif)  |  Si vous devez spécifier un autre point de terminaison de service.  | 

### Authentification
<a name="timestream-authentication"></a>

 Cette section décrit les différents types d'authentification que vous pouvez utiliser pour la source de données Amazon Timestream. 

#### Exemples d' AWS informations d'identification
<a name="timestream-example-aws-credentials"></a>

 Vous ne pouvez pas utiliser la méthode d'authentification par fichier d'informations d'identification dans Amazon Managed Grafana. 

# Utilisation de la source de données Timestream
<a name="timestream-query-editor"></a>

## Éditeur de requêtes
<a name="timestream-query-editor"></a>

 L'éditeur de requêtes accepte la syntaxe Timestream en plus des macros répertoriées précédemment et de toutes les variables de modèle de tableau de bord. 

 Appuyez sur **Ctrl\$1Espace** pour ouvrir les IntelliSense suggestions. 

## Macros
<a name="timestream-macros"></a>

 Pour simplifier la syntaxe et autoriser les parties dynamiques, telles que les filtres de plage de dates, la requête peut contenir des macros. 


|  Exemple de macro  |  Description  | 
| --- | --- | 
|  *\$1\$1\$1base de données* |  Spécifiera la base de données sélectionnée. Cela utilise la valeur par défaut de la configuration de la source de données ou la valeur explicite de l'éditeur de requêtes.  | 
|  *\$1\$1\$1table*  |  Spécifiera la base de données sélectionnée. Cela utilise la valeur par défaut de la configuration de la source de données ou la valeur explicite de l'éditeur de requêtes.  | 
|  *\$1\$1\$1mesure*  |  Spécifiera la mesure sélectionnée. Cela utilise la valeur par défaut de la configuration de la source de données ou la valeur explicite de l'éditeur de requêtes.  | 
|  *Filtre \$1\$1\$1time*  |  Sera remplacée par une expression qui limite le temps nécessaire à la plage du tableau de bord  | 
|  *\$1\$1\$1interval\$1ms*  |  Sera remplacé par un nombre représentant le temps qu'un seul pixel du graphique doit couvrir.  | 

# Connectez-vous à une source de données Amazon Athena
<a name="AWS-Athena"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

**Note**  
 Ce guide part du principe que vous connaissez le service Amazon Athena avant d'utiliser la source de données Athena. 

Avec Amazon Managed Grafana, vous pouvez ajouter Athena en tant que source de données en utilisant l'option de configuration de la source de AWS données dans la console de l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout d'Athena en tant que source de données en découvrant vos comptes Athena existants et en gérant la configuration des informations d'authentification requises pour accéder à Athena. Vous pouvez utiliser cette méthode pour configurer l'authentification et ajouter Athena comme source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.



 Certaines conditions sont requises pour qu'Athena soit accessible par Amazon Managed Grafana. Pour connaître les conditions préalables associées à l'utilisation de la source de données Athena, consultez. [Conditions préalables](Athena-prereq.md)

# Conditions préalables
<a name="Athena-prereq"></a>

Pour utiliser les politiques gérées pour Amazon Managed Grafana for Athena, effectuez les tâches suivantes avant de configurer la source de données Athena :
+ Marquez vos groupes de travail Athena avec. `GrafanaDataSource: true` 
+ Créez un compartiment S3 dont le nom commence par`grafana-athena-query-results-`. Cette politique fournit des autorisations pour écrire les résultats des requêtes dans un compartiment S3 avec cette convention de dénomination.

Les autorisations Amazon S3 permettant d'accéder à la source de données sous-jacente d'une requête Athena ne sont pas incluses dans cette politique gérée. Vous devez ajouter les autorisations nécessaires pour les compartiments Amazon S3 manuellement, sur une case-by-case base régulière. Pour plus d'informations, consultez les [exemples de politiques basées sur l'identité dans Amazon Managed Grafana dans ce guide](https://docs.aws.amazon.com/grafana/latest/userguide/security_iam_id-based-policy-examples.html).

# Utiliser la configuration de la source de AWS données pour ajouter Amazon Athena en tant que source de données
<a name="Athena-adding-AWS-config"></a>

## Conditions préalables
<a name="Athena-prerequisites"></a>
+ La [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) est installée et configurée dans votre environnement.
+ Vous avez accès à Athéna depuis votre compte.

Pour utiliser la configuration AWS des sources de données, accédez d'abord à la console Amazon Managed Grafana pour activer les rôles IAM gérés par des services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les ressources Athena de votre compte ou de l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour ajouter Athena en tant que source de données.

# Pour utiliser la configuration de la source de AWS données pour ajouter Athena en tant que source de données


1.  Assurez-vous que votre rôle d'utilisateur est administrateur ou éditeur.

1.  Sélectionnez l'espace de travail sur lequel vous souhaitez travailler depuis la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case pour **Amazon Athena**, puis choisissez **Actions**, **Activer la politique gérée par les services**.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana** dans la ligne **Amazon Athena**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire. L'utilisateur doit avoir une politique d'accès Athena attachée à l'utilisateur/au rôle afin d'avoir accès à la source de données Athena. Pour plus d’informations, consultez [AWS politique gérée : AmazonGrafanaAthenaAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaAthenaAccess). 

1. **Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône inférieure (il y en a deux), puis choisissez **Athena dans le menu Sources de données**.**

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de données Athena interroge, puis sélectionnez les comptes souhaités, puis choisissez **Ajouter une source de données**.

1.  Suivez les étapes pour configurer **Athena** Details dans [**Paramètres d'Athena Details**](#Athena-settings)

## **Paramètres d'Athena Details**
<a name="Athena-settings"></a>

**Configurer les paramètres **d'Athena Details****

1.  Dans le menu **Détails de la connexion**, sélectionnez le fournisseur d'authentification (recommandé : **rôle Workspace IAM**). 

1.  Sélectionnez la source de données Athena ciblée dans laquelle vous avez votre compte Athena. Si vous ne sélectionnez aucune source de données, une source de données par défaut apparaît dans le menu déroulant.

   Pour créer un nouveau compte Athena, suivez les instructions de la section [Getting started](https://docs.aws.amazon.com/athena/latest/ug/getting-started.html) with Athena

1.  Sélectionnez votre base de données Athena ciblée dans la source de données sélectionnée ci-dessus.

1.  Sélectionnez le groupe de travail. Le **mode principal** est défini par défaut. 

1.  Si aucun emplacement de sortie n'est déjà configuré pour votre groupe de travail, spécifiez un compartiment et un dossier S3 à utiliser pour les résultats des requêtes. Par exemple, `s3://grafana-athena-plugin-test-data/query-result-output/ ` 

1.  Sélectionnez **Enregistrer et tester**. 

# Ajouter manuellement la source de données Athena
<a name="Athena-add-the-data-source"></a>

## Conditions préalables
<a name="Athena-prerequisites2"></a>
+ La [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) est installée et configurée dans votre environnement.
+  Vous avez accès à **Amazon Athena** depuis votre compte.

**Pour ajouter manuellement la source de données Athena :**

1.  Dans le menu latéral de la console Grafana, faites une pause sur l'icône **Configuration** (engrenage), puis choisissez Sources de **données**.

1. Choisissez **Add data source**.

1. Choisissez la source de données **AWS Athena**. Si nécessaire, vous pouvez commencer à taper **Athena** dans le champ de recherche pour vous aider à le trouver.

1.  Dans le menu **Détails de connexion**, configurez le fournisseur d'authentification (recommandé : **rôle Workspace IAM**) 

1.  Sélectionnez votre source de données, votre base de données et votre groupe de travail Athena cibles.

   Pour créer un nouveau compte Athena, suivez les instructions de la section [Getting started with Athena](https://docs.aws.amazon.com/athena/latest/ug/getting-started.html).

1.  Si aucun emplacement de sortie n'est déjà configuré pour votre groupe de travail, spécifiez un compartiment et un dossier S3 à utiliser pour les résultats des requêtes. Par exemple, `s3://grafana-athena-plugin-test-data/query-result-output/ `. 

1.  Sélectionnez **Enregistrer et tester**. 

Voici un exemple des paramètres **Athena Details**.

![\[Exemple d'Athena Details\]](http://docs.aws.amazon.com/fr_fr/grafana/latest/userguide/images/athena.png)


# Utilisation de la source de données Athena
<a name="Athena-using-the-data-source"></a>

## politiques IAM
<a name="Athena-policies"></a>

 Grafana a besoin d'autorisations accordées via IAM pour pouvoir lire les métriques d'Athena. Vous pouvez associer ces autorisations aux rôles IAM et utiliser le support intégré de Grafana pour assumer des rôles. Notez que vous devrez [configurer la politique requise](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) pour votre rôle avant d'ajouter la source de données à Grafana. Vous aurez besoin d'un rôle d'administrateur ou d'éditeur pour ajouter une source de données. La politique d'accès intégrée à Amazon Grafana Athena est définie dans cette section. [AWS politique gérée : AmazonGrafanaAthenaAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaAthenaAccess) 

## Interrogez les données d'Athéna
<a name="Athena-query"></a>

La source de données Athena fournit un éditeur de requêtes SQL standard. Amazon Managed Grafana inclut des macros pour vous aider à écrire des requêtes de séries chronologiques plus complexes. 

Macros


|  Macro  |  Description  |  Exemple  |  Exemple de sortie  | 
| --- | --- | --- | --- | 
|  \$1\$1\$1dateFilter(column)  |  \$1\$1\$1dateFiltercrée un filtre conditionnel qui sélectionne les données (en utilisantcolumn) en fonction de la plage de dates du panneau.  |  \$1\$1\$1date(my\$1date)  | my\$1date BETWEEN date '2017-07-18' AND date '2017-07-18' | 
|  \$1\$1\$1parseTime(column,format)  |  \$1\$1\$1parseTimeconvertit un varchar en horodatage avec le format donné.  |  \$1\$1\$1parseTime(eventtime, 'yyyy-MM-dd''T''HH:mm:ss''Z')  | parse\$1datetime(time,'yyyy-MM-dd''T''HH:mm:ss''Z') | 
|  \$1\$1\$1timeFilter(column,format)  |  \$1\$1\$1timeFiltercrée un conditionnel qui filtre les données (en utilisantcolumn) en fonction de la plage de temps du panneau. Le deuxième argument est utilisé pour analyser éventuellement la colonne d'un varchar à un horodatage avec un format spécifique.  | \$1\$1\$1timeFilter(time, 'yyyy-MM-dd HH:mm:ss') | TIMESTAMP time BETWEEN TIMESTAMP '2017-07-18T11:15:52Z' AND TIMESTAMP '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeFrom()  |  \$1\$1\$1timeFromaffiche l'heure de début actuelle de la plage du panneau entre guillemets.  | \$1\$1\$1timeFrom() | TIMESTAMP '2017-07-18 11:15:52' | 
|  \$1\$1\$1timeTo()  |  \$1\$1\$1timeTo affiche l'heure de fin actuelle de la plage du panneau entre guillemets.  | \$1\$1\$1timeTo() | TIMESTAMP '2017-07-18 11:15:52' | 
|  \$1\$1\$1timeGroup(column, '1m', format)  |  \$1\$1\$1timeGroup regroupe les horodatages de manière à ce qu'il n'y ait qu'un point pour chaque période du graphique. Le troisième argument est utilisé pour analyser éventuellement la colonne d'un varchar à un horodatage avec un format spécifique.  | \$1\$1\$1timeGroup(time,'5m','yyyy-MM-dd''T''HH:mm:ss.SSSSSS''Z') | FROM\$1UNIXTIME(FLOOR(TO\$1UNIXTIME(parse\$1datetime(time,'yyyy-MM-dd''T''HH:mm:ss.SSSSSS''Z'))/300)\$1300) | 
|  \$1\$1\$1table  |   \$1\$1\$1tablerenvoie le tableau sélectionné dans le sélecteur de tableau.  | \$1\$1\$1table | my\$1table | 
|  \$1\$1\$1column  |  \$1\$1\$1columnrenvoie la colonne sélectionnée dans le sélecteur de colonnes (un tableau est requis).  | \$1\$1\$1column  | col1  | 

**Visualisation**

La plupart des requêtes dans Athena seront mieux représentées par une visualisation sous forme de table. Une requête affiche les données de retour dans une table. S'il peut être interrogé, il peut être affiché sous forme de tableau.

Cet exemple renvoie les résultats d'une visualisation de table : 

```
SELECT {column_1}, {column_2} FROM {table};
```

**Visualisations de séries chronologiques/graphiques**

Pour les séries chronologiques et les visualisations de graphes, vous devez : 
+ sélectionnez une colonne avec un `date` ou un `datetime` type. La `date` colonne doit être dans l'ordre croissant (utilisation`ORDER BY column ASC`).
+ sélectionnez également une colonne numérique.

**Inspection de la requête**

Amazon Managed Grafana prend en charge les macros qu'Athena ne prend pas en charge, ce qui signifie qu'une requête peut ne pas fonctionner si elle est copiée et collée directement dans Athena. Pour afficher la requête interpolée complète, qui fonctionne directement dans Athena, cliquez sur le bouton **Query Inspector**. La requête complète est affichée sous l'onglet **Requête**.

## Modèles et variables
<a name="using-Athena-templates-variables"></a>

Pour plus d'informations sur l'ajout d'une variable de requête Athena, consultez. [Ajouter une variable de requête](variables-types.md#add-a-query-variable) Utilisez votre source de données Athena comme source de données pour les requêtes disponibles.

Toute valeur interrogée à partir d'une table Athena peut être utilisée comme variable. Évitez de sélectionner trop de valeurs, car cela peut entraîner des problèmes de performances.

Après avoir créé une variable, vous pouvez l'utiliser dans vos requêtes Athena en utilisant. [Syntaxe variable](templates-and-variables.md#variable-syntax) Pour plus d'informations sur les variables, consultez[Modèles et variables](templates-and-variables.md).

## Annotations
<a name="using-Athena-annotations"></a>

[Annotations](dashboard-annotations.md)vous permettent de superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des annotations en sélectionnant le panneau ou en ajoutant des requêtes d'annotation à l'aide de la vue des **annotations** du menu du tableau de **bord**. 

Exemple de requête pour ajouter automatiquement des annotations :

```
SELECT
  time as time,
  environment as tags,
  humidity as text
FROM
  tableName
WHERE
  $__dateFilter(time) and humidity > 95
```

Le tableau suivant décrit les colonnes qui peuvent être utilisées pour afficher des annotations :


|  Nom  |  Description  | 
| --- | --- | 
|  Time  |  Le nom du date/time champ. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  Timeend  |  Nom facultatif du date/time champ de fin. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque. (Grafana v6.6 et versions ultérieures)  | 
|  Text  |  Champ de description de l'événement.  | 
|  Tags  |  Nom de champ facultatif à utiliser pour les balises d'événements sous forme de chaîne séparée par des virgules.  | 

## Support des données de requêtes asynchrones
<a name="athena-async-query"></a>

Les requêtes Athena dans Amazon Managed Grafana sont traitées de manière asynchrone afin d'éviter les délais d'attente. Les requêtes asynchrones utilisent des requêtes distinctes pour démarrer la requête, puis vérifier sa progression et enfin récupérer les résultats. Cela permet d'éviter les délais d'attente pour les requêtes qui s'exécutent pendant une longue période.

## Réutilisation des résultats de requête
<a name="athena-query-reuse"></a>

Vous pouvez réutiliser les résultats des requêtes précédentes pour améliorer les performances des requêtes. Pour activer la réutilisation des requêtes, cette option se trouve dans la section **Réutilisation des résultats** de la requête de l'éditeur de requêtes. Cela doit être fait pour chaque requête que vous souhaitez réutiliser.

**Note**  
Cette fonctionnalité nécessite que votre instance Athena soit installée sur la version 3 du moteur. Pour plus d'informations, consultez la section [Modification des versions du moteur Athena](https://docs.aws.amazon.com/athena/latest/ug/engine-versions-changing.html) dans le guide de l'utilisateur *Amazon Athena*.

# Connectez-vous à une source de données Amazon Redshift
<a name="AWS-Redshift"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

**Note**  
 Ce guide part du principe que les utilisateurs connaissent le service Amazon Redshift avant d'utiliser la source de données Amazon Redshift. 

Avec Amazon Managed Grafana, vous pouvez ajouter Amazon Redshift en tant que source de données en utilisant l'option de configuration de la source de données dans AWS la console de l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout d'Amazon Redshift en tant que source de données en découvrant vos comptes Amazon Redshift existants et en gérant la configuration des informations d'authentification requises pour accéder à Amazon Redshift. Vous pouvez utiliser cette méthode pour configurer l'authentification et ajouter Amazon Redshift en tant que source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.

Certaines conditions sont requises pour qu'Amazon Managed Grafana puisse accéder à Amazon Redshift. Pour connaître les conditions préalables associées à l'utilisation de la source de données Amazon Redshift, consultez. [Conditions préalables](Redshift-prereq.md)

# Conditions préalables
<a name="Redshift-prereq"></a>

Pour utiliser les politiques AWS gérées pour Amazon Managed Grafana, effectuez les tâches suivantes avant de configurer la source de données Amazon Redshift :
+ Marquez votre cluster Amazon Redshift avec. `GrafanaDataSource: true` Dans le cas contraire, il ne sera pas accessible.
+ Créez les informations d'identification de base de données de l'une des manières mutuellement exclusives suivantes :
  + Si vous souhaitez utiliser le mécanisme par défaut (les options d'identification temporaires) pour vous authentifier auprès de la base de données Redshift, vous devez créer un utilisateur de base de données nommé. `redshift_data_api_user`
  + Si vous souhaitez utiliser les informations d'identification de Secrets Manager, vous devez étiqueter le secret avec`RedshiftQueryOwner: true`. Pour plus d'informations, consultez les [exemples de politiques basées sur l'identité dans Amazon Managed Grafana dans ce guide](https://docs.aws.amazon.com/grafana/latest/userguide/security_iam_id-based-policy-examples.html).

# Utiliser la configuration de la source de AWS données pour ajouter Amazon Redshift en tant que source de données
<a name="Redshift-configure"></a>

# Pour utiliser la configuration de la source de AWS données afin d'ajouter Amazon Redshift en tant que source de données


1.  Assurez-vous que votre rôle d'utilisateur est administrateur ou éditeur.

1.  Sélectionnez l'espace de travail sur lequel vous souhaitez travailler depuis la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case pour **Amazon Redshift**, puis choisissez **Actions**, **Activer la politique gérée par les services**.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana** dans la ligne **Amazon Redshift**.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. **Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône inférieure (il y en a deux), puis choisissez Redshift.**

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de données Amazon Redshift interroge, puis sélectionnez les comptes souhaités, puis choisissez **Ajouter une source de données**.

1.  Suivez les étapes pour configurer les **détails de connexion** dans[Paramètres des **détails de connexion**](Redshift-config.md#Redshift-connection-details).

# Ajout manuel de la source de données Amazon Redshift
<a name="Redshift-add-the-data-source"></a>

## Conditions préalables
<a name="Redshift-prerequisites"></a>
+  Vous avez accès à **Amazon Redshift** depuis votre compte.

**Pour ajouter la source de données Amazon Redshift :**

1. Associez le rôle [AmazonRedshiftAccessPolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaRedshiftAccess)d'utilisateur à votre espace de travail.

1. Assurez-vous que votre rôle d'utilisateur est administrateur ou éditeur.

1.  Sélectionnez l'espace de travail sur lequel vous souhaitez travailler depuis la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1.  Dans le menu latéral de la console Grafana, faites une pause sur l'icône **Configuration** (engrenage), puis choisissez Sources de **données**.

1. Choisissez **Add data source**.

1. Choisissez la source de données **AWS Redshift**. Si nécessaire, vous pouvez commencer à taper **Redshift** dans le champ de recherche pour vous aider à le trouver.

1. Cela ouvre la page des **détails de connexion**. Suivez les étapes de configuration du[Paramètres des **détails de connexion**](Redshift-config.md#Redshift-connection-details). 

# Configuration d'Amazon Redshift
<a name="Redshift-config"></a>

 Après avoir ajouté votre source de données Amazon Redshift à votre espace de travail, configurez les paramètres Amazon Redshift comme suit :

## Conditions préalables
<a name="Redshift-prerequisites"></a>
+  Vous avez accès à **Amazon Redshift** depuis votre compte.

## Paramètres des **détails de connexion**
<a name="Redshift-connection-details"></a>

**Configurer les paramètres des détails de connexion**

1.  Dans le menu **Détails de la connexion**, sélectionnez le fournisseur d'authentification (recommandé : **rôle Workspace IAM**). 

1.  Choisissez la **région par défaut** que vous souhaitez interroger. 

## Paramètres **d'authentification**
<a name="Redshift-Authentication"></a>

**Configuration des paramètres **d'authentification****

1.  Dans le menu **Authentification**, choisissez l'onglet **Temporary Credentials** ou **AWS Secrets Manager** comme fournisseur d'identifiants d'accès. Pour plus de détails sur Temporary Credentials and AWS Secrets Manager, reportez-vous à [AWS politique gérée : AmazonGrafanaRedshiftAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaRedshiftAccess)

1.  Si vous choisissez les **informations d'identification temporaires** par défaut, suivez les étapes ci-dessous. Si vous choisissez **AWS Secrets Manager**, entrez vos informations d'identification **AWS Secrets Manager** dans les champs de saisie. 

1.  Choisissez l'**identifiant du cluster** que vous avez créé dans Amazon Redshift.

   [Pour plus d'informations sur le cluster Redshift, consultez la section Connexions Redshift.](https://docs.aws.amazon.com/redshift/latest/gsg/connection.html)

1.  Choisissez votre base de données Redshift ciblée.

1.  Sélectionnez l'utilisateur de base de données que vous avez créé pour le cluster ci-dessus. 

1.  Choisissez **Enregistrer et tester**. 

Voici un exemple des paramètres des **informations d'identification temporaires**.

![\[Exemple d'informations d'identification temporaires\]](http://docs.aws.amazon.com/fr_fr/grafana/latest/userguide/images/redshift.png)


Voici un exemple du menu **AWS Secrets Manager**.

![\[Exemple de Secrets Manager\]](http://docs.aws.amazon.com/fr_fr/grafana/latest/userguide/images/secretsmanager.png)


# Utilisation de la source de données Amazon Redshift
<a name="Redshift-using-the-data-source"></a>

## politiques IAM
<a name="Redshift-policies"></a>

 Grafana a besoin d'autorisations accordées via IAM pour pouvoir lire les métriques Redshift. Vous pouvez associer ces autorisations aux rôles IAM et utiliser le support intégré de Grafana pour assumer des rôles. La politique d'accès intégrée à Amazon Grafana Redshift est définie dans cette section. [AWS politique gérée : AmazonGrafanaRedshiftAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaRedshiftAccess) 

## Interrogez les données Amazon Redshift
<a name="Redshift-query"></a>

 La source de données Amazon Redshift fournit un éditeur de requêtes SQL standard. Amazon Managed Grafana inclut des macros pour vous aider à écrire des requêtes de séries chronologiques plus complexes. 

Macros


|  Macro  |  Description  |  Exemple de sortie  | 
| --- | --- | --- | 
|  \$1\$1\$1timeEpoch(column)  |  \$1\$1\$1timeEpochsera remplacée par une expression à convertir en horodatage UNIX et à renommer la colonne en fonction de l'heure  |  UNIX\$1TIMESTAMP(dateColumn) as "time"  | 
|  \$1\$1\$1timeFilter(column)  |  \$1\$1\$1timeFiltercrée un conditionnel qui filtre les données (en utilisantcolumn) en fonction de la plage de temps du panneau  |  time BETWEEN '2017-07-18T11:15:52Z' AND '2017-07-18T11:15:52Z'  | 
|  \$1\$1\$1timeFrom()  |  \$1\$1\$1timeFromaffiche l'heure de début actuelle de la plage du panneau entre guillemets  | '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeTo()  |  \$1\$1\$1timeToaffiche l'heure de fin actuelle de la plage du panneau entre guillemets  | '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeGroup(column, '1m')  |  \$1\$1\$1timeGroupregroupe les horodatages de manière à ce qu'il n'y ait qu'un point pour chaque période du graphique  | floor(extract(epoch from time)/60)\$160 AS "time" | 
|  \$1\$1\$1schema  |  \$1\$1\$1schema utilise le schéma sélectionné  | public | 
|  \$1\$1\$1table  |   \$1\$1\$1tablegénère une table à partir de la donnée \$1\$1\$1schema (elle utilise le schéma public par défaut)  | sales | 
|  \$1\$1\$1column  |  \$1\$1\$1columnaffiche une colonne à partir du courant \$1\$1\$1table  | date  | 
|  \$1\$1\$1unixEpochFilter(column)  |  \$1\$1\$1unixEpochFilterêtre remplacé par un filtre de plage horaire utilisant le nom de colonne spécifié, les heures étant représentées par un horodatage Unix  |   column >= 1624406400 AND column <= 1624410000  | 
|  \$1\$1\$1unixEpochGroup(column)  |  \$1\$1\$1unixEpochGroupest le même que \$1\$1\$1timeGroup pour les heures stockées sous forme d'horodatage Unix  | floor(time/60)\$160 AS "time" | 

**Visualisation**

La plupart des requêtes dans Redshift sont mieux représentées par une visualisation de table. Toute requête affichera des données dans un tableau. S'il peut être interrogé, il peut être placé dans un tableau. 

Cet exemple renvoie les résultats d'une visualisation de table : 

```
SELECT {column_1}, {column_2} FROM {table};
```

**Visualisations de séries chronologiques et de graphiques**

Pour les visualisations de séries chronologiques et de graphiques, certaines exigences s'appliquent : 
+ Une colonne avec un `date` ou un `datetime` type doit être sélectionnée.
+ La `date` colonne doit être dans l'ordre croissant (utilisation`ORDER BY column ASC`).
+ Vous devez sélectionner une colonne numérique.

Pour créer un graphique plus raisonnable, veillez à utiliser les `$__timeGroup` macros `$__timeFilter` et.

**Exemple de requête de série chronologique :**

```
SELECT
  avg(execution_time) AS average_execution_time,
  $__timeGroup(start_time, 'hour'),
  query_type
FROM
  account_usage.query_history
WHERE
  $__timeFilter(start_time)
group by
  query_type,start_time
order by
  start_time,query_type ASC;
```

**Mode de remplissage**

Grafana complète également automatiquement les cadres sans valeur avec une valeur par défaut. Pour configurer cette valeur, modifiez la **valeur de remplissage** dans l'éditeur de requêtes. 

**Inspection de la requête**

Grafana prenant en charge les macros que Redshift ne prend pas en charge, la requête entièrement rendue, qui peut être copiée et collée directement dans Redshift, est visible dans le Query Inspector. Pour afficher la requête interpolée complète, choisissez le menu **Query Inspector**, et la requête complète est visible dans l'onglet **Query**.

## Modèles et variables
<a name="using-redshift-templates-variables"></a>

Pour plus d'informations sur la façon d'ajouter une nouvelle variable de requête Redshift, consultez. [Ajouter une variable de requête](variables-types.md#add-a-query-variable) Utilisez votre source de données Redshift comme source de données pour les requêtes disponibles.

Toute valeur demandée à partir d'une table Amazon Redshift peut être utilisée comme variable. Veillez à ne pas sélectionner trop de valeurs, car cela peut entraîner des problèmes de performances. 

Après avoir créé une variable, vous pouvez l'utiliser dans vos requêtes Redshift en utilisant. [Syntaxe variable](templates-and-variables.md#variable-syntax) Pour plus d'informations sur les variables, consultez[Modèles et variables](templates-and-variables.md).

## Annotations
<a name="using-redshift-annotations"></a>

[Annotations](dashboard-annotations.md)vous permet de superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des annotations en sélectionnant le panneau ou en ajoutant des requêtes d'annotation à l'aide de la vue **Annotations**, ouverte depuis le menu Tableau de **bord**. 

Exemple de requête pour ajouter automatiquement des annotations :

```
SELECT
  time as time,
  environment as tags,
  humidity as text
FROM
  $__table
WHERE
  $__timeFilter(time) and humidity > 95
```

Le tableau suivant représente les valeurs des colonnes prises en compte pour le rendu des annotations :


|  Nom  |  Description  | 
| --- | --- | 
|  Time  |  Nom du champ de date ou d'heure. Il peut s'agir d'une colonne avec un type de données SQL natif de date ou d'heure ou une valeur d'époque.  | 
|  Timeend  |  Nom facultatif du champ de date ou d'heure de fin. Il peut s'agir d'une colonne avec un type de données SQL natif de date ou d'heure ou une valeur d'époque.  | 
|  Text  |  Champ de description de l'événement.  | 
|  Tags  |  Nom de champ facultatif à utiliser pour les balises d'événements sous forme de chaîne séparée par des virgules.  | 

# Se connecter à une source AWS X-Ray de données
<a name="x-ray-data-source"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

 Ajoutez AWS X-Ray en tant que source de données, puis créez des tableaux de bord ou utilisez Explore with X-Ray pour consulter des traces, des analyses ou des informations. 

 Avec Amazon Managed Grafana, vous pouvez ajouter X-Ray en tant que source de données en utilisant l'option de configuration de la source de AWS données dans la console de l'espace de travail Grafana. Cette fonctionnalité simplifie l'ajout de X-Ray en tant que source de données en découvrant vos comptes X-Ray existants et en gérant la configuration des informations d'authentification requises pour accéder à X-Ray. Vous pouvez utiliser cette méthode pour configurer l'authentification et ajouter X-Ray comme source de données, ou vous pouvez configurer manuellement la source de données et les informations d'authentification nécessaires en utilisant la même méthode que sur un serveur Grafana autogéré.

**Topics**
+ [Utiliser la configuration de la source de AWS données pour ajouter X-Ray en tant que source de données](xray-adding-AWS-config.md)
+ [Ajouter manuellement la source de données X-Ray](xray-add-the-data-source.md)
+ [Réglages X-Ray](#xray-settings)
+ [Utilisation de la source de données X-Ray](xray-using.md)

# Utiliser la configuration de la source de AWS données pour ajouter X-Ray en tant que source de données
<a name="xray-adding-AWS-config"></a>

Pour utiliser la configuration AWS des sources de données, vous devez d'abord utiliser la console Amazon Managed Grafana pour activer les rôles IAM gérés par les services qui accordent à l'espace de travail les politiques IAM nécessaires pour lire les ressources X-Ray de votre compte ou de l'ensemble de vos unités organisationnelles. Vous utilisez ensuite la console d'espace de travail Amazon Managed Grafana pour ajouter X-Ray en tant que source de données.

**Pour utiliser la configuration de la source de AWS données pour ajouter X-Ray en tant que source de données**

1. Ouvrez la console Amazon Managed Grafana à l'adresse. [https://console.aws.amazon.com/grafana/](https://console.aws.amazon.com/grafana/home/)

1. Dans le coin supérieur gauche de la page, cliquez sur l’icône du menu, puis sur **Tous les espaces de travail**.

1. Choisissez le nom de l'espace de travail.

1. Si vous n'avez pas choisi d'utiliser les autorisations gérées par les services pour cet espace de travail lorsque vous l'avez créé, passez des autorisations gérées par le client à des autorisations gérées par les services afin de vous assurer que les rôles et politiques IAM appropriés sont activés pour utiliser l'option de configuration de la AWS source de données dans la console de l'espace de travail Grafana. Pour ce faire, choisissez l'icône de modification par **rôle IAM**, puis choisissez **Service géré**, **Enregistrer les modifications**. Pour de plus amples informations, veuillez consulter [Autorisations et politiques Amazon Managed Grafana pour les sources de données AWS](AMG-manage-permissions.md). 

1. Choisissez l'onglet **Sources de données**. Cochez ensuite la case pour **AWS X-Ray**, puis choisissez **Actions**, **Activer la politique gérée par le service**.

1. Choisissez à nouveau l'onglet **Sources de données**, puis sélectionnez **Configurer dans Grafana** dans la **AWS X-Ray**ligne.

1. Connectez-vous à la console de l'espace de travail Grafana à l'aide d'IAM Identity Center si nécessaire.

1. **Dans la barre de navigation de gauche de la console de l'espace de travail Grafana, choisissez l' AWS icône, puis choisissez **AWS Services**, X-Ray.**

1. Sélectionnez la région par défaut à partir de laquelle vous souhaitez que la source de données X-Ray interroge, sélectionnez les comptes, puis choisissez **Ajouter une source de données**.

# Ajouter manuellement la source de données X-Ray
<a name="xray-add-the-data-source"></a>

**Pour ajouter manuellement la source de données X-Ray**

1.  Dans le menu latéral de la console Grafana, faites une pause sur l'icône **Configuration** (engrenage), puis choisissez Sources de **données**.

1. Choisissez **Add data source**.

1. Choisissez la source de données **X-Ray**. Si nécessaire, vous pouvez commencer à taper **X-Ray** dans le champ de recherche pour vous aider à le trouver.

## Réglages X-Ray
<a name="xray-settings"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Nom  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Par défaut  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Région par défaut  |  Utilisé dans l'éditeur de requêtes pour définir la région (peut être modifié pour chaque requête). | 
|  Fournisseur d'authentification  |  Spécifiez le fournisseur pour obtenir les informations d'identification.  | 
|  Nom du profil d'identification  |  Spécifiez le nom du profil à utiliser (si vous utilisez un \$1/.aws/credentials fichier), laissez le champ vide par défaut.  | 
|  Assumer le rôle Arn  |  Spécifiez l'ARN du rôle à assumer.  | 
|  Identifiant externe  |  Si vous jouez un rôle dans un autre compte créé avec un identifiant externe, spécifiez l'identifiant externe ici.  | 

### Authentification
<a name="xray-authentication"></a>

Cette section couvre les différents types d'authentification que vous pouvez utiliser pour la source de données X-Ray. 

#### Rôles IAM
<a name="xray-iam-roles"></a>

 Actuellement, tous les accès à X-Ray se font côté serveur par le backend de l'espace de travail Grafana à l'aide du SDK officiel. AWS Si votre serveur Grafana est en cours d'exécution AWS, vous pouvez utiliser les rôles IAM et l'authentification sera gérée automatiquement. 

 Pour en savoir plus, consultez [Rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html). 

### politiques IAM
<a name="xray-iam-policies"></a>

 Grafana a besoin d'autorisations accordées via IAM pour pouvoir lire les données X-Ray et EC2. tags/instances/regions Vous pouvez associer ces autorisations aux rôles IAM et utiliser le support Grafana intégré pour assumer des rôles. 

 L'exemple de code suivant montre une politique minimale. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "xray:BatchGetTraces",
                "xray:GetTraceSummaries",
                "xray:GetTraceGraph",
                "xray:GetGroups",
                "xray:GetTimeSeriesServiceStatistics",
                "xray:GetInsightSummaries",
                "xray:GetInsight",
                "ec2:DescribeRegions"
            ],
            "Resource": "*"
        }
    ]
}
```

------

#### Exemples d' AWS informations d'identification
<a name="xray-example-aws-credentials"></a>

 Vous ne pouvez pas utiliser la méthode du fichier d'informations d'identification dans Amazon Managed Grafana. 

# Utilisation de la source de données X-Ray
<a name="xray-using"></a>

## Éditeur de requêtes
<a name="xray-query-editor"></a>

 Le champ le plus important de l'éditeur est le type de requête. Il existe quatre types de requêtes : 
+  Liste des traces (Traces in AWS) 
+  Statistiques de suivi 
+  Trace Analytics (Analytics in AWS) 
+  Informations 

## Liste de traces
<a name="xray-trace-list"></a>

 Le type de liste de traces vous permet de rechercher des traces, qui sont affichées dans un tableau. Le choix de l'ID de trace dans la première colonne ouvre la trace sur le côté droit. Notez le champ de requête dans l'éditeur. Vous pouvez écrire des requêtes, filtrer des expressions ou insérer un identifiant de trace unique qui sera affiché dans une vue de trace. Pour plus de détails sur les expressions de filtre, consultez la [AWS X-Ray documentation](https://docs.aws.amazon.com/xray/latest/devguide/xray-console-filters.html). 

**Note**  
 La liste des traces n'affichera que les 1000 premières traces. 

## Statistiques de suivi
<a name="xray-trace-statistics"></a>

 Dans Trace Statistics, vous pouvez voir un graphique et un tableau présentant des informations sur les erreurs, les défaillances, les accélérateurs, le succès et le nombre total. Vous pouvez utiliser le champ colonnes de l'éditeur de requêtes pour afficher uniquement les colonnes spécifiées. 

## Trace Analytics
<a name="xray-trace-analytics"></a>

 Dans Trace Analytics, vous pouvez visualiser les tableaux suivants. 
+  Cause racine 
  +  Temps de réponse 
    +  Service Root Cause (dernier service dans le chemin) 
    +  Trajectoire (chemins multiples) 
  +  Erreur 
    +  Service Root Cause (dernier service dans le chemin) 
    +  Chemin 
    +  Message d’erreur 
  +  Défaut 
    +  Service Root Cause (dernier service dans le chemin) 
    +  Chemin 
    +  Message d’erreur 
+  Impact sur l'utilisateur final 
+  URL 
+  HTTP Status Code 

## Informations
<a name="xray-insights"></a>

 Dans Insights, vous pouvez consulter le tableau récapitulatif d'Insights. En choisissant le InsightId , vous serez redirigé vers AWS la console de gestion. 

## Alerte
<a name="xray-alerting"></a>

 Les requêtes X-Ray pouvant renvoyer des données numériques, les alertes sont prises en charge. Pour de plus amples informations, veuillez consulter [Alerte Grafana](alerts-overview.md). 

# Connectez-vous à une source de données Azure Monitor
<a name="using-azure-monitor-in-AMG"></a>

 La source de données Azure Monitor prend en charge plusieurs services dans le cloud Azure : 
+  Le **service Azure Monitor** est le service de plateforme qui fournit une source unique pour surveiller les ressources Azure. Pour de plus amples informations, veuillez consulter [Interrogation du service Azure Monitor](#query-the-azure-monitor-service). 
+  Le **serveur Application Insights** est un service de gestion des performances des applications (APM) extensible destiné aux développeurs Web sur plusieurs plateformes. Il peut être utilisé pour surveiller votre application Web en direct. Il détectera automatiquement les anomalies de performances. Pour de plus amples informations, veuillez consulter [Interrogation du service Application Insights Analytics](#query-the-application-insights-analytics-service). 
+  **Azure Log Analytics** (ou Azure Logs) vous donne accès aux données de journal collectées par Azure Monitor. Pour de plus amples informations, veuillez consulter [Interrogation du service Azure Log Analytics](#querying-the-azure-log-analytics-service). 
+  Utilisez le **service Application Insights Analytics** pour interroger les [données Application Insights](https://docs.microsoft.com/en-us/azure/azure-monitor/app/analytics) en utilisant le même langage de requête que celui utilisé pour Azure Log Analytics. Pour de plus amples informations, veuillez consulter [Interrogation du service Application Insights Analytics](#query-the-application-insights-analytics-service). 

## Ajouter la source de données
<a name="azure-add-the-data-source"></a>

 La source de données peut accéder aux métriques provenant de quatre services différents. Vous pouvez configurer l'accès aux services que vous utilisez. Il est également possible d'utiliser les mêmes informations d'identification pour plusieurs services si c'est ainsi que vous les avez configurées dans Azure Entra ID. 
+  [Enregistrez une application Microsoft Entra et créez un principal de service](https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal) 

1.  Accessibles depuis le menu principal de Grafana, les sources de données nouvellement installées peuvent être ajoutées immédiatement dans la section Sources de données. Cliquez ensuite sur le bouton **Ajouter une source de données** en haut à droite. La source de données Azure Monitor pourra être sélectionnée dans la section Cloud de la liste des sources de données. 

1.  Dans le champ du nom, Grafana saisira automatiquement le nom de la source de données : `Azure Monitor` ou quelque chose comme. `Azure Monitor - 3` Si vous configurez plusieurs sources de données, remplacez le nom par un nom plus informatif. 

1.  Si vous utilisez Azure Monitor, vous avez besoin de quatre informations provenant du portail Azure (pour des instructions détaillées, consultez le lien fourni précédemment) : 
   +  **ID du locataire (identifiant** Azure Entra, propriétés, identifiant de répertoire) 
   +  **ID client (identifiant** Azure Entra, inscriptions d'applications, choisissez votre application, ID d'application) 
   +  **Secret du client** (identifiant Azure Entra, inscriptions d'applications, choix de votre application, clés) 
   +  **ID d'abonnement par défaut** (abonnements, choix de l'abonnement, aperçu, numéro d'abonnement) 

1.  Collez ces quatre éléments dans les champs de la section Détails de l'API Azure Monitor. 
   +  L'identifiant d'abonnement peut être modifié par requête. Enregistrez la source de données et actualisez la page pour voir la liste des abonnements disponibles pour l'ID client spécifié. 

1.  Si vous utilisez également le service Azure Log Analytics, vous devez spécifier ces deux valeurs de configuration ou réutiliser l'ID client et le secret de l'étape précédente. 
   +  ID client (identifiant Azure Entra, inscriptions d'applications, choisissez votre application, ID d'application) 
   +  Secret client (identifiant Azure Entra, inscriptions d'applications, choix de votre application, clés, création d'une clé, utilisation du secret client) 

1.  Si vous utilisez Application Insights, vous avez besoin de deux informations provenant du portail Azure (pour des instructions détaillées, consultez le lien fourni précédemment) : 
   +  ID d'application 
   +  Clé d'API 

1.  Collez ces deux éléments dans les champs appropriés de la section Détails de l'API Application Insights. 

1.  Vérifiez que les détails de configuration sont corrects en cliquant sur le bouton **Enregistrer et tester**. 

 Sinon, à l'étape 4, si vous créez une nouvelle application Azure Entra ID, utilisez la [CLI Azure](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest) : 

```
az ad sp create-for-rbac -n "http://localhost:3000"
```

## Choisir un service
<a name="azure-choose-a-service"></a>

 Dans l'éditeur de requêtes d'un panneau, après avoir choisi votre source de données Azure Monitor, la première étape consiste à sélectionner un service. Il existe quatre options : 
+  `Azure Monitor` 
+  `Application Insights` 
+  `Azure Log Analytics` 
+  `Insights Analytics` 

 L'éditeur de requêtes change en fonction de l'option sélectionnée. Azure Monitor est le moniteur par défaut. 

## Interrogation du service Azure Monitor
<a name="query-the-azure-monitor-service"></a>

 Le service Azure Monitor fournit des métriques pour tous les services Azure que vous exécutez. Il vous aide à comprendre les performances de vos applications sur Azure et détecte de manière proactive les problèmes affectant vos applications. 

 Si vos informations d'identification Azure Monitor vous donnent accès à plusieurs abonnements, choisissez d'abord l'abonnement approprié. 

 Voici des exemples de statistiques que vous pouvez obtenir du service : 
+  `Microsoft.Compute/virtualMachines - Percentage CPU` 
+  `Microsoft.Network/networkInterfaces - Bytes sent` 
+  `Microsoft.Storage/storageAccounts - Used Capacity` 

 L'éditeur de requêtes vous permet d'interroger plusieurs dimensions pour obtenir les métriques qui les prennent en charge. Les métriques qui prennent en charge plusieurs dimensions sont celles répertoriées dans la [liste des métriques prises en charge par Azure Monitor](https://docs.microsoft.com/en-us/azure/azure-monitor/platform/metrics-supported) et dont une ou plusieurs valeurs sont répertoriées dans la colonne **Dimension** pour la métrique. 

### Formatage des clés de légende avec des alias pour Azure Monitor
<a name="format-legend-keys-with-aliases-for-azure-monitor"></a>

 Le format de légende par défaut pour l'API Azure Monitor est le suivant : 

 `metricName{dimensionName=dimensionValue,dimensionTwoName=DimensionTwoValue}` 

 Elles peuvent être longues, mais vous pouvez modifier cette mise en forme en utilisant des alias. Dans le champ **Format de légende**, vous pouvez combiner les alias suivants comme vous le souhaitez. 

 Exemples d'Azure Monitor : 
+  `Blob Type: {{ blobtype }}` 
+  `{{ resourcegroup }} - {{ resourcename }}` 

### Modèles d'alias pour Azure Monitor
<a name="alias-patterns-for-azure-monitor"></a>
+  `{{ resourcegroup }}`= remplacé par la valeur du groupe de ressources 
+  `{{ namespace }}`= remplacé par la valeur de l'espace de noms (par exemple, Microsoft.Compute/VirtualMachines) 
+  `{{ resourcename }}`= remplacé par la valeur du nom de la ressource 
+  `{{ metric }}`= remplacé par le nom de la métrique (par exemple, pourcentage de processeur) 
+  `{{ dimensionname }}`= *Héritage à partir de la version 7.1 (pour des raisons de rétrocompatibilité)* remplacé par celui de la première dimension key/label (tel que trié par clé/étiquette) (par exemple, blobtype) 
+  `{{ dimensionvalue }}`= *Héritage à partir de la version 7.1 (pour des raisons de rétrocompatibilité)* remplacé par la valeur de la première dimension (telle que triée par clé/étiquette) (par exemple,) BlockBlob 
+  `{{ arbitraryDim }}`= *Disponible en version 7.1\$1* remplacée par la valeur de la dimension correspondante. (par exemple, `{{ blobtype }}` devient BlockBlob) 

### Création de variables de modèle pour Azure Monitor
<a name="create-template-variables-for-azure-monitor"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Notez que le service Azure Monitor ne prend pas encore en charge les valeurs multiples. Pour visualiser plusieurs séries chronologiques (par exemple, les métriques pour serveur1 et serveur2), ajoutez plusieurs requêtes afin de pouvoir les afficher sur le même graphique ou dans le même tableau. 

 Le plug-in de source de données Azure Monitor fournit les requêtes suivantes que vous pouvez spécifier dans le champ **Requête** de la vue d'édition des variables. Vous pouvez les utiliser pour remplir la liste des options d'une variable. 


|  Nom  |  Description  | 
| --- | --- | 
|  Subscriptions()  |  Renvoie la liste des abonnements.  | 
|  ResourceGroups()  |  Renvoie une liste de groupes de ressources.  | 
|  ResourceGroups(12345678-aaaa-bbbb-cccc-123456789aaa)  |  Renvoie une liste de groupes de ressources pour un abonnement spécifié.  | 
|  Namespaces(aResourceGroup)  |  Renvoie une liste d'espaces de noms pour le groupe de ressources spécifié.  | 
|  Namespaces(12345678-aaaa-bbbb-cccc-123456789aaa, aResourceGroup)  |  Renvoie une liste d'espaces de noms pour le groupe de ressources et l'abonnement spécifiés.  | 
|  ResourceNames(aResourceGroup, aNamespace)  |  Renvoie une liste de noms de ressources.  | 
|  ResourceNames(12345678-aaaa-bbbb-cccc-123456789aaa, aResourceGroup, aNamespace)  |  Renvoie une liste de noms de ressources pour un abonnement spécifié.  | 
|  MetricNamespace(aResourceGroup, aNamespace, aResourceName)  |  Renvoie une liste d'espaces de noms métriques.  | 
|  MetricNamespace(12345678-aaaa-bbbb-cccc-123456789aaa, aResourceGroup, aNamespace, aResourceName)  |  Renvoie une liste d'espaces de noms métriques pour un abonnement spécifié.  | 
|  MetricNames(aResourceGroup, aNamespace, aResourceName)  |  Renvoie une liste de noms de métriques.  | 
|  MetricNames(12345678-aaaa-bbbb-cccc-123456789aaa, aResourceGroup, aNamespace, aResourceName)  |  Renvoie une liste de noms de métriques pour un abonnement spécifié.  | 

 Exemples : 
+  Requête Resource Groups : `ResourceGroups()` 
+  Transmission de la variable de nom de la métrique : `Namespaces(cosmo)` 
+  Enchaînement des variables du modèle : `ResourceNames($rg, $ns)` 
+  Ne citez pas les paramètres : `MetricNames(hg, Microsoft.Network/publicIPAddresses, grafanaIP)` 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles](templates-and-variables.md#templates). 

### Liste des métriques Azure Monitor prises en charge
<a name="list-of-supported-azure-monitor-metrics"></a>

 Toutes les métriques renvoyées par l'API Azure Monitor n'ont pas de valeurs. Pour faciliter la création d'une requête, la source de données Grafana contient une liste des métriques Azure Monitor prises en charge, et elle ignore les métriques qui n'auront jamais de valeurs. Cette liste est régulièrement mise à jour à mesure que de nouveaux services et mesures sont ajoutés au cloud Azure.

### Alertes Azure Monitor
<a name="azure-monitor-alerting"></a>

 Les alertes Grafana sont prises en charge pour le service Azure Monitor. Il ne s'agit pas du support Azure Alerts. Pour plus d'informations sur les alertes Grafana, consultez. [Alerte Grafana](alerts-overview.md) 

## Interrogation du service Application Insights
<a name="query-the-application-insights-service"></a>

### Formatage des clés de légende avec des alias pour Application Insights
<a name="formatting-legend-keys-with-aliases-for-application-insights"></a>

 Le format de légende par défaut est le suivant : 

 `metricName{dimensionName=dimensionValue,dimensionTwoName=DimensionTwoValue}` 

 Dans le champ Format de légende, les alias suivants peuvent être combinés comme vous le souhaitez. 

 Exemples d'applications Insights : 
+  `city: {{ client/city }}` 
+  `{{ metric }} [Location: {{ client/countryOrRegion }}, {{ client/city }}]` 

### Modèles d'alias pour Application Insights
<a name="alias-patterns-for-application-insights"></a>
+  `{{ groupbyvalue }}`= *L'ancienne dimension à partir de Grafana 7.1\$1 (pour la rétrocompatibilité) remplacée par celle* de la première dimension key/label (triée par clé/étiquette) 
+  `{{ groupbyname }}`= *Héritage depuis Grafana 7.1\$1 (pour la rétrocompatibilité)* remplacé par la valeur de la première dimension (telle que triée par clé/étiquette) (par exemple,) BlockBlob 
+  `{{ metric }}`= remplacé par le nom de la métrique (par exemple, demandes/nombre) 
+  `{{ arbitraryDim }}`= *Disponible en version 7.1\$1* remplacée par la valeur de la dimension correspondante. (par exemple, `{{ client/city }}` devient Chicago) 

### Expressions de filtrage pour Application Insights
<a name="filter-expressions-for-application-insights"></a>

 Le champ de filtre prend une expression de OData filtre. 

 Exemples : 
+  `client/city eq 'Boydton'` 
+  `client/city ne 'Boydton'` 
+  `client/city ne 'Boydton' and client/city ne 'Dublin'` 
+  `client/city eq 'Boydton' or client/city eq 'Dublin'` 

### Création de modèles avec des variables pour Application Insights
<a name="templating-with-variables-for-application-insights"></a>

 Utilisez l'une des requêtes suivantes dans le champ **Requête** de la vue d'édition de variables. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles](templates-and-variables.md#templates). 


|  Nom  |  Description  | 
| --- | --- | 
|  AppInsightsMetricNames()  |  Renvoie une liste de noms de métriques.  | 
|  AppInsightsGroupBys(aMetricName)  |  Renvoie une liste de group by clauses pour le nom de métrique spécifié.  | 

 Exemples : 
+  Requête de noms de métriques : `AppInsightsMetricNames()` 
+  Transmission de la variable de nom de la métrique : `AppInsightsGroupBys(requests/count)` 
+  Enchaînement des variables du modèle : `AppInsightsGroupBys($metricnames)` 

### Alertes Application Insights
<a name="application-insights-alerting"></a>

 Les alertes Grafana sont prises en charge pour Application Insights. Il ne s'agit pas du support Azure Alerts. Pour plus d'informations sur les alertes Grafana, consultez. [Alerte Grafana](alerts-overview.md) 

## Interrogation du service Azure Log Analytics
<a name="querying-the-azure-log-analytics-service"></a>

 Les requêtes sont écrites dans le nouveau langage de requête [Azure Log Analytics (ou KustoDB).](https://docs.microsoft.com/en-us/azure/azure-monitor/log-query/query-language) Une requête Log Analytics peut être formatée sous forme de données de séries chronologiques ou de données de table. 

 Si vos informations d'identification vous donnent accès à plusieurs abonnements, choisissez l'abonnement approprié avant de saisir des requêtes. 

### Requêtes de séries chronologiques
<a name="azure-time-series-queries"></a>

 Les requêtes de séries chronologiques concernent le panneau graphique et d'autres panneaux tels que le SingleStat panneau. Chaque requête doit contenir au moins une colonne date/heure et une colonne de valeur numérique. Le résultat doit être trié par ordre croissant selon la colonne datetime. 

 L'exemple de code suivant montre une requête qui renvoie le nombre agrégé groupé par heure. 

```
Perf
| where $__timeFilter(TimeGenerated)
| summarize count() by bin(TimeGenerated, 1h)
| order by TimeGenerated asc
```

 Une requête peut également comporter une ou plusieurs colonnes non numériques/non datées, et ces colonnes sont considérées comme des dimensions et deviennent des étiquettes dans la réponse. Par exemple, une requête qui renvoie le nombre agrégé groupé par heure, par ordinateur et par CounterName. 

```
Perf
| where $__timeFilter(TimeGenerated)
| summarize count() by bin(TimeGenerated, 1h), Computer, CounterName
| order by TimeGenerated asc
```

 Vous pouvez également sélectionner des colonnes de valeurs numériques supplémentaires (avec ou sans dimensions multiples). Par exemple, obtenir un nombre et une valeur moyenne par heure, par ordinateur et InstanceName : CounterName 

```
Perf
| where $__timeFilter(TimeGenerated)
| summarize Samples=count(), ["Avg Value"]=avg(CounterValue)
    by bin(TimeGenerated, $__interval), Computer, CounterName, InstanceName
| order by TimeGenerated asc
```

**Note**  
 **Conseil** : Dans la requête précédente, la syntaxe Kusto et C `Samples=count()` `["Avg Value"]=...` sont utilisées pour renommer ces colonnes, la deuxième syntaxe tenant compte de l'espace. Cela change le nom de la métrique utilisée par Grafana. Par conséquent, des éléments tels que les légendes des séries et les colonnes du tableau correspondront à ce que vous spécifiez. Dans cet exemple, `Samples` est affiché au lieu de`_count`. 

### Requêtes de table
<a name="azure-table-queries"></a>

 Les requêtes de table sont principalement utilisées dans le panneau de table, et elles affichent une liste de colonnes et de lignes. Cet exemple de requête renvoie des lignes contenant les six colonnes spécifiées. 

```
AzureActivity
| where $__timeFilter()
| project TimeGenerated, ResourceGroup, Category, OperationName, ActivityStatus, Caller
| order by TimeGenerated desc
```

### Formatage du nom d'affichage pour Log Analytics
<a name="format-the-display-name-for-log-analytics"></a>

 Le format du nom d'affichage par défaut est le suivant : 

 `metricName{dimensionName=dimensionValue,dimensionTwoName=DimensionTwoValue}` 

 Cela peut être personnalisé en utilisant l'option de champ du nom d'affichage. 

### Macros Azure Log Analytics
<a name="azure-log-analytics-macros"></a>

 Pour faciliter l'écriture de requêtes, Grafana fournit plusieurs macros que vous pouvez utiliser dans la clause where d'une requête : 
+  `$__timeFilter()`— S'étend jusqu'à l'`TimeGenerated ≥ datetime(2018-06-05T18:09:58.907Z) and``TimeGenerated ≤ datetime(2018-06-05T20:09:58.907Z)`endroit où se trouvent les dates de début et de fin par rapport au sélecteur d'heure Grafana. 
+  `$__timeFilter(datetimeColumn)`— S'étend jusqu'à l'`datetimeColumn ≥ datetime(2018-06-05T18:09:58.907Z) and``datetimeColumn ≤ datetime(2018-06-05T20:09:58.907Z)`endroit où se trouvent les dates de début et de fin par rapport au sélecteur d'heure Grafana. 
+  `$__timeFrom()`— Renvoie la date et l'heure de départ depuis le sélecteur Grafana. Exemple: `datetime(2018-06-05T18:09:58.907Z)`. 
+  `$__timeTo()`— Renvoie la date et l'heure de départ depuis le sélecteur Grafana. Exemple: `datetime(2018-06-05T20:09:58.907Z)`. 
+  `$__escapeMulti($myVar)`— doit être utilisé avec des variables de modèle à valeurs multiples contenant des caractères illégaux. S'il `$myVar` contient les deux valeurs suivantes sous forme de chaîne`'\\grafana-vm\Network(eth0)\Total','\\hello!'`, il s'étend à :`@'\\grafana-vm\Network(eth0)\Total', @'\\hello!'`. Si vous utilisez des variables à valeur unique, cette macro n'est pas nécessaire, échappez plutôt à la variable en ligne :`@'\$myVar'`. 
+  `$__contains(colName, $myVar)`— doit être utilisé avec des variables de modèle à valeurs multiples. S'il `$myVar` a la valeur`'value1','value2'`, il s'étend à :`colName in ('value1','value2')`. 

   Si vous utilisez l'option **Tout**, cochez la case **Tout inclure** et dans le champ **Personnaliser toutes les valeurs**, entrez la valeur suivante :**all**. Si `$myVar` elle possède cette valeur`all`, la macro s'étendra plutôt à`1 == 1`. Pour les variables de modèle comportant de nombreuses options, cela améliore les performances des requêtes en évitant de créer une clause « where.. in » volumineuse.

### Variables intégrées à Azure Log Analytics
<a name="azure-log-analytics-builtin-variables"></a>

 Certaines variables Grafana peuvent également être utilisées dans les requêtes Azure Log Analytics : 
+  `$__interval`- Grafana calcule le grain temporel minimum qui peut être utilisé pour regrouper par heure dans les requêtes. Il renvoie un grain temporel tel que `5m` ou `1h` qui peut être utilisé dans la fonction bin ; par exemple,`summarize count() by bin(TimeGenerated, $__interval)`. Pour plus d'informations sur les variables d'intervalle, consultez[Ajouter une variable d'intervalle](variables-types.md#add-an-interval-variable). 

### Création de modèles avec des variables pour Azure Log Analytics
<a name="templating-with-variables-for-azure-log-analytics"></a>

 Toute requête Log Analytics renvoyant une liste de valeurs peut être utilisée dans le champ **Requête** de la vue d'édition des variables. Il existe également une fonction Grafana pour Log Analytics qui renvoie une liste d'espaces de travail. 

 Pour plus d'informations sur les modèles et les variables de modèle, consultez[Modèles et variables](templates-and-variables.md). 


|  Nom  |  Description  | 
| --- | --- | 
|  workspaces()  |  Renvoie la liste des espaces de travail pour l'abonnement par défaut.  | 
|  workspaces(12345678-aaaa-bbbb-cccc-123456789aaa)  |  Renvoie une liste d'espaces de travail pour l'abonnement spécifié (le paramètre peut être entre guillemets ou non).  | 

 Le tableau suivant présente des exemples de requêtes variables. 


|  Query  |  Description  | 
| --- | --- | 
|  subscriptions()  |  Renvoie la liste des abonnements Azure.  | 
|  workspaces()  |  Renvoie la liste des espaces de travail pour l'abonnement par défaut.  | 
|  workspaces("12345678-aaaa-bbbb-cccc-123456789aaa")  |  Renvoie la liste des espaces de travail pour un abonnement spécifié. | 
|  workspaces("\$1subscription")  |  Avec une variable de modèle pour le paramètre d'abonnement.  | 
|  workspace("myWorkspace").Heartbeat \$1\$1 distinct Computer  |  Renvoie une liste de machines virtuelles.  | 
|  workspace("\$1workspace").Heartbeat \$1\$1 distinct Computer  |  Renvoie une liste de machines virtuelles avec une variable de modèle.  | 
|  workspace("\$1workspace").Perf \$1\$1 distinct ObjectName  |  Renvoie une liste d'objets à partir de la table Perf.  | 
|  workspace("\$1workspace").Perf \$1\$1 where ObjectName == "\$1object" \$1\$1 distinct CounterName  |  Renvoie une liste de noms de métriques à partir de la table Perf.  | 

 L'exemple de code suivant montre une requête de série chronologique utilisant des variables.

```
Perf
| where ObjectName == "$object" and CounterName == "$metric"
| where TimeGenerated >= $__timeFrom() and TimeGenerated <= $__timeTo()
| where  $__contains(Computer, $computer)
| summarize avg(CounterValue) by bin(TimeGenerated, $__interval), Computer
| order by TimeGenerated asc
```

### Liens profonds entre les panneaux Grafana et l'éditeur de requêtes Log Analytics dans Azure Portal
<a name="deep-linking-from-grafana-panels-to-the-log-analytics-query-editor-in-azure-portal"></a>

 Choisissez une série chronologique dans le panneau pour afficher un menu contextuel contenant un lien vers **Afficher dans le portail Azure**. Le choix de ce lien ouvre l'éditeur de requêtes Azure Log Analytics dans le portail Azure et exécute la requête depuis le panneau Grafana qui s'y trouve. 

 Si vous n'êtes pas actuellement connecté au portail Azure, le lien ouvre la page de connexion. Le lien fourni est valide pour n'importe quel compte, mais il affiche la requête uniquement si votre compte a accès à l'espace de travail Azure Log Analytics spécifié dans la requête. 

### Alertes Azure Log Analytics
<a name="azure-log-analytics-alerting"></a>

 Les alertes Grafana sont prises en charge pour Application Insights. Il ne s'agit pas du support Azure Alerts. Pour plus d'informations sur les alertes dans les espaces de travail Grafana, consultez. [Alerte Grafana](alerts-overview.md)

## Interrogation du service Application Insights Analytics
<a name="query-the-application-insights-analytics-service"></a>

 Si vous remplacez le type de service par **Insights Analytics**, un éditeur similaire au service Log Analytics est disponible. Ce service utilise également le langage Kusto, de sorte que les instructions pour interroger les données sont identiques à celles de Kusto[Interrogation du service Azure Log Analytics](#querying-the-azure-log-analytics-service), sauf que vous interrogez plutôt les données d'Application Insights Analytics. 

# Connectez-vous à une source de données Graphite
<a name="using-graphite-in-AMG"></a>

 Grafana dispose d'un éditeur de requêtes Graphite avancé qui vous permet de naviguer rapidement dans l'espace métrique, d'ajouter des fonctions, de modifier les paramètres des fonctions et bien plus encore. L'éditeur peut gérer tous les types de requêtes graphite. Il peut même gérer des requêtes imbriquées complexes grâce à l'utilisation de références de requête. 

## Réglages en graphite
<a name="graphite-settings"></a>

 Pour accéder aux paramètres Graphite, faites une pause sur l'icône de **configuration** (engrenage), puis choisissez **Sources de données**, puis choisissez la source de données Graphite. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  URL  |  Le protocole HTTP, l'adresse IP et le port de votre installation graphite-web ou graphite-api.  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.  | 
|  Auth  |  | 
|  Basic Auth  |  Activez l'authentification de base auprès de la source de données.  | 
|  User  |  Nom d'utilisateur pour l'authentification de base.  | 
|  Password  |  Mot de passe pour l'authentification de base.  | 
|  Custom HTTP Headers  |  Choisissez Ajouter un en-tête pour ajouter un en-tête HTTP personnalisé.  | 
|  Header  |  Entrez le nom de l'en-tête personnalisé.  | 
|  Value  |  Entrez la valeur d'en-tête personnalisée.  | 
|  Graphite details  |  | 
|  Version  |  Sélectionnez votre version de Graphite.  | 
|  Type  |  Sélectionnez votre type de graphite.  | 

 Le mode d'accès contrôle la manière dont les demandes adressées à la source de données seront traitées. Le serveur doit être le moyen préféré si rien d'autre n'est indiqué. 

### Mode d'accès au serveur (par défaut)
<a name="graphite-server-access-mode-default"></a>

 Toutes les demandes sont envoyées depuis le navigateur à Amazon Managed Grafana, qui les transmet à la source de données, contournant ainsi les éventuelles exigences de partage des ressources entre origines (CORS). Si vous sélectionnez ce mode d'accès, l'URL doit être accessible depuis Amazon Managed Grafana. 

### Mode d'accès au navigateur
<a name="graphite-browser-access-mode"></a>

 Amazon Managed Grafana ne prend pas en charge l'accès direct par navigateur à la source de données Graphite.

## Éditeur de requêtes Graphite
<a name="graphite-query-editor"></a>

 Grafana inclut un éditeur de requêtes spécifique à Graphite pour vous aider à créer vos requêtes. 

 Pour voir le texte brut de la requête envoyée à Graphite, choisissez l'icône **Activer le mode d'édition de texte** (crayon). 

### Choix des métriques à interroger
<a name="graphite-choose-metrics-to-query"></a>

 Choisissez **Sélectionner une métrique** pour naviguer dans l'espace métrique. Après avoir démarré, vous pouvez continuer à utiliser le pointeur ou les flèches du clavier. Vous pouvez sélectionner un caractère générique et continuer. 

### Fonctions
<a name="graphite-functions"></a>

 Pour ajouter une fonction, cliquez sur l'icône plus à côté de **Fonction**. Vous pouvez rechercher la fonction ou la sélectionner dans le menu. Une fois qu'une fonction est sélectionnée, elle est ajoutée et vous vous concentrez sur la zone de texte du premier paramètre. Pour modifier ou modifier un paramètre, sélectionnez-le et il se transformera en zone de texte. - Pour supprimer une fonction, choisissez le nom de la fonction suivi de l'icône X. 

 Certaines fonctions, telles que`aliasByNode`, prennent en charge un deuxième argument facultatif. Pour ajouter un argument, faites une pause sur le premier argument, puis choisissez le `+` symbole qui apparaît. Pour supprimer le deuxième paramètre facultatif, sélectionnez-le et laissez-le vide. L'éditeur va le supprimer.

### Trier les étiquettes
<a name="graphite-sort-labels"></a>

 Si vous souhaitez une commande cohérente, utilisez`sortByName`. Cela peut être gênant lorsque vous avez les mêmes étiquettes sur plusieurs graphiques et qu'elles sont toutes deux triées différemment et utilisent des couleurs différentes. Pour résoudre ce problème, utilisez`sortByName()`. 

### Requêtes imbriquées
<a name="graphite-nested-queries"></a>

 Vous pouvez référencer les requêtes par la *lettre* de ligne sur laquelle elles se trouvent (comme dans Microsoft Excel). Si vous ajoutez une deuxième requête à un graphique, vous pouvez référencer la première requête en saisissant \$1A. Cela constitue un moyen pratique de créer des requêtes composées. 

### Éviter de nombreuses requêtes en utilisant des caractères génériques
<a name="avoiding-many-queries-by-using-wildcards"></a>

 Il peut arriver que vous souhaitiez voir plusieurs séries chronologiques tracées sur le même graphique. Par exemple, vous souhaiterez peut-être voir comment le processeur est utilisé sur une machine. Vous pouvez initialement créer le graphique en ajoutant une requête pour chaque série chronologique `cpu.percent.user.g``cpu.percent.system.g`, telle que,, etc. Cela entraîne *n* requêtes adressées à la source de données, ce qui est inefficace. 

 Pour être plus efficace, vous pouvez utiliser des caractères génériques dans votre recherche, renvoyant toutes les séries chronologiques en une seule requête. Par exemple, `cpu.percent.*.g`. 

### Modification du nom de la métrique dans les tableaux ou les graphiques
<a name="modify-the-metric-name-in-my-tables-or-charts"></a>

 Utilisez `alias` des fonctions pour modifier les noms des métriques sur les tableaux ou les graphiques Grafana ; par exemple, `aliasByNode()` ou. `aliasSub()` 

## Consolidation des points
<a name="graphite-point-consolidation"></a>

 Toutes les métriques Graphite sont consolidées afin que Graphite ne renvoie pas plus de points de données qu'il n'y a de pixels dans le graphique. Par défaut, cette consolidation est effectuée à l'aide de `avg` la fonction. Vous pouvez contrôler la manière dont Graphite consolide les métriques en ajoutant la fonction Graphite ConsolidateBy. 

**Note**  
 Cela signifie que les valeurs récapitulatives des légendes (max, min, total) ne peuvent pas toutes être correctes en même temps. Ils sont calculés côté client par Grafana. Et en fonction de votre fonction de consolidation, seules une ou deux peuvent être correctes à la fois. 

## Combinaison de séries chronologiques
<a name="graphite-combine-time-series"></a>

 Pour combiner des séries chronologiques, choisissez **Combiner** dans la liste des **fonctions**. 

## Exploration des données et balises
<a name="data-exploration-and-tags"></a>

 Dans Graphite, tout est une étiquette. 

 Lors de l'exploration des données, les balises précédemment sélectionnées sont utilisées pour filtrer le jeu de résultats restant. Pour sélectionner des données, vous utilisez la `seriesByTag` fonction qui utilise des expressions de balises (`=`,, `!=``=~`,`!=~`) pour filtrer les séries chronologiques.

 Le générateur de requêtes Grafana le fait automatiquement pour vous lorsque vous sélectionnez un tag. 

**Note**  
 **Conseil :** La recherche d'expressions régulières peut être lente sur les balises à cardinalité élevée. Essayez donc d'utiliser d'autres balises pour réduire d'abord la portée. Commencer par un nom ou un espace de noms particulier permet de réduire les résultats. 

## Variables du modèle
<a name="graphite-template-variables"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

 Pour créer une variable à l'aide des valeurs des balises, utilisez les fonctions `tags` Grafana et. `tag_values` 


|  Query  |  Description  | 
| --- | --- | 
|  tags()  |  Renvoie tous les tags.  | 
|  tags(server=\$1backend\$1\$1)  |  Renvoie uniquement les balises qui apparaissent en série correspondant à l'expression du filtre.  | 
|  tag\$1values(server)  |  Renvoie les valeurs de balise pour la balise spécifiée.  | 
|  tag\$1values(server, server=\$1backend\$1\$1)  |  Renvoie les valeurs de balise filtrées qui apparaissent pour la balise spécifiée dans les séries correspondant à ces expressions.  | 
|  tag\$1values(server, server=\$1backend\$1\$1, app=\$1\$1\$1apps:regex\$1)  |  Plusieurs expressions de filtre et expressions peuvent contenir d'autres variables.  | 

 Pour plus de détails, consultez la [documentation Graphite sur l'API de saisie semi-automatique pour les balises](https://graphite.readthedocs.io/en/latest/tags.html#auto-complete-support). 

### Variable de requête
<a name="graphite-query-variable"></a>

 La requête que vous spécifiez dans le champ de requête doit être un type de requête de recherche métrique. Par exemple, une requête telle que `prod.servers.*` remplira la variable avec toutes les valeurs possibles qui existent dans la position générique. 

 Vous pouvez également créer des variables imbriquées qui utilisent d'autres variables dans leur définition. `apps.$app.servers.*`Utilise par exemple la variable `$app` dans sa définition de requête. 

#### Utilisation `__searchFilter` pour filtrer les résultats des variables de requête
<a name="using-__searchfilter-to-filter-query-variable-results"></a>

 L'utilisation `__searchFilter` du champ de requête filtrera le résultat de la requête en fonction de ce que vous entrez dans la zone de sélection déroulante. Lorsque vous n'entrez rien, les valeurs par défaut `__searchFilter` sont `*` et « » lorsqu'elles sont utilisées dans le cadre d'une expression régulière. 

 L'exemple suivant montre comment l'utiliser dans `__searchFilter` le champ de requête pour activer la recherche `server` pendant que l'utilisateur saisit du texte dans la zone de sélection déroulante. 

 Query 

```
apps.$app.servers.$__searchFilter
```

 TagValues 

```
tag_values(server, server=~${__searchFilter:regex})
```

### Utilisation variable
<a name="variable-usage"></a>

 Vous pouvez utiliser une variable dans le chemin d'un nœud métrique ou en tant que paramètre d'une fonction. 

 Il existe deux syntaxes : 
+  `$<varname>`Exemple : apps.frontend. \$1server.requests.count 
+  `${varname}`Exemple : apps.frontend. \$1 \$1server\$1 .requests.count 

 Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire mais ne permet pas d'utiliser une variable au milieu d'un mot. Utilisez la seconde syntaxe dans des expressions telles que`my.server${serverNumber}.count`. 

### Utilisation de variables dans les requêtes de balises
<a name="variable-usage-in-tag-queries"></a>

 Les variables à valeurs multiples dans les requêtes de balises utilisent la syntaxe de formatage avancée introduite dans Grafana 5.0 pour les variables :. `{var:regex}` Les requêtes sans balises utiliseront le format global par défaut pour les variables à valeurs multiples. 

 L'exemple de code suivant montre une expression de balise au format regex utilisant l'opérateur Equal Tilde,. `=~` 

```
server=~${servers:regex}
```

 Pour de plus amples informations, veuillez consulter [Options avancées de format variable](templates-and-variables.md#advanced-variable-format-options). 

## Annotations
<a name="graphite-annotations"></a>

 Les annotations vous permettent de superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord/Vue des annotations. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 

 Graphite propose deux méthodes pour interroger les annotations :
+ Une requête métrique normale. Pour cela, vous utilisez la zone de texte de **requête Graphite**.
+ Une requête d'événements Graphite. Pour cela, vous utilisez la zone de `Graphite event tags` texte et spécifiez une balise ou un caractère générique (le laisser vide devrait également fonctionner).

# Connectez-vous à une source de données Google Cloud Monitoring
<a name="using-google-cloud-monitoring-in-grafana"></a>

**Note**  
 Dans les versions antérieures de Grafana, cette source de données s'appelait Google Stackdriver. 

 Ajoutez la source de données Google Cloud Monitoring pour pouvoir créer des tableaux de bord pour vos statistiques Google Cloud Monitoring. 

## Ajouter la source de données
<a name="google-adding-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Tableaux** de bord, vous devriez trouver le lien **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **Google Cloud Monitoring** dans la liste déroulante **Type**. 

1.  Téléchargez ou collez le fichier clé du compte de service. Voir plus loin dans ce document les étapes à suivre pour créer un fichier de clé de compte de service. 

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous faites référence à la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Service Account Key  |  Fichier clé de compte de service pour un projet GCP. Consultez les instructions plus loin dans ce document pour savoir comment le créer.  | 

## Authentification
<a name="google-authentication"></a>

 Il existe deux manières d'authentifier le plugin Google Cloud Monitoring
+ Importer un fichier Google JWT
+ Récupérez automatiquement les informations d'identification du serveur de métadonnées Google

Cette dernière option n'est disponible que lors de l'exécution de Grafana sur une machine virtuelle GCE. 

### Utilisation d'un fichier clé de compte de service Google
<a name="using-a-google-service-account-key-file"></a>

 Pour vous authentifier avec l'API Google Cloud Monitoring, vous devez créer un compte de service Google Cloud Platform (GCP) pour le projet dont vous souhaitez afficher les données. Une source de données Grafana s'intègre à un projet GCP. Pour visualiser les données de plusieurs projets GCP, vous devez créer une source de données par projet GCP. 

#### Activant APIs
<a name="google-enable-apis"></a>

 Les éléments suivants APIs doivent d'abord être activés : 
+  [API de surveillance](https://console.cloud.google.com/apis/library/monitoring.googleapis.com) 
+  [API du gestionnaire de ressources cloud](https://console.cloud.google.com/apis/library/cloudresourcemanager.googleapis.com) 

 Choisissez les liens répertoriés, puis cliquez sur le bouton **Activer**.

#### Création d'un compte de service GCP pour un projet
<a name="create-a-gcp-service-account-for-a-project"></a>

1.  Accédez à la [page APIs et informations d'identification des services](https://console.cloud.google.com/apis/credentials). 

1.  Choisissez l'option **Créer des informations d'identification** dropdown/button et choisissez l'option **clé de compte de service**. 

    \$1\$1< docs-imagebox img= »/img/docs/v71/cloudmonitoring\$1create\$1service\$1account\$1button.png "class="docs-image—no-shadow » caption="Bouton de création d'un compte de service » >\$1\$1 

1.  Sur la page **Créer une clé de compte de service**, choisissez le type de clé`JSON`. Ensuite, dans la liste déroulante **Compte de service**, choisissez l'option **Nouveau compte de service**. 

    \$1\$1< docs-imagebox img= »/img/docs/v71/cloudmonitoring\$1create\$1service\$1account\$1key.png "class="docs-image—no-shadow » caption="Créer une clé de compte de service » >\$1\$1 

1.  De nouveaux champs apparaîtront. Entrez le nom du compte de service dans le champ **Nom du compte de service**, puis choisissez le rôle **Monitoring Viewer** **dans la liste déroulante Rôle**. 

    \$1\$1< docs-imagebox img= »/img/docs/v71/cloudmonitoring\$1service\$1account\$1choose\$1role.png "class="docs-image—no-shadow » caption="Choisissez un rôle » >\$1\$1 

1.  Choisissez le bouton **Créer**. Un fichier clé JSON sera créé et téléchargé sur votre ordinateur. Stockez ce fichier dans un endroit sécurisé car il permet d'accéder à vos données de surveillance Google Cloud. 

1.  Téléchargez-le sur Grafana sur la page de **configuration de la source de** données. Vous pouvez soit télécharger le fichier, soit coller le contenu du fichier. 

    \$1\$1< docs-imagebox img= »/img/docs/v71/cloudmonitoring\$1grafana\$1upload\$1key.png "class="docs-image—no-shadow » caption="Importer le fichier de clé de service vers Grafana » >\$1\$1 

1.  Le contenu du fichier sera crypté et enregistré dans la base de données Grafana. N'oubliez pas de sauvegarder après avoir téléchargé le fichier \$1 

    \$1\$1< docs-imagebox img= »/img/docs/v71/cloudmonitoring\$1grafana\$1key\$1uploaded.png "class="docs-image—no-shadow » caption="Le fichier clé de service est chargé sur Grafana » >\$1\$1 

## Utilisation de l’éditeur de requêtes
<a name="google-using-the-query-editor"></a>

 L'éditeur de requêtes Google Cloud Monitoring vous permet de créer deux types de requêtes : **Metric** et **Service Level Objective (SLO)**. Les deux types renvoient des données de séries chronologiques. 

### Requêtes métriques
<a name="google-metric-queries"></a>

 L'éditeur de requêtes métriques vous permet de sélectionner des métriques, group/aggregate par étiquette et par heure, et d'utiliser des filtres pour spécifier les séries temporelles que vous souhaitez voir apparaître dans les résultats. 

 Pour créer une requête métrique, procédez comme suit : 

1.  Choisissez l'option **Metrics** dans la liste déroulante des **types de requête**. 

1.  Choisissez un **projet** dans la liste déroulante des projets. 

1.  Choisissez un service Google Cloud Platform dans la liste déroulante des **services**. 

1.  Choisissez une métrique dans la liste déroulante des **métriques**. 

1.  Pour ajouter ou supprimer des filtres ou grouper par clauses, utilisez les icônes plus et moins dans le filtre et regroupez par sections. Cette étape est facultative. 

 Les métriques de Google Cloud Monitoring peuvent être de différents types (GAUGE, DELTA, CUMULATIVE) et ces types prennent en charge différentes options d'agrégation (réducteurs et aligneurs). L'éditeur de requêtes Grafana affiche la liste des méthodes d'agrégation disponibles pour une métrique sélectionnée et définit un réducteur et un aligneur par défaut lorsque vous sélectionnez la métrique. Les unités de l'axe Y sont également sélectionnées automatiquement par l'éditeur de requêtes. 

#### Filtres
<a name="google-filter"></a>

 Pour ajouter un filtre, cliquez sur l'icône plus, choisissez un champ à filtrer et entrez une valeur de filtre. Par exemple, saisissez `instance_name = grafana-1`. Vous pouvez supprimer le filtre en choisissant le nom du filtre, puis en sélectionnant`--remove filter--`. 

##### Caractères génériques simples
<a name="google-simple-wildcards"></a>

 Lorsque l'opérateur est défini sur ou, `=` `!=` il est possible d'ajouter des caractères génériques dans le champ de valeur du filtre. Par exemple, `us-*` capture toutes les valeurs commençant par « us- » et `*central-a` capture toutes les valeurs se terminant par « central-a ». `*-central-*`capture toutes les valeurs dont la sous-chaîne est de. `central-` Les caractères génériques simples sont moins coûteux que les expressions régulières.

##### Expressions régulières
<a name="google-regular-expressions"></a>

 Lorsque l'opérateur est défini sur ou, `=~` `!=~` il est possible d'ajouter des expressions régulières au champ de valeur du filtre. Par exemple, `us-central[1-3]-[af]` correspond à toutes les valeurs commençant par « us-central », suivi d'un nombre compris entre 1 et 3, d'un tiret puis d'un « a » ou d'un « f ». Les barres obliques de début et de fin ne sont pas nécessaires pour créer des expressions régulières.

#### Agrégation
<a name="google-aggregation"></a>

 Le champ d'agrégation vous permet de combiner des séries chronologiques en fonction de statistiques communes. Pour plus d'informations sur l'agrégation, reportez-vous aux [options d'agrégation](https://cloud.google.com/monitoring/charts/metrics-selector#aggregation-options). 

 Le `Aligner` champ vous permet d'aligner plusieurs séries chronologiques après le même groupe par intervalle de temps. Pour plus d'informations sur l'aligneur, reportez-vous au [sélecteur de mesures d'alignement](https://cloud.google.com/monitoring/charts/metrics-selector#alignment). 

##### Période d'alignement et regroupement par heure
<a name="alignment-periodgroup-by-time"></a>

 Ils `Alignment Period` regroupent une métrique par heure si une agrégation est choisie. Par défaut, vous utilisez les groupements par défaut de GCP Google Cloud Monitoring (qui vous permettent de comparer les graphiques de Grafana aux graphiques de l'interface utilisateur de Google Cloud Monitoring). L'option est appelée `cloud monitoring auto` et les valeurs par défaut sont les suivantes : 
+  1 m pour les plages de temps inférieures à 23 heures 
+  5 m pour les plages de temps >= 23 heures et < 6 jours 
+  1 h pour les plages de temps supérieures ou égales à 6 jours 

 L'autre option automatique est`grafana auto`. Cela définira automatiquement le groupe par heure en fonction de la plage de temps choisie et de la largeur du panneau graphique. Pour de plus amples informations, veuillez consulter [Ajouter une variable d'intervalle](variables-types.md#add-an-interval-variable). 

 Il est également possible de choisir des intervalles de temps fixes à regrouper, tels que `1h` ou`1d`. 

#### Grouper par
<a name="google-group-by"></a>

 Regroupez par ressource ou par étiquette métrique pour réduire le nombre de séries chronologiques et agréger les résultats par groupe par. Par exemple, regroupez-vous par instance\$1name pour obtenir une métrique agrégée pour une instance de calcul. 

##### Étiquettes de métadonnées
<a name="google-metadata-labels"></a>

 Les étiquettes de métadonnées des ressources contiennent des informations permettant d'identifier de manière unique une ressource dans Google Cloud. Les étiquettes de métadonnées ne sont renvoyées dans la réponse à la série chronologique que si elles font partie du segment **Grouper par** de la demande de série chronologique. Aucune API ne permet de récupérer les étiquettes de métadonnées. Il n'est donc pas possible de renseigner le groupe par liste déroulante avec les étiquettes de métadonnées disponibles pour le service et la métrique sélectionnés. Cependant, la liste déroulante **Grouper par** champ contient une liste prédéfinie d'étiquettes de système courantes. 

 Les libellés utilisateur ne peuvent pas être prédéfinis, mais il est possible de les saisir manuellement dans le champ **Grouper par**. Si une étiquette de métadonnées, une étiquette utilisateur ou une étiquette système est incluse dans le segment **Grouper par**, vous pouvez créer des filtres basés sur celle-ci et étendre sa valeur dans le champ **Alias**. 

#### Modèles d'alias
<a name="google-alias-patterns"></a>

 Le champ Alias By vous permet de contrôler le format des clés de légende. Par défaut, le nom et les libellés de la métrique sont affichés. Cela peut être long et difficile à lire. En utilisant les modèles suivants dans le champ d'alias, vous pouvez mettre en forme la clé de légende comme vous le souhaitez. 

#### Modèles de type métrique
<a name="metric-type-patterns"></a>


|  Modèle d'alias  |  Description  |  Exemple de résultat  | 
| --- | --- | --- | 
|  \$1\$1metric.type\$1\$1  |  Renvoie le type de métrique complet.  |  compute.googleapis.com/instance/cpu/utilization  | 
|  \$1\$1metric.name\$1\$1  |  Renvoie la partie du nom de la métrique.  |  instance/cpu/utilization  | 
|  \$1\$1metric.service\$1\$1  |  Renvoie la pièce de rechange.  |  compute  | 

#### Modèles d'étiquettes
<a name="google-label-patterns"></a>

 Dans la liste déroulante Grouper par, vous pouvez voir la liste des indicateurs et des libellés de ressources associés à un indicateur. Ils peuvent être inclus dans la clé de légende à l'aide de modèles d'alias. 


|  Format du modèle d'alias  |  Description  |  Exemple de modèle d'alias  |  Exemple de résultat  | 
| --- | --- | --- | --- | 
|  \$1\$1metric.label.xxx\$1\$1  |  Renvoie la valeur de l'étiquette métrique. |  \$1\$1metric.label.instance\$1name\$1\$1  |  grafana-1-prod  | 
|  \$1\$1resource.label.xxx\$1\$1  |  Renvoie la valeur de l'étiquette de la ressource.  |  \$1\$1resource.label.zone\$1\$1  |  us-east1-b  | 
|  \$1\$1metadata.system\$1labels.xxx\$1\$1  |  Renvoie la valeur de l'étiquette du système de métadonnées.  |  \$1\$1metadata.system\$1labels.name\$1\$1  |  grafana  | 
|  \$1\$1metadata.user\$1labels.xxx\$1\$1  |  Renvoie la valeur de l'étiquette utilisateur des métadonnées.  |  \$1\$1metadata.user\$1labels.tag\$1\$1  |  production  | 

 Exemple d'alias par : `{{metric.type}} - {{metric.label.instance_name}}` 

 Exemple de résultat : `compute.googleapis.com/instance/cpu/usage_time - server1-prod` 

 Il est également possible de résoudre le nom du type de ressource surveillée. 


|  Format du modèle d'alias  |  Description  |  Exemple de résultat  | 
| --- | --- | --- | 
|  \$1\$1resource.type\$1\$1  |  Renvoie le nom du type de ressource surveillé.  |  gce\$1instance  | 

 Exemple d'alias par : `{{resource.type}} - {{metric.type}}` 

 Exemple de résultat : `gce_instance - compute.googleapis.com/instance/cpu/usage_time` 

### Requêtes SLO
<a name="slo-service-level-objective-queries"></a>

**Note**  
 Les requêtes SLO ne sont disponibles que dans Grafana v7.0 et versions ultérieures 

Le générateur de requêtes SLO de la source de données Google Cloud Monitoring vous permet d'afficher les données SLO sous forme de séries chronologiques. Pour comprendre les concepts de base de la surveillance des services, consultez la [documentation officielle](https://cloud.google.com/monitoring/service-monitoring) de Google Cloud Monitoring.

#### Création d'une requête SLO
<a name="how-to-create-an-slo-query"></a>

 Pour créer une requête SLO, procédez comme suit : 

1.  Choisissez l'option **Objectifs de niveau de service (SLO)** dans la liste déroulante des **types de requête**. 

1.  Choisissez un **projet** dans la liste déroulante des projets. 

1.  Choisissez un [service SLO](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/services) dans la liste déroulante des **services**. 

1.  Choisissez un [SLO](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/services.serviceLevelObjectives) dans la liste déroulante **SLO**. 

1.  Choisissez un [sélecteur de séries chronologiques](https://cloud.google.com/monitoring/service-monitoring/timeseries-selectors#ts-selector-list) dans la liste déroulante **Sélecteur**. 

 Les noms conviviaux des sélecteurs de séries chronologiques sont indiqués dans Grafana. Le tableau suivant montre le mappage entre le nom convivial et le nom du système utilisé dans la documentation de surveillance des services.


|  Valeur de la liste déroulante du sélecteur  |  Sélecteur de série chronologique correspondant utilisé  | 
| --- | --- | 
|  Valeur SLI  |  select\$1slo\$1health  | 
|  Conformité SLO  |  select\$1slo\$1compliance  | 
|  Budget d'erreur SLO restant  |  select\$1slo\$1budget\$1fraction  | 

#### Modèles d'alias pour les requêtes SLO
<a name="alias-patterns-for-slo-queries"></a>

 Vous pouvez utiliser le champ Alias By pour contrôler le format des clés de légende pour les requêtes SLO. 


|  Modèle d'alias  |  Description  |  Exemple de résultat  | 
| --- | --- | --- | 
|  \$1\$1project\$1\$1  |  Renvoie le nom du projet GCP.  |  myProject  | 
|  \$1\$1service\$1\$1  |  Renvoie le nom du service.  |  myService  | 
|  \$1\$1slo\$1\$1  |  Renvoie le SLO.  |  latency-slo  | 
|  \$1\$1selector\$1\$1  |  Renvoie le sélecteur.  |  select\$1slo\$1health  | 

#### Période d'alignement et regroupement par heure pour les requêtes SLO
<a name="alignment-periodgroup-by-time-for-slo-queries"></a>

 Les requêtes SLO utilisent la même fonctionnalité de période d'alignement que les requêtes métriques. Pour de plus amples informations, veuillez consulter [Requêtes métriques](#google-metric-queries). 

## Création de modèles
<a name="google-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

### Variable de requête
<a name="google-query-variable"></a>

 La variable de type *Query* vous permet d'interroger Google Cloud Monitoring pour différents types de données. Le plug-in de source de données Google Cloud Monitoring fournit les éléments suivants`Query Types`. 


|  Nom  |  Description  | 
| --- | --- | 
|  Metric Types  |  Renvoie une liste des noms de types de métriques disponibles pour le service spécifié.  | 
|  Labels Keys  |  Renvoie une liste de clés pour metric label et resource label dans la métrique spécifiée.  | 
|  Labels Values  |  Renvoie une liste de valeurs pour l'étiquette dans la métrique spécifiée.  | 
|  Resource Types  |  Renvoie une liste des types de ressources pour la métrique spécifiée.  | 
|  Aggregations  |  Renvoie une liste d'agrégations (réducteurs de séries croisées) pour la métrique spécifiée.  | 
|  Aligners  |  Renvoie une liste d'aligneurs (aligneurs par série) pour la métrique spécifiée.  | 
|  Alignment periods  |  Renvoie une liste de toutes les périodes d'alignement disponibles dans l'éditeur de requêtes Google Cloud Monitoring de Grafana.  | 
|  Selectors  |  Renvoie une liste de sélecteurs qui peuvent être utilisés dans les requêtes SLO (Service Level Objectives).  | 
|  SLO Services  |  Renvoie une liste des services de surveillance des services qui peuvent être utilisés dans les requêtes SLO.  | 
|  Service Level Objectives (SLO)  |  Renvoie une liste des SLO pour le service SLO spécifié.  | 

### Utilisation de variables dans les requêtes
<a name="google-using-variables-in-queries"></a>

 Il existe deux syntaxes : 
+  `$<varname>`Exemple : `metric.label.$metric_label` 
+  `[[varname]]`Exemple : `metric.label.[[metric_label]]` 

 Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire mais ne permet pas d'utiliser une variable au milieu d'un mot. Lorsque les options *Multi-valeurs* ou *Inclure toutes les valeurs* sont activées, Grafana convertit les étiquettes du texte brut en une chaîne compatible avec les regex, ce qui signifie que vous devez utiliser au lieu de. `=~` `=` 

## Annotations
<a name="google-annotations"></a>

 Vous pouvez utiliser des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord/Vue des annotations. Le rendu des annotations est coûteux, il est donc important de limiter le nombre de lignes renvoyées. L'affichage des annotations et des événements de Google Cloud Monitoring n'est pas encore pris en charge, mais cela fonctionne bien avec [les métriques personnalisées](https://cloud.google.com/monitoring/custom-metrics/) dans Google Cloud Monitoring.

Pour plus d'informations sur les annotations, consultez[Annotations](dashboard-annotations.md). 

 Avec l'éditeur de requêtes pour les annotations, vous pouvez sélectionner une métrique et des filtres. Les champs **Titre** et **Texte** prennent en charge la création de modèles et peuvent utiliser les données renvoyées par la requête. Par exemple, le champ Titre peut contenir le texte suivant : 

 `{{metric.type}} has value: {{metric.value}}` 

 Exemple de résultat : `monitoring.googleapis.com/uptime_check/http_status has this value: 502` 

### Modèles pour l'éditeur de requêtes d'annotation
<a name="patterns-for-the-annotation-query-editor"></a>


|  Format du modèle d'alias  |  Description  |  Exemple de modèle d'alias  |  Exemple de résultat  | 
| --- | --- | --- | --- | 
|  \$1\$1metric.value\$1\$1  |  Valeur de la métrique/du point.  |  \$1\$1metric.value\$1\$1  |  555  | 
|  \$1\$1metric.type\$1\$1  |  Renvoie le type de métrique complet.  |  \$1\$1metric.type\$1\$1  |  compute.googleapis.com/instance/cpu/utilization  | 
|  \$1\$1metric.name\$1\$1  |  Renvoie la partie du nom de la métrique. |  \$1\$1metric.name\$1\$1  |  instance/cpu/utilization  | 
|  \$1\$1metric.service\$1\$1  |  Renvoie la pièce de rechange.  |  \$1\$1metric.service\$1\$1  |  compute  | 
|  \$1\$1metric.label.xxx\$1\$1  |  Renvoie la valeur de l'étiquette métrique.  |  \$1\$1metric.label.instance\$1name\$1\$1  |  grafana-1-prod  | 
|  \$1\$1resource.label.xxx\$1\$1  |  Renvoie la valeur de l'étiquette de la ressource.  |  \$1\$1resource.label.zone\$1\$1  |  us-east1-b  | 

## Liens profonds entre les panneaux Grafana et l'explorateur de métriques dans la console Google Cloud
<a name="deep-linking-from-grafana-panels-to-the-metrics-explorer-in-google-cloud-console"></a>

**Note**  
 Cette fonctionnalité n'est disponible que pour les requêtes métriques. 

 Choisissez une série chronologique dans le panneau pour afficher un menu contextuel contenant un lien vers Afficher dans l'explorateur de mesures de la console Google Cloud. Le choix de ce lien ouvre l'explorateur de métriques dans la console Google Cloud et exécute la requête depuis le panneau Grafana qui s'y trouve. Le lien dirige d'abord l'utilisateur vers le sélecteur de compte Google. Après avoir sélectionné un compte avec succès, l'utilisateur est redirigé vers l'explorateur de métriques. Le lien fourni est valide pour n'importe quel compte, mais il affiche la requête uniquement si votre compte a accès au projet GCP spécifié dans la requête. 

# Connect à une source de données InfluxDB
<a name="using-influxdb-in-AMG"></a>

 Grafana est livré avec un plugin de source de données riche en fonctionnalités pour InfluxDB. Le plugin inclut un éditeur de requêtes personnalisé et prend en charge les annotations et les modèles de requêtes. 

## Ajouter la source de données
<a name="influxdb-add-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Tableaux de bord**, vous devriez trouver un lien intitulé **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **InfluxDB** dans la liste déroulante **Type**. 

1.  Sélectionnez **InfluxQL** ou **Flux** dans la liste du **langage de requête.** 

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 

# Connectez-vous à une source de données Jaeger
<a name="jaeger-data-source"></a>

 La source de données Jaeger fournit un traçage end-to-end distribué open source. 

## Ajouter la source de données
<a name="jaeger-adding-the-data-source"></a>

 Pour accéder aux paramètres de Jaeger, cliquez sur l'icône **Configuration** (engrenage), puis sur **Sources de données**, puis sur **Jaeger**. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux, les requêtes et Explore.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  URL  |  L'URL de l'instance Jaeger ; par exemple,http://localhost:16686.  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.  | 
|  Basic Auth  |  Activez l'authentification de base auprès de la source de données Jaeger.  | 
|  User  |  Nom d'utilisateur pour l'authentification de base.  | 
|  Password  |  Mot de passe pour l'authentification de base.  | 

## Traces de requêtes
<a name="jaeger-query-traces"></a>

 Vous pouvez rechercher et afficher les traces de Jaeger via Explore. Pour de plus amples informations, veuillez consulter [Explorez](explore.md). 

 L'éditeur de requêtes Jaeger vous permet d'effectuer une requête directement par identifiant de trace ou de sélectionner une trace dans le sélecteur de trace. Pour effectuer une requête par ID de trace, insérez l'ID dans la saisie de texte. 

 Utilisez le sélecteur de trace pour sélectionner une trace particulière parmi toutes les traces enregistrées dans la plage de temps que vous avez sélectionnée dans Explore. Le sélecteur de trace comporte trois niveaux d'imbrication : 1. Le service qui vous intéresse 1. Une opération particulière fait partie du service sélectionné. 1. Trace spécifique dans laquelle l'opération sélectionnée s'est produite, représentée par le nom de l'opération racine et la durée de la trace. 

## Lien vers l'ID de trace à partir des journaux
<a name="linking-trace-id-from-logs"></a>

 Vous pouvez créer un lien vers Jaeger Trace à partir des journaux de Loki en configurant un champ dérivé avec un lien interne. Pour de plus amples informations, veuillez consulter [Champs dérivés](using-loki-in-AMG.md#loki-derived-fields). 

# Se connecter à une source de données Loki
<a name="using-loki-in-AMG"></a>

 La source de données Loki donne accès à Loki, le système d'agrégation de journaux de Grafana. 

## Ajouter la source de données
<a name="loki-adding-the-data-source"></a>

1.  Ouvrez l'espace de travail Grafana et assurez-vous que vous êtes connecté. 

1.  Dans le menu latéral, sous le lien **Configuration**, vous devriez trouver un lien **Sources de données**. 

1.  cliquez sur le bouton **Ajouter une source de données** en haut. 

1.  Sélectionnez **Loki** dans la liste des sources de données. 

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux, les requêtes et Explore.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  URL  | L'URL de l'instance Loki ; par exemple,http://localhost:3100. Il peut s'agir de l'URL d'un EC2 hôte Amazon, d'un Application Load Balancer situé devant un cluster Amazon EKS, ou de toute autre URL d'une instance Loki. | 
|  Maximum lines  |  Limite supérieure du nombre de lignes de journal renvoyées par Loki (la valeur par défaut est 1000). Diminuez si votre navigateur est lent lors de l'affichage des journaux dans Explore.  | 

### Champs dérivés
<a name="loki-derived-fields"></a>

 Vous pouvez utiliser la configuration *des champs dérivés* pour effectuer les opérations suivantes : 
+  Ajoutez des champs analysés à partir du message du journal. 
+  Ajoutez un lien qui utilise la valeur du champ. 

 Vous pouvez utiliser cette fonctionnalité pour créer un lien vers votre backend de suivi directement depuis vos journaux, ou un lien vers une page de profil utilisateur si un userID est présent dans la ligne de journal. Ces liens apparaissent dans les informations du journal. Pour de plus amples informations, veuillez consulter [Libellés et champs détectés](explore.md#labels-and-detected-fields). 

Chaque champ dérivé comprend les éléments suivants : 
+  **Nom** — Indiqué dans les détails du journal sous forme d'étiquette. 
+  **Regex** — Un modèle Regex qui s'exécute sur le message du journal et en capture une partie sous forme de valeur du nouveau champ. Ne peut contenir qu'un seul groupe de capture. 
+  **URL/requête** — Si le lien est externe, entrez l'URL complète du lien. S'il s'agit d'un lien interne, cette entrée sert de requête pour la source de données cible. Dans les deux cas, vous pouvez interpoler la valeur du champ à l'aide d'une `${__value.raw }` macro. 
+  **Lien interne** : sélectionnez s'il s'agit d'un lien interne ou externe. En cas de lien interne, un sélecteur de source de données permet de sélectionner la source de données cible. Seules les sources de données de suivi sont prises en charge. 

 Vous pouvez utiliser une section de débogage pour voir ce que vos champs extraient et comment l'URL est interpolée. Choisissez **Afficher un exemple de message de journal** pour afficher la zone de texte dans laquelle vous pouvez saisir un message de journal. 

 Le nouveau champ avec le lien affiché dans les détails du journal. 

## Interrogation des journaux
<a name="loki-querying-logs"></a>

 L'interrogation et l'affichage des données des journaux depuis Loki sont disponibles via Explore et via le panneau des journaux dans les visualisations. Sélectionnez la source de données Loki, puis entrez une requête LogQL pour afficher vos journaux. Pour plus d'informations sur LogQL, consultez [LogQL](https://grafana.com/docs/loki/latest/logql/). 

### Requêtes de journal
<a name="loki-log-queries"></a>

 Une requête de journal se compose de deux parties : un **sélecteur de flux de journal** et une **expression de recherche**. Pour des raisons de performances, vous devez commencer par choisir une étiquette de journal pour un flux de journal. 

 L'explorateur de journaux (bouton **Étiquettes de journal**) situé à côté du champ de requête affiche une liste des étiquettes des flux de journaux disponibles. Une autre méthode pour écrire une requête consiste à utiliser la complétion automatique du champ de requête. Vous commencez par taper une attelle frisée à gauche `{` et le menu de saisie automatique vous proposera une liste d'étiquettes. Appuyez sur la touche **Entrée** pour exécuter la requête. 

 Une fois le résultat renvoyé, le panneau du journal affiche une liste des lignes du journal et un graphique à barres où l'axe X indique l'heure et l'axe Y indique la fréquence/le nombre. 

### Sélecteur de flux de log
<a name="log-stream-selector"></a>

 Pour la partie étiquette de l'expression de requête, placez-la entre accolades, `{}` puis utilisez la syntaxe des valeurs clés pour sélectionner les étiquettes. Plusieurs expressions d'étiquette sont séparées par une virgule : 

 `{app="mysql",name="mysql-backup"}` 

 Les opérateurs de correspondance d'étiquettes suivants sont actuellement pris en charge : 
+  `=`exactement égal. 
+  `!=`pas égal. 
+  `=~`regex-match. 
+  `!~`ne correspond pas aux regex-match. 

 Exemples : 
+  `{name=~"mysql.+"}` 
+  `{name!~"mysql.+"}` 

 Vous pouvez également ajouter un sélecteur d'étiquette dans la section du tableau. Choisissez **Filtrer** à côté d'une étiquette pour ajouter l'étiquette à l'expression de requête. Cela fonctionne même pour plusieurs requêtes et ajoutera le sélecteur d'étiquette à chaque requête. 

### Expressions de recherche
<a name="loki-search-expression"></a>

 Après avoir écrit le Log Stream Selector, vous pouvez filtrer davantage les résultats en écrivant une expression de recherche. L'expression de recherche peut être simplement du texte ou une expression régulière. 

 Exemples de requêtes : 
+  `{job="mysql"} |= "error"` 
+  `{name="kafka"} |~ "tsdb-ops.*io:2003"` 
+  `{instance=~"kafka-[23]",name="kafka"} != "kafka.server:type=ReplicaManager"` 

 Les opérateurs de filtre peuvent être enchaînés et filtreront l'expression de manière séquentielle. Les lignes de log qui en résultent satisferont tous les filtres. 

 Exemple 

 `{job="mysql"} |= "error" != "timeout"` 

 Les types de filtres suivants sont actuellement pris en charge : 
+  `|=`la ligne contient une chaîne. 
+  `!=`la ligne ne contient pas de chaîne. 
+  `|~`la ligne correspond à une expression régulière. 
+  `!~`la ligne ne correspond pas à l'expression régulière. 

**Note**  
 Pour plus d'informations sur LogQL, le langage de requête de Loki, consultez [Loki](https://grafana.com/docs/loki/latest/logql/) LogQL. 

## Contexte du journal
<a name="loki-log-context"></a>

 Lorsque vous utilisez une expression de recherche telle que décrite ci-dessus, vous pouvez désormais récupérer le contexte des résultats filtrés. En cliquant sur le `Show Context` lien sur les lignes filtrées, vous pourrez consulter les messages de journal qui sont arrivés avant et après le message de journal qui vous intéresse. 

## Création de modèles
<a name="loki-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur la création de modèles et les variables de modèle, consultez[Modèles et variables](templates-and-variables.md). 

## Annotations
<a name="loki-annotations"></a>

 Vous pouvez utiliser n'importe quelle requête Loki non métrique comme source d'annotations. Le contenu du journal sera utilisé comme texte d'annotation et les étiquettes de votre flux de journal comme balises. Il n'est donc pas nécessaire de procéder à un mappage supplémentaire. 

# Connectez-vous à une source de données Microsoft SQL Server
<a name="using-microsoft-sql-server-in-AMG"></a>

 Utilisez la source de données Microsoft SQL Server (MSSQL) pour interroger et visualiser les données de tout Microsoft SQL Server 2005 ou version ultérieure, y compris Microsoft Azure SQL Database. 

**Important**  
Grafana version 8.0 modifie la structure de données sous-jacente des trames de données pour Microsoft SQL Server, Postgres et MySQL. Par conséquent, le résultat d'une requête de série chronologique est renvoyé dans un format large. Pour plus d'informations, consultez la section [Format large](https://grafana.com/developers/plugin-tools/introduction/data-frames#wide-format) dans la documentation des trames de données Grafana.  
Pour que vos visualisations fonctionnent comme elles le faisaient auparavant, vous devrez peut-être effectuer des migrations manuelles. Une solution est documentée sur Github à l'adresse suivante [Postgres/MySQL/MSSQL: Breaking change in v8.0 relatif aux requêtes de séries chronologiques et à l'ordre des colonnes de données](https://github.com/grafana/grafana/issues/35534).

## Ajouter la source de données
<a name="mssql-adding-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Configuration**, vous devriez trouver un lien **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **Microsoft SQL Server** dans la liste déroulante **Type**. 

### Options de source de données
<a name="mssql-data-source-options"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Host  |  IP address/hostname et port optionnel de votre instance MSSQL. Si le port est omis, la valeur par défaut 1433 sera utilisée.  | 
|  Database  |  Nom de votre base de données MSSQL.  | 
|  User  |  Login/nom d'utilisateur de l'utilisateur de la base de données.  | 
|  Password  |  Mot de passe de l'utilisateur de la base de données | 
|  Encrypt  |  Cette option détermine si et dans quelle mesure une TCP/IP connexion SSL sécurisée sera négociée avec le serveur, par défaut false (Grafana v5.4\$1).  | 
|  Max open  |  Nombre maximum de connexions ouvertes à la base de données, par défaut unlimited (Grafana v5.4\$1).  | 
|  Max idle  |  Nombre maximal de connexions dans le pool de connexions inactives, par défaut 2 (Grafana v5.4\$1).  | 
|  Max lifetime  |  Durée maximale en secondes pendant laquelle une connexion peut être réutilisée, par défaut 14400 /4 heures.  | 

### Intervalle de temps minimum
<a name="mssql-min-time-interval"></a>

 Une limite inférieure pour les `$_interval` `$_interval_ms` variables. Il est recommandé de régler la fréquence d'écriture, par exemple `1m` si vos données sont écrites toutes les minutes. Cette option peut également se trouver overridden/configured dans un panneau de tableau de bord sous les options de source de données. Cette valeur **doit** être formatée sous la forme d'un nombre suivi d'un identifiant horaire valide, par exemple `1m` (1 minute) ou `30s` (30 secondes). Les identifiants horaires suivants sont pris en charge.


|  Identifiant  |  Description  | 
| --- | --- | 
|  y  |  Année  | 
|  M  |  Mois  | 
|  w  |  semaine  | 
|  d  |  jour  | 
|  h  |  Heure  | 
|  m  |  Minute  | 
|  s  |  Seconde  | 
|  ms  |  Milliseconde  | 

### Autorisations utilisateur de base de données
<a name="mssql-database-user-permissions-important"></a>

**Important**  
 L'utilisateur de base de données que vous spécifiez lorsque vous ajoutez la source de données ne doit disposer des autorisations SELECT que sur la base de données et les tables spécifiées que vous souhaitez interroger. Grafana ne confirme pas que la requête est sûre. La requête peut inclure n'importe quelle instruction SQL. Par exemple, des instructions telles que `DELETE FROM user;` et `DROP TABLE user;` seraient exécutées. Pour vous protéger contre cela, nous vous recommandons vivement de créer un utilisateur MSSQL spécifique avec des autorisations restreintes. 

 L'exemple de code suivant montre la création d'un utilisateur MSSQL spécifique avec des autorisations restreintes. 

```
 CREATE USER grafanareader WITH PASSWORD 'password'
 GRANT SELECT ON dbo.YourTable3 TO grafanareader
```

 Assurez-vous que l'utilisateur n'obtient aucune autorisation indésirable de la part du rôle public. 

### Problèmes connus
<a name="mssql-known-issues"></a>

 Si vous utilisez une ancienne version de Microsoft SQL Server, telle que 2008 et 2008R2, vous devrez peut-être désactiver le chiffrement pour pouvoir vous connecter. Dans la mesure du possible, nous vous recommandons d'utiliser le dernier service pack disponible pour une compatibilité optimale. 

## Éditeur de requêtes
<a name="mssql-query-editor"></a>

 Vous trouverez l'éditeur de requêtes MSSQL dans l'onglet métriques du mode d'édition du graphique, de Singlestat ou du tableau de bord. Vous passez en mode édition en choisissant le titre du panneau, puis en choisissant Modifier. L'éditeur permet de définir une requête SQL pour sélectionner les données à visualiser. 

1.  Sélectionnez *Format comme* `Time series` (pour une utilisation dans les panneaux Graph ou Singlestat, entre autres) ou `Table` (pour une utilisation dans le panneau Table, entre autres). 

1.  Il s'agit de l'éditeur dans lequel vous écrivez vos requêtes SQL. 

1.  Afficher la section d'aide pour MSSQL sous l'éditeur de requêtes. 

1.  Afficher la requête SQL qui a été exécutée. Sera disponible en premier une fois qu'une requête aura été exécutée avec succès. 

1.  Ajoutez une requête supplémentaire dans laquelle un éditeur de requêtes supplémentaire sera affiché. 

## Macros
<a name="mssql-macros"></a>

 Pour simplifier la syntaxe et autoriser les parties dynamiques, telles que les filtres de plage de dates, la requête peut contenir des macros. 


|  Exemple de macro  |  Description  | 
| --- | --- | 
|  \$1\$1\$1time(dateColumn)  |  Sera remplacée par une expression pour renommer la colonne en fonction de l'heure. Par exemple, DateColumn comme heure. | 
|  \$1\$1\$1timeEpoch(dateColumn)  |  Sera remplacé par une expression pour convertir un type de colonne DATETIME en horodatage Unix et le renommer en heure. Par exemple, DATEDIFF (second, « 1970-01-01 », DateColumn) AS time.  | 
|  \$1\$1\$1timeFilter(dateColumn)  |  Sera remplacé par un filtre de plage de temps utilisant le nom de colonne spécifié. Par exemple, DateColumn BETWEEN « 2017-04-21T 05:01:17 Z » ET « 2017-04-21T 05:06:17 Z ».  | 
|  \$1\$1\$1timeFrom()  |  Sera remplacé par le début de la sélection d'heure actuellement active. Par exemple, « 2017-04-21T 05:01:17 Z ».  | 
|  \$1\$1\$1timeTo()  |  Sera remplacé à la fin de la sélection d'heure actuellement active. Par exemple, « 2017-04-21T 05:06:17 Z ».  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m'[, fillvalue])  |  Sera remplacée par une expression utilisable dans la clause GROUP BY. Fournir une valeur FillValue NULL ou une valeur flottante remplira automatiquement les séries vides dans la plage de temps avec cette valeur. Par exemple, CAST (ROUND (DATEDIFF (second, « 1970-01-01", time\$1column) /300.0, 0) en tant que bigint) \$1300.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', 0)  |  Identique au précédent mais avec un paramètre de remplissage, les points manquants dans cette série seront ajoutés par grafana et 0 sera utilisé comme valeur.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', NULL)  |  Comme ci-dessus, mais NULL sera utilisé comme valeur pour les points manquants.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', previous)  |  Comme ci-dessus, mais la valeur précédente de cette série sera utilisée comme valeur de remplissage si aucune valeur n'a été vue, mais la valeur NULL sera utilisée (uniquement disponible dans Grafana 5.3\$1).  | 

 L'éditeur de requêtes possède un lien **SQL généré** qui s'affiche après l'exécution d'une requête, en mode édition du panneau. Choisissez-le et il se développera et affichera la chaîne SQL interpolée brute qui a été exécutée. 

## Requêtes de table
<a name="mssql-table-queries"></a>

 Si l'option de requête est définie sur **Formater en tant que** **table**, vous pouvez essentiellement effectuer n'importe quel type de requête SQL. Le panneau du tableau affiche automatiquement les résultats des colonnes et des lignes renvoyées par votre requête. 

 L'exemple de code suivant montre une table de base de données. 

```
CREATE TABLE [event] (
  time_sec bigint,
  description nvarchar(100),
  tags nvarchar(100),
)
```

```
CREATE TABLE [mssql_types] (
  c_bit bit, c_tinyint tinyint, c_smallint smallint, c_int int, c_bigint bigint, c_money money, c_smallmoney smallmoney, c_numeric numeric(10,5),
  c_real real, c_decimal decimal(10,2), c_float float,
  c_char char(10), c_varchar varchar(10), c_text text,
  c_nchar nchar(12), c_nvarchar nvarchar(12), c_ntext ntext,
  c_datetime datetime,  c_datetime2 datetime2, c_smalldatetime smalldatetime, c_date date, c_time time, c_datetimeoffset datetimeoffset
)

INSERT INTO [mssql_types]
SELECT
  1, 5, 20020, 980300, 1420070400, '$20000.15', '£2.15', 12345.12,
  1.11, 2.22, 3.33,
  'char10', 'varchar10', 'text',
  N'☺nchar12☺', N'☺nvarchar12☺', N'☺text☺',
  GETDATE(), CAST(GETDATE() AS DATETIME2), CAST(GETDATE() AS SMALLDATETIME), CAST(GETDATE() AS DATE), CAST(GETDATE() AS TIME), SWITCHOFFSET(CAST(GETDATE() AS DATETIMEOFFSET), '-07:00')
```

 L'exemple de code suivant montre une requête. 

```
SELECT * FROM [mssql_types]
```

 Vous pouvez contrôler le nom des colonnes du panneau Table à l'aide de la syntaxe `AS` SQL classique de sélection des colonnes, comme illustré dans l'exemple de code suivant. 

```
SELECT
  c_bit as [column1], c_tinyint as [column2]
FROM
  [mssql_types]
```

 Le panneau de table qui en résulte : 

## Requêtes de séries chronologiques
<a name="mssql-time-series-queries"></a>

 Si vous définissez le **format comme** **série chronologique**, pour une utilisation dans le panneau graphique par exemple, la requête doit avoir une colonne nommée `time` qui renvoie soit une date SQL, soit un type de données numérique représentant l'époque Unix en secondes. Vous pouvez renvoyer une colonne nommée `metric` qui est utilisée comme nom de métrique pour la colonne de valeurs. Toute colonne sauf `time` et `metric` est traitée comme une colonne de valeur. Si vous omettez la `metric` colonne, le nom de la colonne de valeur sera le nom de la métrique. Vous pouvez sélectionner plusieurs colonnes de valeurs, chacune portant son nom de métrique. Si vous renvoyez plusieurs colonnes de valeurs et une colonne nommée`metric`, cette colonne est utilisée comme préfixe pour le nom de série. 

 Les ensembles de résultats des requêtes de séries chronologiques doivent être triés par ordre chronologique. 

 L'exemple de code suivant montre une table de base de données. 

```
CREATE TABLE [event] (
  time_sec bigint,
  description nvarchar(100),
  tags nvarchar(100),
)
```

```
CREATE TABLE metric_values (
  time datetime,
  measurement nvarchar(100),
  valueOne int,
  valueTwo int,
)

INSERT metric_values (time, measurement, valueOne, valueTwo) VALUES('2018-03-15 12:30:00', 'Metric A', 62, 6)
INSERT metric_values (time, measurement, valueOne, valueTwo) VALUES('2018-03-15 12:30:00', 'Metric B', 49, 11)
...
INSERT metric_values (time, measurement, valueOne, valueTwo) VALUES('2018-03-15 13:55:00', 'Metric A', 14, 25)
INSERT metric_values (time, measurement, valueOne, valueTwo) VALUES('2018-03-15 13:55:00', 'Metric B', 48, 10)
```

 L'exemple de code suivant montre une `value` et une `metric` colonne. 

```
SELECT
  time,
  valueOne,
  measurement as metric
FROM
  metric_values
WHERE
  $__timeFilter(time)
ORDER BY 1
```

 Lorsque la requête précédente est utilisée dans un panneau graphique, elle produit deux séries nommées `Metric A` et `Metric B` avec les valeurs `valueOne` et `valueTwo` tracées dessus`time`. 

 L'exemple de code suivant montre plusieurs `value` colonnes. 

```
SELECT
  time,
  valueOne,
  valueTwo
FROM
  metric_values
WHERE
  $__timeFilter(time)
ORDER BY 1
```

 Lorsque la requête précédente est utilisée dans un panneau graphique, elle produit deux séries nommées `Metric A` et `Metric B` avec les valeurs `valueOne` et `valueTwo` tracées dessus`time`. 

 L'exemple de code suivant montre l'utilisation de la macro \$1\$1\$1timeGroup. 

```
SELECT
  $__timeGroup(time, '3m') as time,
  measurement as metric,
  avg(valueOne)
FROM
  metric_values
WHERE
  $__timeFilter(time)
GROUP BY
  $__timeGroup(time, '3m'),
  measurement
ORDER BY 1
```

 Lorsque la requête précédente est utilisée dans un panneau graphique, elle produit deux séries nommées `Metric A` et `Metric B` avec les valeurs `valueOne` et `valueTwo` tracées dessus`time`. Toute série dépourvue de valeur dans une fenêtre de trois minutes affichera une ligne entre ces deux lignes. Vous remarquerez que le graphique de droite ne descend jamais à zéro. 

 L'exemple de code suivant montre l'utilisation de la macro \$1\$1\$1timeGroup avec un paramètre de remplissage défini sur zéro. 

```
SELECT
  $__timeGroup(time, '3m', 0) as time,
  measurement as metric,
  sum(valueTwo)
FROM
  metric_values
WHERE
  $__timeFilter(time)
GROUP BY
  $__timeGroup(time, '3m'),
  measurement
ORDER BY 1
```

 Lorsque cette requête est utilisée dans un panneau graphique, le résultat est deux séries nommées `Metric A` et `Metric B` dont la somme est `valueTwo` tracée au-dessus`time`. Toute série dépourvue de valeur dans une fenêtre de 3 minutes aura une valeur de zéro, que vous verrez apparaître dans le graphique de droite. 

## Création de modèles
<a name="mssql-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur la création de modèles et les variables de modèle, consultez[Modèles et variables](templates-and-variables.md). 

### Variable de requête
<a name="mssql-query-variable"></a>

 Si vous ajoutez une variable de modèle de ce type`Query`, vous pouvez écrire une requête MSSQL qui peut renvoyer des éléments tels que des noms de mesures, des noms de clés ou des valeurs de clé affichés sous forme de boîte de sélection déroulante. 

 Par exemple, vous pouvez avoir une variable contenant toutes les valeurs de la `hostname` colonne d'une table si vous spécifiez une requête comme celle-ci dans le paramètre *Query* de la variable de modèle. 

```
SELECT hostname FROM host
```

 Une requête peut renvoyer plusieurs colonnes et Grafana créera automatiquement une liste à partir de celles-ci. Par exemple, la requête suivante renverra une liste contenant les valeurs de `hostname` et`hostname2`. 

```
SELECT [host].[hostname], [other_host].[hostname2] FROM host JOIN other_host ON [host].[city] = [other_host].[city]
```

 Une autre option est une requête qui permet de créer une key/value variable. La requête doit renvoyer deux colonnes nommées `__text` et`__value`. La valeur de la `__text` colonne doit être unique (si elle ne l'est pas, c'est la première valeur qui est utilisée). Les options de la liste déroulante comporteront un texte et une valeur qui vous permettront d'avoir un nom convivial sous forme de texte et un identifiant comme valeur. Exemple de requête avec `hostname` comme texte et `id` comme valeur : 

```
SELECT hostname __text, id __value FROM host
```

 Vous pouvez également créer des variables imbriquées. Par exemple, si vous aviez une autre variable nommée`region`. Vous pouvez alors faire en sorte que la variable hosts n'affiche que les hôtes de la région actuellement sélectionnée avec une requête comme celle-ci (s'il s'`region`agit d'une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de la comparer `=` à plusieurs valeurs). 

```
SELECT hostname FROM host WHERE region IN ($region)
```

### Utilisation de variables dans les requêtes
<a name="mssql-using-variables-in-queries"></a>

**Note**  
 Les valeurs des variables de modèle ne sont citées que lorsque la variable de modèle est un`multi-value`. 

 Si la variable est une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de `=` la comparer à plusieurs valeurs. 

 Il existe deux syntaxes : 

 `$<varname>`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  atimestamp time,
  aint value
FROM table
WHERE $__timeFilter(atimestamp) and hostname in($hostname)
ORDER BY atimestamp
```

 `[[varname]]`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  atimestamp as time,
  aint as value
FROM table
WHERE $__timeFilter(atimestamp) and hostname in([[hostname]])
ORDER BY atimestamp
```

#### Désactiver les guillemets pour les variables à valeurs multiples
<a name="mssql-disabling-quoting-for-multi-value-variables"></a>

 Grafana crée automatiquement une chaîne entre guillemets séparée par des virgules pour les variables à valeurs multiples. Par exemple, si `server01` et `server02` sont sélectionnés, il sera formaté comme suit :`'server01', 'server02'`. Pour désactiver les guillemets, utilisez l'option de formatage csv pour les variables. 

 `${servers:csv}` 

 Pour plus d'informations sur les options de mise en forme des variables, consultez[Modèles et variables](templates-and-variables.md). 

## Annotations
<a name="mssql-annotations"></a>

 Vous pouvez utiliser des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord/Vue des annotations. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 

 **Colonnes :** 


|  Nom  |  Description  | 
| --- | --- | 
|  time  |  Le nom du date/time champ. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  timeend  |  Nom facultatif du date/time champ de fin. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  text  |  Champ de description de l'événement.  | 
|  tags  |  Nom de champ facultatif à utiliser pour les balises d'événements sous forme de chaîne séparée par des virgules.  | 

 L'exemple de code suivant montre les tables de base de données. 

```
CREATE TABLE [events] (
  time_sec bigint,
  description nvarchar(100),
  tags nvarchar(100),
)
```

 Nous utilisons également la table de base de données définie dans[Requêtes de séries chronologiques](#mssql-time-series-queries). 

 L'exemple de code suivant montre une requête utilisant une colonne de temps avec des valeurs d'époque. 

```
SELECT
  time_sec as time,
  description as [text],
  tags
FROM
  [events]
WHERE
  $__unixEpochFilter(time_sec)
ORDER BY 1
```

 L'exemple de code suivant montre une requête de région utilisant des colonnes d'heure et de fin de période avec des valeurs d'époque. 

```
SELECT
  time_sec as time,
  time_end_sec as timeend,
  description as [text],
  tags
FROM
  [events]
WHERE
  $__unixEpochFilter(time_sec)
ORDER BY 1
```

 L'exemple de code suivant montre une requête utilisant une colonne de temps de type date/time SQL natif. 

```
SELECT
  time,
  measurement as text,
  convert(varchar, valueOne) + ',' + convert(varchar, valueTwo) as tags
FROM
  metric_values
WHERE
  $__timeFilter(time_column)
ORDER BY 1
```

## Support des procédures stockées
<a name="stored-procedure-support"></a>

 Le fonctionnement des procédures enregistrées a été vérifié. Cependant, il peut y avoir des cas extrêmes où cela ne fonctionnera pas comme prévu. Les procédures stockées doivent être prises en charge dans les requêtes de table, de séries chronologiques et d'annotation, à condition que vous utilisiez le même nom de colonnes et que vous rencontriez les données dans le même format que celui décrit précédemment dans les sections respectives. 

 Les fonctions macro ne fonctionneront pas dans une procédure stockée. 

### Exemples
<a name="mssql-examples"></a>

 Dans les exemples suivants, la table de base de données est définie dans les requêtes de séries chronologiques. Supposons que vous souhaitiez visualiser quatre séries dans un panneau graphique, telles que toutes les combinaisons de colonnes`valueOne`, `valueTwo` et`measurement`. Le panneau graphique à droite permet de visualiser ce que nous voulons réaliser. Pour résoudre ce problème, vous devez utiliser deux requêtes : 

 L'exemple de code suivant montre la première requête. 

```
SELECT
  $__timeGroup(time, '5m') as time,
  measurement + ' - value one' as metric,
  avg(valueOne) as valueOne
FROM
  metric_values
WHERE
  $__timeFilter(time)
GROUP BY
  $__timeGroup(time, '5m'),
  measurement
ORDER BY 1
```

 L'exemple de code suivant montre la deuxième requête. 

```
SELECT
  $__timeGroup(time, '5m') as time,
  measurement + ' - value two' as metric,
  avg(valueTwo) as valueTwo
FROM
  metric_values
GROUP BY
  $__timeGroup(time, '5m'),
  measurement
ORDER BY 1
```

#### Procédure stockée utilisant le temps au format Epoch
<a name="mssql-stored-procedure-using-time-in-epoch-format"></a>

 Vous pouvez définir une procédure stockée qui renverra toutes les données dont vous avez besoin pour afficher quatre séries dans un panneau graphique comme ci-dessus. Dans ce cas, la procédure stockée accepte deux paramètres, l'un `@from` des `@to` types de `int` données, qui doit être une plage de temps (de à) au format epoch qui sera utilisée pour filtrer les données à renvoyer par la procédure stockée. 

 Cela imite les expressions `$__timeGroup(time, '5m')` in select et group by, et c'est pourquoi de nombreuses expressions longues sont nécessaires. Elles peuvent être extraites vers des fonctions MSSQL, si vous le souhaitez.

```
CREATE PROCEDURE sp_test_epoch(
  @from int,
  @to   int
)   AS
BEGIN
  SELECT
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, DATEADD(second, DATEDIFF(second,GETDATE(),GETUTCDATE()), time))/600 as int)*600 as int) as time,
    measurement + ' - value one' as metric,
    avg(valueOne) as value
  FROM
    metric_values
  WHERE
    time >= DATEADD(s, @from, '1970-01-01') AND time <= DATEADD(s, @to, '1970-01-01')
  GROUP BY
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, DATEADD(second, DATEDIFF(second,GETDATE(),GETUTCDATE()), time))/600 as int)*600 as int),
    measurement
  UNION ALL
  SELECT
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, DATEADD(second, DATEDIFF(second,GETDATE(),GETUTCDATE()), time))/600 as int)*600 as int) as time,
    measurement + ' - value two' as metric,
    avg(valueTwo) as value
  FROM
    metric_values
  WHERE
    time >= DATEADD(s, @from, '1970-01-01') AND time <= DATEADD(s, @to, '1970-01-01')
  GROUP BY
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, DATEADD(second, DATEDIFF(second,GETDATE(),GETUTCDATE()), time))/600 as int)*600 as int),
    measurement
  ORDER BY 1
END
```

 Vous pouvez ensuite utiliser la requête suivante pour votre panneau graphique. 

```
DECLARE
  @from int = $__unixEpochFrom(),
  @to int = $__unixEpochTo()

EXEC dbo.sp_test_epoch @from, @to
```

#### Procédure stockée utilisant l'heure au format date/heure
<a name="mssql-stored-procedure-using-time-in-datetime-format"></a>

 Vous pouvez définir une procédure stockée qui renverra toutes les données dont vous avez besoin pour afficher quatre séries dans un panneau graphique comme ci-dessus. Dans ce cas, la procédure stockée accepte deux paramètres, `@from` l'un des types de `datetime` données, qui doit être une plage de temps (de à) qui sera utilisée pour filtrer les données à renvoyer par la procédure stockée. `@to` 

 Cela imite les expressions `$__timeGroup(time, '5m')` in select et group by, et c'est pourquoi de nombreuses expressions longues sont nécessaires. Elles peuvent être extraites vers des fonctions MSSQL, si vous le souhaitez. 

```
CREATE PROCEDURE sp_test_datetime(
  @from datetime,
  @to   datetime
)   AS
BEGIN
  SELECT
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, time)/600 as int)*600 as int) as time,
    measurement + ' - value one' as metric,
    avg(valueOne) as value
  FROM
    metric_values
  WHERE
    time >= @from AND time <= @to
  GROUP BY
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, time)/600 as int)*600 as int),
    measurement
  UNION ALL
  SELECT
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, time)/600 as int)*600 as int) as time,
    measurement + ' - value two' as metric,
    avg(valueTwo) as value
  FROM
    metric_values
  WHERE
    time >= @from AND time <= @to
  GROUP BY
    cast(cast(DATEDIFF(second, {d '1970-01-01'}, time)/600 as int)*600 as int),
    measurement
  ORDER BY 1
END
```

 Vous pouvez ensuite utiliser la requête suivante pour votre panneau graphique. 

```
DECLARE
  @from datetime = $__timeFrom(),
  @to datetime = $__timeTo()

EXEC dbo.sp_test_datetime @from, @to
```

## Alerte
<a name="mssql-alerting"></a>

 Les requêtes de séries chronologiques devraient fonctionner dans des conditions d'alerte. Les requêtes mises en forme de tableau ne sont pas encore prises en charge dans les conditions des règles d'alerte. 

# Connect à une source de données MySQL
<a name="using-mysql-in-AMG"></a>

 Ajoutez la source de données MySQL pour pouvoir interroger et visualiser les données d'une base de données compatible MySQL. 

**Important**  
Grafana version 8.0 modifie la structure de données sous-jacente des trames de données pour les sources de données MySQL, Postgres et Microsoft SQL Server. Par conséquent, le résultat d'une requête de série chronologique est renvoyé dans un format large. Pour plus d'informations, consultez la section [Format large](https://grafana.com/developers/plugin-tools/introduction/data-frames#wide-format) dans la documentation des trames de données Grafana.  
Pour que vos visualisations fonctionnent comme elles le faisaient auparavant, vous devrez peut-être effectuer des migrations manuelles. Une solution est documentée sur Github à l'adresse suivante [Postgres/MySQL/MSSQL: Breaking change in v8.0 relatif aux requêtes de séries chronologiques et à l'ordre des colonnes de données](https://github.com/grafana/grafana/issues/35534).

## Ajouter la source de données
<a name="mysql-adding-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Tableaux** de bord, vous devriez trouver un lien intitulé **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **MySQL** dans la liste déroulante **Type**. 

### Options de source de données
<a name="mysql-data-source-options"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Host  |  L'adresse IP address/hostname et le port optionnel de votre instance MySQL.  | 
|  Database  |  Nom de votre base de données MySQL.  | 
|  User  |  Login/nom d'utilisateur de l'utilisateur de la base de données.  | 
|  Password  |  Mot de passe de l'utilisateur de base de données.  | 
|  Max open  |  Nombre maximum de connexions ouvertes à la base de données, par défaut unlimited (Grafana v5.4\$1).  | 
|  Max idle  |  Nombre maximal de connexions dans le pool de connexions inactives, par défaut 2 (Grafana v5.4\$1).  | 
|  Max lifetime  |  Durée maximale en secondes pendant laquelle une connexion peut être réutilisée, par défaut 14400 /4 heures. Cela doit toujours être inférieur à la valeur configurée pour [wait\$1timeout dans](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_wait_timeout) MySQL (Grafana v5.4\$1).  | 

### Intervalle de temps minimum
<a name="mysql-min-time-interval"></a>

 Une limite inférieure pour les `$_interval` `$_interval_ms` variables. Il est recommandé de régler la fréquence d'écriture, par exemple `1m` si vos données sont écrites toutes les minutes. Cette option peut également se trouver overridden/configured dans un panneau de tableau de bord sous les options de source de données. Cette valeur **doit** être formatée sous la forme d'un nombre suivi d'un identifiant horaire valide, par exemple `1m` (1 minute) ou `30s` (30 secondes). Les identifiants horaires suivants sont pris en charge. 


|  Identifiant  |  Description  | 
| --- | --- | 
|  y  |  Année  | 
|  M  |  Mois  | 
|  w  |  semaine  | 
|  d  |  jour  | 
|  h  |  Heure  | 
|  m  |  Minute  | 
|  s  |  Seconde  | 
|  ms  |  Milliseconde  | 

### Autorisations utilisateur de base de données
<a name="database-user-permissions-important"></a>

**Important**  
 L'utilisateur de base de données que vous spécifiez lorsque vous ajoutez la source de données ne doit disposer que des autorisations SELECT sur la base de données et les tables spécifiées que vous souhaitez interroger. Grafana ne confirme pas que la requête est sûre. La requête peut inclure n'importe quelle instruction SQL. Par exemple, des instructions telles que `USE otherdb;` et `DROP TABLE user;` seraient exécutées. Pour vous protéger contre cela, nous vous recommandons vivement de créer un utilisateur MySQL spécifique avec des autorisations restreintes.

 L'exemple de code suivant montre la création d'un utilisateur MySQL spécifique avec des autorisations restreintes.

```
 CREATE USER 'grafanaReader' IDENTIFIED BY 'password';
 GRANT SELECT ON mydatabase.mytable TO 'grafanaReader';
```

 Pour autoriser l'accès à davantage de bases de données et de tables, vous pouvez utiliser des caractères génériques (`*`) à la place de la base de données ou de la table si vous le souhaitez. 

## Éditeur de requêtes
<a name="mysql-query-editor"></a>

 Vous trouverez l'éditeur de requêtes MySQL dans l'onglet métriques en mode édition d'un panneau. Vous passez en mode édition en choisissant le titre du panneau, puis **Modifier**. 

 L'éditeur de requêtes possède un lien **SQL généré** qui s'affiche après l'exécution d'une requête, en mode édition du panneau. Choisissez-le, il se développera et affichera la chaîne SQL interpolée brute qui a été exécutée. 

### Sélectionnez le tableau, la colonne horaire et la colonne métrique (FROM)
<a name="select-table-time-column-and-metric-column-from"></a>

 Lorsque vous entrez en mode édition pour la première fois ou que vous ajoutez une nouvelle requête, Grafana essaie de préremplir le générateur de requêtes avec la première table contenant une colonne d'horodatage et une colonne numérique. 

 Dans le champ FROM, Grafana proposera des tables qui se trouvent dans la base de données configurée. Pour sélectionner une table ou une vue dans une autre base de données à laquelle l'utilisateur de votre base de données a accès, vous pouvez saisir manuellement un nom complet (database.table) tel que. `otherDb.metrics` 

 Le champ de colonne Heure fait référence au nom de la colonne contenant vos valeurs temporelles. La sélection d'une valeur pour le champ de colonne métrique est facultative. Si une valeur est sélectionnée, le champ de colonne métrique sera utilisé comme nom de série. 

 Les suggestions de colonnes métriques contiendront uniquement des colonnes contenant un type de données texte (text, tinytext, mediumtext, longtext, varchar, char). Si vous souhaitez utiliser une colonne avec un type de données différent en tant que colonne métrique, vous pouvez saisir le nom de la colonne avec un transtypage :`CAST(numericColumn as CHAR)`. Vous pouvez également saisir des expressions SQL arbitraires dans le champ de la colonne métrique qui correspondent à un type de données texte tel que`CONCAT(column1, " ", CAST(numericColumn as CHAR))`.

### Colonnes et fonctions d'agrégation (SELECT)
<a name="columns-and-aggregation-functions-select"></a>

 Dans la `SELECT` ligne, vous pouvez spécifier les colonnes et les fonctions que vous souhaitez utiliser. Dans le champ de colonne, vous pouvez écrire des expressions arbitraires au lieu d'un nom de colonne tel que`column1 * column2 / column3`. 

 Si vous utilisez des fonctions d'agrégation, vous devez regrouper votre jeu de résultats. L'éditeur ajoutera automatiquement un `GROUP BY time` si vous ajoutez une fonction d'agrégation. 

 Vous pouvez ajouter d'autres colonnes de valeur en cliquant sur le bouton plus et en sélectionnant dans le `Column` menu. Les colonnes de valeurs multiples seront tracées sous forme de séries distinctes dans le panneau graphique. 

### Filtrage des données (WHERE)
<a name="mysql-filter-data-where"></a>

 Pour ajouter un filtre, cliquez sur l'icône plus à droite de la `WHERE` condition. Vous pouvez supprimer des filtres en choisissant un filtre puis en sélectionnant`Remove`. Un filtre pour la plage de temps actuellement sélectionnée est automatiquement ajouté aux nouvelles requêtes.

### Grouper par
<a name="mysql-group-by"></a>

 Pour regrouper par heure ou par toute autre colonne, cliquez sur l'icône plus à la fin de la ligne GROUPER PAR. La liste déroulante des suggestions n'affiche que les colonnes de texte du tableau actuellement sélectionné, mais vous pouvez saisir manuellement n'importe quelle colonne. Vous pouvez supprimer le groupe en choisissant l'élément, puis en le sélectionnant`Remove`. 

 Si vous ajoutez un regroupement, une fonction d'agrégation doit être appliquée à toutes les colonnes sélectionnées. Le générateur de requêtes ajoute automatiquement des fonctions d'agrégation à toutes les colonnes sans fonctions d'agrégation lorsque vous ajoutez des groupements. 

#### Combler les lacunes
<a name="mysql-gap-filling"></a>

 Grafana peut compléter les valeurs manquantes lorsque vous les regroupez par heure. La fonction time accepte deux arguments. Le premier argument est la fenêtre temporelle selon laquelle vous souhaitez effectuer le regroupement, et le second argument est la valeur avec laquelle vous souhaitez que Grafana remplisse les éléments manquants. 

### Mode éditeur de texte (brut)
<a name="mysql-text-editor-mode-raw"></a>

 Vous pouvez passer en mode éditeur de requête brut en choisissant l'icône en forme de hamburger et en sélectionnant **Changer le mode éditeur** ou en choisissant **Modifier le code SQL** sous la requête. 

**Note**  
 Si vous utilisez l'éditeur de requête brut, assurez-vous que votre requête contient `ORDER BY time` au minimum un filtre sur la plage de temps renvoyée. 

## Macros
<a name="mysql-macros"></a>

 Pour simplifier la syntaxe et autoriser les parties dynamiques, telles que les filtres de plage de dates, la requête peut contenir des macros. 


|  Exemple de macro  |  Description  | 
| --- | --- | 
|  \$1\$1\$1time(dateColumn)  |  Sera remplacée par une expression à convertir en horodatage UNIX et à renommer la colonne en time\$1sec ; par exemple, UNIX\$1TIMESTAMP (DateColumn) en time\$1sec. | 
|  \$1\$1\$1timeEpoch(dateColumn)  |  Sera remplacée par une expression à convertir en horodatage UNIX et à renommer la colonne en time\$1sec ; par exemple, UNIX\$1TIMESTAMP (DateColumn) en time\$1sec.  | 
|  \$1\$1\$1timeFilter(dateColumn)  |  Sera remplacé par un filtre de plage de temps utilisant le nom de colonne spécifié. Par exemple, DateColumn BETWEEN FROM\$1UNIXTIME (1494410783) ET FROM\$1UNIXTIME (1494410983). | 
|  \$1\$1\$1timeFrom()  |  Sera remplacé par le début de la sélection d'heure actuellement active. Par exemple, FROM\$1UNIXTIME (1494410783).  | 
|  \$1\$1\$1timeTo()  |  Sera remplacé à la fin de la sélection d'heure actuellement active. Par exemple, FROM\$1UNIXTIME (1494410983).  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m')  |  Sera remplacée par une expression utilisable dans la clause GROUP BY. Par exemple, cast (cast (UNIX\$1TIMESTAMP (DateColumn)/(300) comme signé) 300 comme signé), \$1  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', 0)  |  Identique à la ligne précédente, mais avec un paramètre de remplissage, les points manquants dans cette série seront ajoutés par grafana et 0 sera utilisé comme valeur.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', NULL)  |  Comme ci-dessus, mais NULL sera utilisé comme valeur pour les points manquants.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', previous)  |  Comme ci-dessus, mais la valeur précédente de cette série sera utilisée comme valeur de remplissage si aucune valeur n'a été vue, mais la valeur NULL sera utilisée (uniquement disponible dans Grafana 5.3\$1).  | 
|  \$1\$1\$1timeGroupAlias(dateColumn,'5m')  |  Sera remplacé de la même manière \$1\$1\$1timeGroup mais avec un alias de colonne ajouté (disponible uniquement dans Grafana 5.3\$1).  | 
| \$1\$1\$1unixEpochFilter(dateColumn) | Sera remplacé par un filtre de plage horaire utilisant le nom de colonne spécifié avec les heures représentées par un horodatage Unix. Par exemple, dateColumn > 1494410783 AND dateColumn < 1494497183. | 
| \$1\$1\$1unixEpochFrom() | Sera remplacé par le début de la sélection d'heure actuellement active sous forme d'horodatage Unix. Par exemple, 1494410783. | 
| \$1\$1\$1unixEpochTo() | Sera remplacé par la fin de la sélection d'heure actuellement active sous forme d'horodatage Unix. Par exemple, 1494497183. | 
| \$1\$1\$1unixEpochNanoFilter(dateColumn) | Sera remplacé par un filtre de plage de temps utilisant le nom de colonne spécifié, les heures étant représentées par un horodatage en nanosecondes. Par exemple, dateColumn > 1494410783152415214 AND dateColumn < 1494497183142514872. | 
| \$1\$1\$1unixEpochNanoFrom() | Sera remplacé par le début de la sélection temporelle actuellement active sous forme d'horodatage en nanosecondes. Par exemple, 1494410783152415214. | 
| \$1\$1\$1unixEpochNanoTo() | Sera remplacé par la fin de la sélection temporelle actuellement active sous forme d'horodatage en nanosecondes. Par exemple, 1494497183142514872. | 
| \$1\$1\$1unixEpochGroup(dateColumn,"5m", [fillmode]) | Identique à l'\$1\$1\$1timeGroupexception des heures stockées sous forme d'horodatage Unix (disponible uniquement dans Grafana 5.3\$1). | 
| \$1\$1\$1unixEpochGroupAlias(dateColumn,"5m", [fillmode])` | Comme ci-dessus, mais ajoute également un alias de colonne (disponible uniquement dans Grafana 5.3\$1). | 

 L'éditeur de requêtes possède un lien **SQL généré** qui s'affiche après l'exécution d'une requête, en mode édition du panneau. Choisissez-le, il se développera et affichera la chaîne SQL interpolée brute qui a été exécutée. 

## Requêtes de table
<a name="mysql-table-queries"></a>

 Si l'option **Formater en tant que** requête est définie sur **Table**, vous pouvez essentiellement effectuer n'importe quel type de requête SQL. Le panneau du tableau affiche automatiquement les résultats des colonnes et des lignes renvoyées par votre requête. 

 Le code suivant montre un exemple de requête. 

```
SELECT
  title as 'Title',
  user.login as 'Created By' ,
  dashboard.created as 'Created On'
 FROM dashboard
INNER JOIN user on user.id = dashboard.created_by
WHERE $__timeFilter(dashboard.created)
```

 Vous pouvez contrôler le nom des colonnes du panneau Table à l'aide de la syntaxe `as` SQL classique de sélection des colonnes. 

## Requêtes de séries chronologiques
<a name="mysql-time-series-queries"></a>

 Si vous **définissez Format** en fonction de la **série chronologique**, pour une utilisation dans un panneau graphique par exemple, la requête doit renvoyer une colonne nommée `time` qui renvoie soit une date/heure SQL, soit un type de données numérique représentant l'époque Unix. Toute colonne sauf `time` et `metric` est traitée comme une colonne de valeur. Vous pouvez renvoyer une colonne nommée `metric` qui est utilisée comme nom de métrique pour la colonne de valeurs. Si vous renvoyez plusieurs colonnes de valeurs et une colonne nommée`metric`, cette colonne est utilisée comme préfixe pour le nom de série (disponible uniquement dans Grafana 5.3\$1).

 Les ensembles de résultats des requêtes de séries chronologiques doivent être triés par ordre chronologique. 

 L'exemple de code suivant montre la `metric` colonne. 

```
SELECT
  $__timeGroup(time_date_time,'5m'),
  min(value_double),
  'min' as metric
FROM test_data
WHERE $__timeFilter(time_date_time)
GROUP BY time
ORDER BY time
```

 L'exemple de code suivant montre comment utiliser le paramètre fill dans la macro \$1\$1\$1TimeGroup pour convertir des valeurs nulles en zéro à la place. 

```
SELECT
  $__timeGroup(createdAt,'5m',0),
  sum(value_double) as value,
  measurement
FROM test_data
WHERE
  $__timeFilter(createdAt)
GROUP BY time, measurement
ORDER BY time
```

 L'exemple de code suivant montre plusieurs colonnes. 

```
SELECT
  $__timeGroup(time_date_time,'5m'),
  min(value_double) as min_value,
  max(value_double) as max_value
FROM test_data
WHERE $__timeFilter(time_date_time)
GROUP BY time
ORDER BY time
```

Il n'existe aucun support pour un groupe dynamique par heure basé sur la plage de temps et la largeur du panneau.

## Création de modèles
<a name="mysql-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles](templates-and-variables.md#templates). 

### Variable de requête
<a name="mysql-query-variable"></a>

 Si vous ajoutez une variable de modèle de ce type`Query`, vous pouvez écrire une requête MySQL qui peut renvoyer des éléments tels que des noms de mesures, des noms de clés ou des valeurs de clé affichées sous forme de boîte de sélection déroulante. 

 Par exemple, vous pouvez avoir une variable contenant toutes les valeurs de la `hostname` colonne d'une table si vous spécifiez une requête comme celle-ci dans le paramètre *Query* de la variable de modèle. 

```
SELECT hostname FROM my_host
```

 Une requête peut renvoyer plusieurs colonnes et Grafana créera automatiquement une liste à partir de celles-ci. Par exemple, la requête suivante renverra une liste contenant les valeurs de `hostname` et`hostname2`. 

```
SELECT my_host.hostname, my_other_host.hostname2 FROM my_host JOIN my_other_host ON my_host.city = my_other_host.city
```

 Pour utiliser des macros dépendantes d'une plage de temps, comme `$__timeFilter(column)` dans votre requête, le mode d'actualisation de la variable de modèle doit être défini *sur On Time Range Change*. 

```
SELECT event_name FROM event_log WHERE $__timeFilter(time_column)
```

 Une autre option est une requête qui permet de créer une key/value variable. La requête doit renvoyer deux colonnes nommées `__text` et`__value`. La valeur de la `__text` colonne doit être unique (si elle ne l'est pas, la première valeur est utilisée). Les options de la liste déroulante comporteront un texte et une valeur afin que vous puissiez avoir un nom convivial sous forme de texte et un identifiant comme valeur.

L'exemple de code suivant montre une requête dont `hostname` le texte et la valeur sont `id` les suivants. 

```
SELECT hostname AS __text, id AS __value FROM my_host
```

 Vous pouvez également créer des variables imbriquées. Par exemple, si vous aviez une autre variable nommée`region`. Vous pouvez alors demander à la variable hosts d'afficher uniquement les hôtes de la région actuellement sélectionnée avec une requête comme celle-ci (s'il s'`region`agit d'une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de la comparer `=` à plusieurs valeurs). 

```
SELECT hostname FROM my_host  WHERE region IN($region)
```

#### Utilisation `__searchFilter` pour filtrer les résultats dans une variable de requête
<a name="using-__searchfilter-to-filter-results-in-query-variable"></a>

 L'utilisation `__searchFilter` du champ de requête filtrera le résultat de la requête en fonction de ce que l'utilisateur saisit dans la zone de sélection déroulante. Lorsque rien n'a été saisi par l'utilisateur, la valeur par défaut `__searchFilter` est`%`. 

**Note**  
 Il est important que vous entouriez l'`__searchFilter`expression de guillemets, car Grafana ne le fait pas pour vous. 

 L'exemple suivant montre comment l'utiliser `__searchFilter` dans le champ de requête pour activer la recherche `hostname` pendant que l'utilisateur tape dans la zone de sélection déroulante. 

```
SELECT hostname FROM my_host  WHERE hostname LIKE '$__searchFilter'
```

### Utilisation de variables dans les requêtes
<a name="using-variables-in-queries-2"></a>

 De Grafana 4.3.0 à 4.6.0, les variables de modèle sont toujours citées automatiquement, donc s'il s'agit d'une valeur de chaîne, ne les mettez pas entre guillemets dans les clauses where. 

 À partir de Grafana 4.7.0, les valeurs des variables de modèle ne sont citées que lorsque la variable de modèle est un. `multi-value` 

 Si la variable est une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de `=` la comparer à plusieurs valeurs. 

 Il existe deux syntaxes : 

 `$<varname>`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  UNIX_TIMESTAMP(atimestamp) as time,
  aint as value,
  avarchar as metric
FROM my_table
WHERE $__timeFilter(atimestamp) and hostname in($hostname)
ORDER BY atimestamp ASC
```

 `[[varname]]`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  UNIX_TIMESTAMP(atimestamp) as time,
  aint as value,
  avarchar as metric
FROM my_table
WHERE $__timeFilter(atimestamp) and hostname in([[hostname]])
ORDER BY atimestamp ASC
```

#### Désactiver les guillemets pour les variables à valeurs multiples
<a name="disabling-quoting-for-multi-value-variables"></a>

 Grafana crée automatiquement une chaîne entre guillemets séparée par des virgules pour les variables à valeurs multiples. Par exemple : si `server01` et `server02` sont sélectionnés, ils seront formatés comme suit :`'server01', 'server02'`. Pour désactiver les guillemets, utilisez l'option de formatage csv pour les variables. 

 `${servers:csv}` 

 Pour plus d'informations sur les options de mise en forme des variables, consultez[Options avancées de format variable](templates-and-variables.md#advanced-variable-format-options). 

## Annotations
<a name="mysql-annotations"></a>

 Vous pouvez utiliser des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord/Vue des annotations. Pour de plus amples informations, veuillez consulter . 

 L'exemple de code suivant montre une requête utilisant une colonne de temps avec des valeurs d'époque. 

```
SELECT
  epoch_time as time,
  metric1 as text,
  CONCAT(tag1, ',', tag2) as tags
FROM
  public.test_data
WHERE
  $__unixEpochFilter(epoch_time)
```

L'exemple de code suivant montre une requête de région utilisant des colonnes d'heure et de fin de période avec des valeurs d'époque. 

**Note**  
 Disponible uniquement dans Grafana v6.6 et versions ultérieures. 

```
SELECT
  epoch_time as time,
  epoch_timeend as timeend,
  metric1 as text,
  CONCAT(tag1, ',', tag2) as tags
FROM
  public.test_data
WHERE
  $__unixEpochFilter(epoch_time)
```

 L'exemple de code suivant montre une requête utilisant une colonne de temps de type date/time SQL natif. 

```
SELECT
  native_date_time as time,
  metric1 as text,
  CONCAT(tag1, ',', tag2) as tags
FROM
  public.test_data
WHERE
  $__timeFilter(native_date_time)
```


|  Nom  |  Description  | 
| --- | --- | 
|  time  |  Le nom du date/time champ. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  timeend  |  Nom facultatif du date/time champ de fin. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  text  |  Champ de description de l'événement.  | 
|  tags  |  Nom de champ facultatif à utiliser pour les balises d'événements sous forme de chaîne séparée par des virgules.  | 

## Alerte
<a name="mysql-alerting"></a>

 Les requêtes de séries chronologiques devraient fonctionner dans des conditions d'alerte. Les requêtes mises en forme de tableau ne sont pas encore prises en charge dans les conditions des règles d'alerte. 

# Se connecter à une source OpenSearch de données
<a name="using-opensearch-in-AMG"></a>

**Note**  
Dans les espaces de travail qui prennent en charge la version 9 ou une version plus récente, cette source de données peut nécessiter l'installation du plug-in approprié. Pour de plus amples informations, veuillez consulter [Étendez votre espace de travail avec des plugins](grafana-plugins.md).

Avec Amazon Managed Grafana, vous pouvez ajouter du code source ouvert [OpenSearch](https://opensearch.org/docs/)(ou Elasticsearch existant) en tant que source de données. Vous pouvez effectuer de nombreux types de OpenSearch requêtes simples ou complexes pour visualiser les journaux ou les métriques qui y sont stockés OpenSearch. Vous pouvez également annoter vos graphiques en y enregistrant les événements du journal. OpenSearch

## Ajouter OpenSearch en tant que source de données
<a name="opensearch-adding-the-data-source"></a>

**Note**  
Pour pouvoir ajouter la source de OpenSearch données, vous devez ajouter votre compte Grafana IAM aux rôles ALL\$1ACCESS et SECURITY\$1MANAGER.

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Tableaux** de bord, vous devriez trouver le lien nommé **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **OpenSearch**dans la liste déroulante **Type**. 

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Url  |  Le protocole HTTP, l'adresse IP et le port de votre OpenSearch serveur.  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana. Navigateur = L'URL doit être accessible depuis le navigateur.  | 

 Le mode d'accès contrôle la manière dont les demandes adressées à la source de données seront traitées. Le serveur doit être le moyen préféré si rien d'autre n'est indiqué. 

### Mode d'accès au serveur (par défaut)
<a name="opensearch-server-access-mode-default"></a>

 Toutes les demandes sont effectuées depuis le navigateur vers le backend ou le serveur de Grafana, qui les transmet à la source de données, contournant ainsi les éventuelles exigences de partage de ressources entre origines (CORS). Si vous sélectionnez ce mode d'accès, l'URL doit être accessible depuis le backend ou le serveur Grafana. 

### Accès (direct) au navigateur
<a name="opensearch-browser-direct-access"></a>

 Amazon Managed Grafana ne prend pas en charge l'accès direct à la source de OpenSearch données par le navigateur. 

### Paramètres de l'index
<a name="opensearch-index-settings"></a>

 Ici, vous pouvez définir une valeur par défaut pour `time field` et spécifier le nom de votre OpenSearch index. Vous pouvez utiliser un modèle temporel pour le nom de l'index ou un caractère générique. 

### OpenSearch/Version d'Elasticsearch
<a name="opensearch-version"></a>

Spécifiez votre version OpenSearch ou celle de votre ancienne version d'Elasticsearch dans le menu déroulant des versions. La version est importante car il existe des différences dans la façon dont les requêtes sont composées pour chaque version. Grafana prend actuellement en charge OpenSearch la version 1.0.x. Les versions prises en charge d'Elasticsearch sont `2.0+``5.0+`, `5.6+``6.0+`, et. `7.0+` La valeur `5.6+` signifie la version 5.6 ou supérieure, mais inférieure à 6.0. La valeur `6.0+` signifie la version 6.0 ou supérieure, mais inférieure à 7.0. Enfin, `7.0+` signifie la version 7.0 ou supérieure, mais inférieure à 8.0.

### Intervalle de temps minimum
<a name="opensearch-min-time-interval"></a>

 Limite inférieure pour le regroupement automatique par intervalle de temps. Il est recommandé de régler la fréquence d'écriture, par exemple `1m` si vos données sont écrites toutes les minutes. Cette option peut également se trouver overridden/configured dans un panneau de tableau de bord sous les options de source de données. Cette valeur **doit** être formatée sous la forme d'un nombre suivi d'un identifiant horaire valide, par exemple `1m` (1 minute) ou `30s` (30 secondes). Les identifiants horaires suivants sont pris en charge. 


|  Identifiant  |  Description  | 
| --- | --- | 
|  y  |  Année  | 
|  M  |  Mois  | 
|  w  |  semaine  | 
|  d  |  jour  | 
|  h  |  Heure  | 
|  m  |  Minute  | 
|  s  |  Seconde  | 
|  ms  |  Milliseconde  | 

### Journaux
<a name="opensearch-logs-beta"></a>

Deux paramètres, `Message field name` et`Level field name`, peuvent éventuellement être configurés à partir de la page des paramètres de la source de données pour déterminer les champs qui seront utilisés pour les messages de journal et les niveaux de journalisation lors de la visualisation des connexions. [Explorez](explore.md) 

 Par exemple, si vous utilisez une configuration par défaut de Filebeat pour les journaux d'expédition OpenSearch, la configuration suivante devrait fonctionner. 
+  **Nom du champ du message :** message 
+  **Nom du champ de niveau : fields.level** 

### Liaisons de données
<a name="opensearch-data-links"></a>

 Les liens de données créent un lien à partir d'un champ spécifié accessible dans la vue des journaux dans Explore. 

 Chaque configuration de liaison de données comprend les éléments suivants :
+ **Champ** : nom du champ utilisé par le lien de données.
+ **URL/requête** — Si le lien est externe, entrez l'URL complète du lien. S'il s'agit d'un lien interne, cette entrée sert de requête pour la source de données cible. Dans les deux cas, vous pouvez interpoler la valeur du champ à l'aide d'une `${__value.raw }` macro. 
+ **Lien interne** : sélectionnez cette option s'il s'agit d'un lien interne ou externe. Si le lien est interne, un sélecteur de source de données vous permet de sélectionner la source de données cible. Seules les sources de données de suivi sont prises en charge.

## Utilisation de la source OpenSearch de données
<a name="opensearch-use-datasource"></a>

### Éditeur de requêtes métriques
<a name="opensearch-metric-query-editor"></a>

 L'éditeur de OpenSearch requêtes vous permet de sélectionner plusieurs indicateurs et de les regrouper selon plusieurs termes ou filtres. Utilisez les icônes plus et moins situées à droite pour les add/remove indicateurs ou regroupez-les par clauses. Certaines métriques et clauses de regroupement par comportent des options. Choisissez le texte de l'option pour développer la ligne afin d'afficher et de modifier la métrique ou de grouper par options. 

### Dénomination des séries et modèles d'alias
<a name="opensearch-series-naming-and-alias-patterns"></a>

 Vous pouvez contrôler le nom des séries chronologiques via le champ de `Alias` saisie. 


|  Modèle  |  Description  | 
| --- | --- | 
|  \$1\$1term fieldname\$1\$1  |  Remplacé par la valeur d'un terme Grouper par.  | 
|  \$1\$1metric\$1\$1  |  Remplacé par le nom de la métrique (ex. Moyenne, minimale, maximale). | 
|  \$1\$1field\$1\$1  |  Remplacé par le nom du champ métrique. | 

### Métriques du pipeline
<a name="opensearch-pipeline-metrics"></a>

*Certaines agrégations métriques sont appelées agrégations de pipelines ; par exemple, *moyenne mobile* et dérivée.* OpenSearch les métriques du pipeline nécessitent une autre métrique sur laquelle se baser. Utilisez l'icône en forme d'œil à côté de la métrique pour empêcher les métriques d'apparaître dans le graphique. Cela est utile pour les métriques que vous avez uniquement dans la requête et destinées à être utilisées dans une métrique de pipeline. 

### Création de modèles
<a name="opensearch-templating"></a>

Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

#### Variable de requête
<a name="opensearch-query-variable"></a>

 La source de OpenSearch données prend en charge deux types de requêtes que vous pouvez utiliser dans le champ *Requête* des variables de *requête*. La requête est écrite à l'aide d'une chaîne JSON personnalisée. 


|  Query  |  Description  | 
| --- | --- | 
|  \$1"find": "fields", "type": "keyword"\$1  |  Renvoie une liste de noms de champs avec le type d'indexkeyword.  | 
|  \$1"find": "terms", "field": "@hostname", "size": 1000\$1  |  Renvoie une liste de valeurs pour un champ à l'aide de l'agrégation de termes. La requête utilisera la plage horaire actuelle du tableau de bord comme plage de temps pour la requête.  | 
|  \$1"find": "terms", "field": "@hostname", "query": '<lucene query>'\$1  |  Renvoie une liste de valeurs pour un champ en utilisant l'agrégation de termes et un filtre de requête Lucene spécifié. La requête utilisera la plage horaire actuelle du tableau de bord comme plage de temps pour la requête.  | 

Il existe une limite de taille par défaut de 500 pour les requêtes Terms. Pour définir une limite personnalisée, définissez la propriété de taille dans votre requête. Vous pouvez utiliser d'autres variables dans la requête. L'exemple de code suivant montre la définition de requête pour une variable nommée`$host`. 

```
{"find": "terms", "field": "@hostname", "query": "@source:$source"}
```

Dans l'exemple précédent, nous utilisons une autre variable nommée `$source` dans la définition de la requête. Chaque fois que vous modifiez, via la liste déroulante, la valeur actuelle de la `$source` variable, une mise à jour de la `$host` variable est initiée. Après la mise à jour, la `$host` variable contient uniquement les noms d'hôtes filtrés en fonction, dans ce cas, de la propriété du `@source` document. 

Ces requêtes renvoient par défaut les résultats par ordre des termes (qui peuvent ensuite être triés alphabétiquement ou numériquement comme pour n'importe quelle variable). Pour produire une liste de termes triés par nombre de documents (une liste de valeurs supérieures à N), ajoutez une `orderBy` propriété de`doc_count`. Cela permet de sélectionner automatiquement un tri décroissant. L'utilisation `asc` avec doc\$1count (une liste inférieure à N) peut être effectuée en configurant`order: "asc"`, mais elle est déconseillée car cela augmente l'erreur sur le nombre de documents. Pour conserver les termes dans l'ordre du nombre de documents, définissez la liste déroulante **Trier** de la variable sur **Désactivé**. Vous pouvez également toujours utiliser **Alphabétique** pour les trier à nouveau. 

```
{"find": "terms", "field": "@hostname", "orderBy": "doc_count"}
```

#### Utilisation de variables dans les requêtes
<a name="opensearch-using-variables-in-queries"></a>

 Il existe deux syntaxes : 
+  `$<varname>`Exemple : @hostname : \$1hostname 
+  `[[varname]]`Exemple : @hostname : [[hostname]] 

 Pourquoi de deux manières ? La première syntaxe est plus facile à lire et à écrire, mais elle ne permet pas d'utiliser une variable au milieu d'un mot. Lorsque les options *Multi-valeurs* ou *Inclure toutes les valeurs* sont activées, Grafana convertit les étiquettes du texte brut en une condition compatible avec Lucene. 

 Dans l'exemple précédent, nous avons une requête Lucene qui filtre les documents en fonction de la `@hostname` propriété à l'aide d'une variable nommée. `$hostname` Il utilise également une variable dans la zone de saisie du groupe *Termes* par champ. Cela vous permet d'utiliser une variable pour modifier rapidement le mode de regroupement des données. 

### Annotations
<a name="opensearch-annotations"></a>

Les annotations vous permettent de superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord ou la vue Annotations. Grafana peut interroger n'importe quel OpenSearch index pour les événements d'annotation. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 


|  Nom  |  Description  | 
| --- | --- | 
|  Query  |  Vous pouvez laisser la requête de recherche vide ou spécifier une requête Lucene.  | 
|  Time  |  Nom du champ horaire ; il doit s'agir d'un champ de date.  | 
|  Time End  |  Le nom facultatif du champ de fin d'heure doit être un champ de date. Si cette option est définie, les annotations seront marquées comme une zone située entre l'heure et la fin de l'heure.  | 
|  Text  |  Champ de description de l'événement.  | 
|  Tags  |  Nom de champ facultatif à utiliser pour les balises d'événements (il peut s'agir d'un tableau ou d'une chaîne CSV).  | 

### Interrogation des journaux
<a name="opensearch-querying-logs-beta"></a>

 L'interrogation et l'affichage des données du journal depuis OpenSearch sont disponibles dans Explore. Pour afficher vos journaux, sélectionnez la source de OpenSearch données, puis entrez éventuellement une requête Lucene. Pour de plus amples informations, veuillez consulter [Explorez](explore.md). 

#### Requêtes de journal
<a name="opensearch-log-queries"></a>

 Une fois le résultat renvoyé, le panneau du journal affiche une liste des lignes du journal et un graphique à barres où l'axe X indique l'heure et l'axe Y indique la fréquence ou le nombre. 

#### Filtrer les messages du journal
<a name="opensearch-filter-log-messages"></a>

 Entrez éventuellement une requête Lucene dans le champ de requête pour filtrer les messages du journal. Par exemple, en utilisant une configuration Filebeat par défaut, vous devriez pouvoir `fields.level:error` afficher uniquement les messages du journal des erreurs. 

# Connectez-vous à une source de données OpenTSDB
<a name="using-opentsdb-in-AMG"></a>

 Amazon Managed Grafana propose un support avancé pour OpenTSDB. 

## Ajouter la source de données
<a name="opentsdb-adding-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous le lien **Tableaux** de bord, vous devriez trouver un lien **Sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  Sélectionnez **OpenTSDB** dans la liste déroulante **Type**. 

**Note**  
 Si le lien **Sources de données** n'apparaît pas dans le menu latéral, cela signifie que votre utilisateur actuel n'a pas le `Admin` rôle. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Url  |  Le protocole HTTP, l'adresse IP et le port de votre serveur opentsdb (le port par défaut est généralement 4242).  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.  | 
|  Version  |  Version = version opentsdb, soit <=2.1 soit 2.2.  | 
|  Resolution  |  Les métriques d'opentsdb peuvent avoir des points de données avec une résolution de la seconde ou de la milliseconde.  | 

## Éditeur de requêtes
<a name="opentsdb-query-editor"></a>

 Ouvrez un graphique en mode édition en choisissant le titre. L'éditeur de requêtes sera différent si la version de la source de données est <=2.1 ou = 2.2. Dans l'ancienne version, seules les balises pouvaient être utilisées pour interroger OpenTSDB. Mais dans cette dernière version, les filtres ainsi que les balises peuvent être utilisés pour interroger opentsdb. La politique de remplissage est également introduite dans OpenTSDB 2.2. 

**Note**  
 Lorsque vous utilisez la source de données OpenTSDB 2.2, assurez-vous d'utiliser des filtres ou des balises, car ils s'excluent mutuellement. S'ils sont utilisés ensemble, cela peut vous donner des résultats étranges. 

### Utilisation des suggestions de saisie semi-automatique
<a name="auto-complete-suggestions"></a>

 Dès que vous commencez à saisir des noms de métriques, des noms de balises et des valeurs de balises, vous devriez voir apparaître des suggestions de saisie automatique surlignées les concernant. La saisie semi-automatique ne fonctionne que si l'API de suggestion d'OpenTSDB est activée. 

## Modélisation de requêtes
<a name="opentsdb-templating-queries"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur les modèles et les variables de modèles, consultez[Modèles et variables](templates-and-variables.md). 

### Variable de requête
<a name="opentsdb-query-variable"></a>

 La source de données OpenTSDB prend en charge les requêtes de variables de modèle. Cela signifie que vous pouvez créer des variables de modèle qui récupèrent les valeurs d'OpenTSDB. Par exemple, les noms de métriques, les noms de balises ou les valeurs de balises. 

 Lorsque vous utilisez OpenTSDB avec une variable de modèle de `query` type, vous pouvez utiliser la syntaxe suivante pour la recherche. 


|  Query  |  Description  | 
| --- | --- | 
|  metrics(prefix)  |  Renvoie les noms des métriques avec un préfixe spécifique (peut être vide).  | 
|  tag\$1names(cpu)  |  Renvoie les noms de balises (c'est-à-dire les clés) pour une métrique de processeur spécifique.  | 
|  tag\$1values(cpu, hostname)  |  Renvoie les valeurs des balises pour le processeur métrique et le nom d'hôte de la clé de balise.  | 
|  suggest\$1tagk(prefix)  |  Renvoie les noms des balises (c'est-à-dire les clés) pour toutes les métriques avec un préfixe spécifique (elles peuvent être vides).  | 
|  suggest\$1tagv(prefix)  |  Renvoie les valeurs des balises pour toutes les métriques avec un préfixe spécifique (peut être vide).  | 

 Si les variables de modèle ne sont pas renseignées dans `Preview of values` la section, vous devez les activer `tsd.core.meta.enable_realtime_ts` dans les paramètres du serveur OpenTSDB. En outre, pour renseigner les métadonnées des données de séries chronologiques existantes dans OpenTSDB, vous devez exécuter `tsdb uid metasync` sur le serveur OpenTSDB. 

### Modélisation imbriquée
<a name="nested-templating"></a>

 Une variable de modèle peut être utilisée pour filtrer les valeurs de balise d'une autre variable de modèle. Le premier paramètre est le nom de la métrique, le second est la clé de balise pour laquelle vous devez trouver les valeurs de balise, puis toutes les autres variables de modèle dépendantes. Quelques exemples sont mentionnés ci-dessous pour que les requêtes de modèles imbriqués fonctionnent correctement. 


|  Query  |  Description  | 
| --- | --- | 
|  tag\$1values(cpu, hostname, env=\$1env)  |  Renvoie les valeurs des balises pour la métrique du processeur, la valeur de balise env sélectionnée et le nom d'hôte de la clé de balise.  | 
|  tag\$1values(cpu, hostname, env=\$1env, region=\$1region)  |  Renvoie les valeurs de balise pour la métrique du processeur, la valeur de balise env sélectionnée, la valeur de balise de région sélectionnée et le nom d'hôte de la clé de balise.  | 

 [Pour plus d'informations sur les requêtes métriques OpenTSDB, consultez la documentation OpenTSDB](https://opentsdb.net/docs/build/html/index.html) 

# Connect à une source de données PostgreSQL
<a name="using-postgresql-in-AMG"></a>

 Vous pouvez utiliser la source de données PostgreSQL pour interroger et visualiser les données de vos bases de données Amazon Aurora PostgreSQL. 

**Important**  
*Grafana version 8* modifie la structure de données sous-jacente des trames de données pour les sources de données Postgres, MySQL et Microsoft SQL Server. Par conséquent, le résultat d'une requête de série chronologique est renvoyé dans un format large. Pour plus d'informations, consultez la section [Format large](https://grafana.com/developers/plugin-tools/introduction/data-frames#wide-format) dans la documentation des trames de données Grafana. Pour que vos visualisations fonctionnent comme elles le faisaient avant la version 8, vous devrez peut-être effectuer des migrations manuelles. Une solution est documentée sur Github à l'adresse suivante [Postgres/MySQL/MSSQL: Breaking change in v8.0 relatif aux requêtes de séries chronologiques et à l'ordre des colonnes de données](https://github.com/grafana/grafana/issues/35534).  
Dans la *version 9 de Grafana*, la source de données PostgreSQL configure le certificat racine pour la connexion à votre base de données différemment des versions précédentes. Si vous mettez à jour votre espace de travail de la version 8 à la version 9, vous devrez peut-être modifier le mode de connexion. Pour plus d’informations, consultez [Résolution des problèmes liés aux espaces de travail mis à jour](AMG-workspace-version-update-troubleshoot.md).

## Ajouter la source de données
<a name="postgresql-adding-the-data-source"></a>

1.  Ouvrez le menu latéral en choisissant l'icône Grafana dans l'en-tête supérieur. 

1.  Dans le menu latéral, sous l'icône **de configuration**, vous devriez trouver un lien vers **les sources de données**. 

1.  Cliquez sur le bouton **\$1 Ajouter une source de données** dans l'en-tête supérieur. 

1.  **Sélectionnez **PostgreSQL** dans la liste déroulante Type.** 

### Options de source de données
<a name="postgresql-data-source-options"></a>


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux et les requêtes.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  Host  |  IP address/hostname et port optionnel de votre instance PostgreSQL. N'incluez pas le nom de la base de données. La chaîne de connexion pour la connexion à Postgres ne sera pas correcte et provoquera des erreurs.  | 
|  Database  |  Nom de votre base de données PostgreSQL.  | 
|  User  |  Login/nom d'utilisateur de l'utilisateur de la base de données. | 
|  Password  |  Mot de passe utilisateur de la base de données  | 
|  SSL Mode  |  Cette option détermine si et avec quelle priorité une TCP/IP connexion SSL sécurisée sera négociée avec le serveur.  | 
|  Max open  |  Nombre maximum de connexions ouvertes à la base de données, par défaut unlimited (Grafana v5.4\$1).  | 
|  Max idle  |  Nombre maximal de connexions dans le pool de connexions inactives, par défaut 2 (Grafana v5.4\$1).  | 
|  Max lifetime  |  Durée maximale en secondes pendant laquelle une connexion peut être réutilisée, par défaut 14400 /4 heures (Grafana v5.4\$1).  | 
|  Version  |  Cette option détermine les fonctions disponibles dans le générateur de requêtes (uniquement disponible dans Grafana 5.3\$1).  | 
|  TimescaleDB  |  TimescaleDB est une base de données de séries chronologiques créée sous forme d'extension PostgreSQL. Si cette option est activée, Grafana utilisera time\$1bucket dans la \$1\$1\$1timeGroup macro et affichera des fonctions d'agrégation spécifiques à TimescaleDB dans le générateur de requêtes (uniquement disponible dans Grafana 5.3\$1).  | 

### Intervalle de temps minimum
<a name="postgresql-min-time-interval"></a>

 Une limite inférieure pour les `$_interval` `$_interval_ms` variables. Il est recommandé de régler la fréquence d'écriture, par exemple `1m` si vos données sont écrites toutes les minutes. Cette option peut également se trouver overridden/configured dans un panneau de tableau de bord sous les options de source de données. Cette valeur **doit** être formatée sous la forme d'un nombre suivi d'un identifiant horaire valide, par exemple `1m` (1 minute) ou `30s` (30 secondes). Les identifiants horaires suivants sont pris en charge.


|  Identifiant  |  Description  | 
| --- | --- | 
|  y  |  Année  | 
|  M  |  Mois  | 
|  w  |  semaine  | 
|  d  |  jour  | 
|  h  |  Heure  | 
|  m  |  Minute  | 
|  s  |  Seconde  | 
|  ms  |  Milliseconde  | 

### Autorisations utilisateur de base de données
<a name="postgresql-database-user-permissions-important"></a>

**Important**  
 L'utilisateur de base de données que vous spécifiez lorsque vous ajoutez la source de données ne doit disposer des autorisations SELECT que sur la base de données et les tables spécifiées que vous souhaitez interroger. Grafana ne confirme pas que la requête est sûre. La requête peut inclure n'importe quelle instruction SQL. Par exemple, des instructions telles que `DELETE FROM user;` et `DROP TABLE user;` seraient exécutées. Pour vous protéger contre cela, nous vous recommandons vivement de créer un utilisateur PostgreSQL spécifique avec des autorisations restreintes. 

L'exemple de code suivant montre la création d'un utilisateur PostgreSQL spécifique avec des autorisations restreintes. 

```
 CREATE USER grafanareader WITH PASSWORD 'password';
 GRANT USAGE ON SCHEMA schema TO grafanareader;
 GRANT SELECT ON schema.table TO grafanareader;
```

 Assurez-vous que l'utilisateur n'obtient aucune autorisation indésirable de la part du rôle public. 

## Éditeur de requêtes
<a name="postgresql-query-editor"></a>

 Vous trouverez l'éditeur de requêtes PostgreSQL dans l'onglet métriques du mode d'édition du panneau Graph ou Singlestat. Vous passez en mode édition en choisissant le titre du panneau, puis en le modifiant. 

 L'éditeur de requêtes possède un lien **SQL généré** qui s'affiche après l'exécution d'une requête, en mode édition du panneau. Choisissez-le, il se développera et affichera la chaîne SQL interpolée brute qui a été exécutée. 

### Sélectionnez le tableau, la colonne horaire et la colonne métrique (FROM)
<a name="postgresql-select-table-time-column-and-metric-column-from"></a>

 Lorsque vous entrez en mode édition pour la première fois ou que vous ajoutez une nouvelle requête, Grafana essaie de préremplir le générateur de requêtes avec la première table contenant une colonne d'horodatage et une colonne numérique. 

 Dans le champ FROM, Grafana proposera des tables qui se trouvent dans le fichier de l'utilisateur `search_path` de la base de données. Pour sélectionner une table ou une vue qui ne figure pas dans votre tableau, `search_path` vous pouvez saisir manuellement un nom complet (schema.table) tel que. `public.metrics` 

 Le champ de colonne Heure fait référence au nom de la colonne contenant vos valeurs temporelles. La sélection d'une valeur pour le champ de colonne métrique est facultative. Si une valeur est sélectionnée, le champ de colonne métrique sera utilisé comme nom de série. 

 Les suggestions de colonnes métriques ne contiendront que des colonnes contenant un type de données texte (char, varchar, texte). Pour utiliser une colonne avec un type de données différent comme colonne métrique, vous pouvez saisir le nom de la colonne avec un transtypage :`ip::text`. Vous pouvez également saisir des expressions SQL arbitraires dans le champ de la colonne métrique qui correspondent à un type de données texte tel que`hostname || ' ' || container_name`. 

### Colonnes, fenêtres et fonctions d'agrégation (SELECT)
<a name="columns-window-and-aggregation-functions-select"></a>

 Dans la `SELECT` ligne, vous pouvez spécifier les colonnes et les fonctions que vous souhaitez utiliser. Dans le champ de colonne, vous pouvez écrire des expressions arbitraires au lieu d'un nom de colonne tel que`column1 * column2 / column3`. 

 Les fonctions disponibles dans l'éditeur de requêtes dépendent de la version de PostgreSQL que vous avez sélectionnée lors de la configuration de la source de données. Si vous utilisez des fonctions d'agrégation, vous devez regrouper votre jeu de résultats. Si vous ajoutez une fonction d'agrégation, l'éditeur ajoutera automatiquement un`GROUP BY time`. 

L'éditeur essaie de simplifier et d'unifier cette partie de la requête. 

Vous pouvez ajouter d'autres colonnes de valeur en cliquant sur le bouton plus et en sélectionnant **Colonne** dans le menu. Les colonnes de valeurs multiples seront tracées sous forme de séries distinctes dans le panneau graphique. 

### Filtrage des données (WHERE)
<a name="postgresql-filter-data-where"></a>

 Pour ajouter un filtre, cliquez sur l'icône plus à droite de la `WHERE` condition. Vous pouvez supprimer des filtres en choisissant le filtre et en sélectionnant **Supprimer**. Un filtre pour la plage de temps actuellement sélectionnée est automatiquement ajouté aux nouvelles requêtes.

### Grouper par
<a name="postgresql-group-by"></a>

 Pour regrouper par heure ou par toute autre colonne, cliquez sur l'icône plus à la fin de la ligne GROUPER PAR. La liste déroulante des suggestions n'affiche que les colonnes de texte du tableau actuellement sélectionné, mais vous pouvez saisir manuellement n'importe quelle colonne. Vous pouvez supprimer le groupe en choisissant l'élément, puis en sélectionnant **Supprimer**. 

 Si vous ajoutez un regroupement, une fonction d'agrégation doit être appliquée à toutes les colonnes sélectionnées. Le générateur de requêtes ajoute automatiquement des fonctions d'agrégation à toutes les colonnes sans fonctions d'agrégation lorsque vous ajoutez des groupements. 

#### Combler les lacunes
<a name="postgresql-gap-filling"></a>

 Amazon Managed Grafana peut renseigner les valeurs manquantes lorsque vous les regroupez par heure. La fonction time accepte deux arguments. Le premier argument est la fenêtre temporelle selon laquelle vous souhaitez effectuer le regroupement, et le second argument est la valeur avec laquelle vous souhaitez que Grafana remplisse les éléments manquants. 

### Mode éditeur de texte (RAW)
<a name="postgresql-text-editor-mode-raw"></a>

 Vous pouvez passer en mode éditeur de requête brut en choisissant l'icône en forme de hamburger et en sélectionnant **Changer le mode éditeur** ou en choisissant **Modifier le code SQL** sous la requête. 

**Note**  
 Si vous utilisez l'éditeur de requête brut, assurez-vous que votre requête contient `ORDER BY time` au minimum un filtre sur la plage de temps renvoyée. 

## Macros
<a name="postgresql-macros"></a>

 Les macros peuvent être utilisées dans une requête pour simplifier la syntaxe et autoriser les parties dynamiques. 


|  Exemple de macro  |  Description  | 
| --- | --- | 
|  \$1\$1\$1time(dateColumn)  |  Sera remplacée par une expression à convertir en horodatage UNIX et à renommer la colonne en. time\$1sec Par exemple, UNIX\$1TIMESTAMP (DateColumn) en tant que time\$1sec.  | 
|  \$1\$1\$1timeEpoch(dateColumn)  |  Sera remplacée par une expression à convertir en horodatage UNIX et à renommer la colonne en. time\$1sec Par exemple, UNIX\$1TIMESTAMP (DateColumn) en tant que time\$1sec. | 
|  \$1\$1\$1timeFilter(dateColumn)  |  Sera remplacé par un filtre de plage de temps utilisant le nom de colonne spécifié. Par exemple, DateColumn BETWEEN FROM\$1UNIXTIME (1494410783) ET FROM\$1UNIXTIME (1494410983).  | 
|  \$1\$1\$1timeFrom()  |  Sera remplacé par le début de la sélection d'heure actuellement active. Par exemple, FROM\$1UNIXTIME (1494410783). | 
|  \$1\$1\$1timeTo()  |  Sera remplacé à la fin de la sélection d'heure actuellement active. Par exemple, FROM\$1UNIXTIME (1494410983).  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m')  |  Sera remplacée par une expression utilisable dans la clause GROUP BY. Par exemple, cast (cast (UNIX\$1TIMESTAMP (DateColumn)/(300) comme signé) 300 comme signé), \$1  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', 0)  |  Identique à la ligne précédente, mais avec un paramètre de remplissage, les points manquants dans cette série seront ajoutés par grafana et 0 sera utilisé comme valeur.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', NULL)  |  Comme ci-dessus, mais NULL sera utilisé comme valeur pour les points manquants.  | 
|  \$1\$1\$1timeGroup(dateColumn,'5m', previous)  |  Comme ci-dessus, mais la valeur précédente de cette série sera utilisée comme valeur de remplissage si aucune valeur n'a été vue, mais la valeur NULL sera utilisée (uniquement disponible dans Grafana 5.3\$1).  | 
|  \$1\$1\$1timeGroupAlias(dateColumn,'5m')  |  Sera remplacé de la même manière que \$1\$1\$1timeGroup mais avec un alias de colonne ajouté  | 
|  \$1\$1\$1unixEpochFilter(dateColumn) |  Sera remplacé par un filtre de plage horaire utilisant le nom de colonne spécifié avec les heures représentées par un horodatage Unix. Par exemple, \$1DateColumn > 1494410783 ET DateColumn < 1494497183\$1  | 
| \$1\$1\$1unixEpochFrom()`  | \$1 Sera remplacé par le début de la sélection d'heure actuellement active sous forme d'horodatage Unix. Par exemple, \$11494410783\$1 | 
| \$1\$1\$1unixEpochTo() | Sera remplacé par la fin de la sélection d'heure actuellement active sous forme d'horodatage Unix. Par exemple, \$11494497183\$1 | 
| \$1\$1\$1unixEpochNanoFilter(dateColumn) | Sera remplacé par un filtre de plage de temps utilisant le nom de colonne spécifié, les heures étant représentées par un horodatage en nanosecondes. Par exemple, \$1DateColumn > 1494410783152415214 ET DateColumn < 1494497183142514872\$1 | 
| \$1\$1\$1unixEpochNanoFrom() | Sera remplacé par le début de la sélection temporelle actuellement active sous forme d'horodatage en nanosecondes. Par exemple, \$11494410783152415214\$1 | 
| \$1\$1\$1unixEpochNanoTo() | Sera remplacé par la fin de la sélection temporelle actuellement active sous forme d'horodatage en nanosecondes. Par exemple, \$11494497183142514872\$1 | 
| \$1\$1\$1unixEpochGroup(dateColumn,"5m", [fillmode]) | Identique à \$1\$1\$1timeGroup mais pour les heures stockées sous forme d'horodatage Unix. | 

## Requêtes de table
<a name="postgresql-table-queries"></a>

 Si l'option de requête est définie sur **Formater en tant que table**, vous pouvez essentiellement effectuer n'importe quel type de requête SQL. Le panneau du tableau affiche automatiquement les résultats des colonnes et des lignes renvoyées par votre requête. 

 Vous pouvez contrôler le nom des colonnes du panneau Table à l'aide de la syntaxe `as` SQL classique de sélection des colonnes. 

## Requêtes de séries chronologiques
<a name="postgresql-time-series-queries"></a>

 Si vous **définissez Format** sur`Time series`, pour une utilisation dans un panneau graphique par exemple, la requête doit renvoyer une colonne nommée `time` qui renvoie soit une date SQL, soit un type de données numérique représentant l'époque Unix. Toute colonne sauf `time` et `metric` est traitée comme une colonne de valeur. Vous pouvez renvoyer une colonne nommée `metric` qui est utilisée comme nom de métrique pour la colonne de valeurs. Si vous renvoyez plusieurs colonnes de valeurs et qu'une colonne est nommée`metric`, cette colonne est utilisée comme préfixe pour le nom de série. 

 Les ensembles de résultats des requêtes de séries chronologiques doivent être triés par ordre chronologique. 

 L'exemple de code suivant montre une `metric` colonne. 

```
SELECT
  $__timeGroup("time_date_time",'5m'),
  min("value_double"),
  'min' as metric
FROM test_data
WHERE $__timeFilter("time_date_time")
GROUP BY time
ORDER BY time
```

 L'exemple de code suivant montre comment utiliser le paramètre fill dans la macro \$1\$1\$1TimeGroup pour convertir des valeurs nulles en zéro à la place. 

```
SELECT
  $__timeGroup("createdAt",'5m',0),
  sum(value) as value,
  measurement
FROM test_data
WHERE
  $__timeFilter("createdAt")
GROUP BY time, measurement
ORDER BY time
```

 L'exemple de code suivant montre plusieurs colonnes. 

```
SELECT
  $__timeGroup("time_date_time",'5m'),
  min("value_double") as "min_value",
  max("value_double") as "max_value"
FROM test_data
WHERE $__timeFilter("time_date_time")
GROUP BY time
ORDER BY time
```

## Création de modèles
<a name="postgresql-templating"></a>

 Au lieu de coder en dur des éléments tels que le nom du serveur, de l'application et du capteur dans vos requêtes métriques, vous pouvez utiliser des variables à leur place. Les variables sont affichées sous forme de boîtes de sélection déroulantes en haut du tableau de bord. Vous pouvez utiliser ces listes déroulantes pour modifier les données affichées dans votre tableau de bord. 

 Pour plus d'informations sur la création de modèles et les variables de modèle, consultez[Modèles](templates-and-variables.md#templates). 

### Variable de requête
<a name="postgresql-query-variable"></a>

 Si vous ajoutez une variable de modèle de ce type`Query`, vous pouvez écrire une requête PostgreSQL qui peut renvoyer des éléments tels que des noms de mesures, des noms de clés ou des valeurs de clé affichées sous forme de zone de sélection déroulante. 

 Par exemple, vous pouvez avoir une variable contenant toutes les valeurs de la `hostname` colonne d'une table si vous spécifiez une requête comme celle-ci dans le paramètre *Query* de la variable de modèle. 

```
SELECT hostname FROM host
```

 Une requête peut renvoyer plusieurs colonnes et Grafana créera automatiquement une liste à partir de celles-ci. Par exemple, la requête suivante renverra une liste contenant les valeurs de `hostname` et`hostname2`. 

```
SELECT host.hostname, other_host.hostname2 FROM host JOIN other_host ON host.city = other_host.city
```

 Pour utiliser des macros dépendantes d'une plage de temps, comme `$__timeFilter(column)` dans votre requête, le mode d'actualisation de la variable de modèle doit être défini *sur On Time Range Change*. 

```
SELECT event_name FROM event_log WHERE $__timeFilter(time_column)
```

 Une autre option est une requête qui permet de créer une key/value variable. La requête doit renvoyer deux colonnes nommées `__text` et`__value`. La valeur de la `__text` colonne doit être unique (si elle ne l'est pas, la première valeur est utilisée). Les options de la liste déroulante comporteront un texte et une valeur qui vous permettront d'avoir un nom convivial sous forme de texte et un identifiant comme valeur. Exemple de requête avec `hostname` comme texte et `id` comme valeur : 

```
SELECT hostname AS __text, id AS __value FROM host
```

 Vous pouvez également créer des variables imbriquées. En utilisant une variable nommée`region`, vous pouvez faire en sorte que la variable hosts n'affiche que les hôtes de la région actuellement sélectionnée. L'exemple de code suivant montre une requête de ce type (s'il s'`region`agit d'une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de la comparer `=` à plusieurs valeurs). 

```
SELECT hostname FROM host  WHERE region IN($region)
```

#### Utilisation `__searchFilter` pour filtrer les résultats dans une variable de requête
<a name="postgresql-using-__searchfilter-to-filter-results-in-query-variable"></a>

 L'utilisation `__searchFilter` du champ de requête filtrera le résultat de la requête en fonction de ce que l'utilisateur saisit dans la zone de sélection déroulante. Lorsque rien n'a été saisi par l'utilisateur, la valeur par défaut `__searchFilter` est`%`. 

**Note**  
 Il est important que vous entouriez l'`__searchFilter`expression de guillemets, car Grafana ne le fait pas pour vous. 

 L'exemple suivant montre comment l'utiliser `__searchFilter` dans le champ de requête pour activer la recherche `hostname` pendant que l'utilisateur tape dans la zone de sélection déroulante. 

```
SELECT hostname FROM my_host  WHERE hostname LIKE '$__searchFilter'
```

### Utilisation de variables dans les requêtes
<a name="postgresql-using-variables-in-queries"></a>

 Les valeurs des variables de modèle ne sont citées que lorsque la variable de modèle est un`multi-value`. 

 Si la variable est une variable à valeurs multiples, utilisez l'opérateur de `IN` comparaison plutôt que de `=` la comparer à plusieurs valeurs. 

 Il existe deux syntaxes : 

 `$<varname>`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  atimestamp as time,
  aint as value
FROM table
WHERE $__timeFilter(atimestamp) and hostname in($hostname)
ORDER BY atimestamp ASC
```

 `[[varname]]`Exemple avec une variable de modèle nommée `hostname` : 

```
SELECT
  atimestamp as time,
  aint as value
FROM table
WHERE $__timeFilter(atimestamp) and hostname in([[hostname]])
ORDER BY atimestamp ASC
```

#### Désactiver les guillemets pour les variables à valeurs multiples
<a name="postgresql-disabling-quoting-for-multi-value-variables"></a>

 Amazon Managed Grafana crée automatiquement une chaîne entre guillemets séparée par des virgules pour les variables à valeurs multiples. Par exemple : si `server01` et `server02` sont sélectionnés, ils seront formatés comme suit :`'server01', 'server02'`. Pour désactiver les guillemets, utilisez l'option de formatage csv pour les variables. 

 `${servers:csv}` 

 Pour plus d'informations sur les options de mise en forme des variables, consultez[Modèles et variables](templates-and-variables.md). 

## Annotations
<a name="postgresql-annotations"></a>

 Utilisez des annotations pour superposer des informations détaillées sur les événements au-dessus des graphiques. Vous pouvez ajouter des requêtes d'annotation via le menu Tableau de bord/Vue des annotations. Pour de plus amples informations, veuillez consulter [Annotations](dashboard-annotations.md). 

 L'exemple de code suivant montre une requête utilisant une colonne de temps avec des valeurs d'époque. 

```
SELECT
  epoch_time as time,
  metric1 as text,
  concat_ws(', ', metric1::text, metric2::text) as tags
FROM
  public.test_data
WHERE
  $__unixEpochFilter(epoch_time)
```

 L'exemple de code suivant montre une requête de région utilisant des colonnes d'heure et de fin de période avec des valeurs d'époque. 

**Note**  
 Ceci n'est disponible que dans Grafana v6.6 et versions ultérieures. 

```
SELECT
  epoch_time as time,
  epoch_time_end as timeend,
  metric1 as text,
  concat_ws(', ', metric1::text, metric2::text) as tags
FROM
  public.test_data
WHERE
  $__unixEpochFilter(epoch_time)
```

 L'exemple de code suivant montre une requête utilisant une colonne de temps de type date/time SQL natif. 

```
SELECT
  native_date_time as time,
  metric1 as text,
  concat_ws(', ', metric1::text, metric2::text) as tags
FROM
  public.test_data
WHERE
  $__timeFilter(native_date_time)
```


|  Nom  |  Description  | 
| --- | --- | 
|  time  |  Le nom du date/time champ. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque.  | 
|  timeend  |  Nom facultatif du date/time champ de fin. Il peut s'agir d'une colonne avec un type de date/time données SQL natif ou une valeur d'époque (Grafana v6.6\$1). | 
|  text  |  Champ de description de l'événement.  | 
|  tags  |  Nom de champ facultatif à utiliser pour les balises d'événements sous forme de chaîne séparée par des virgules.  | 

## Alerte
<a name="postgresql-alerting"></a>

 Les requêtes de séries chronologiques devraient fonctionner dans des conditions d'alerte. Les requêtes mises en forme de tableau ne sont pas encore prises en charge dans les conditions des règles d'alerte. 

# Connectez-vous à une source de données Tempo
<a name="tempo-data-source"></a>

 Tempo est une solution de suivi OSS et de stockage de traces de dépendances à volume élevé et minimale de Grafana Labs. 

## Ajouter la source de données
<a name="tempo-adding-the-data-source"></a>

 Pour accéder aux paramètres de tempo, choisissez l'icône de **configuration** (engrenage), puis choisissez **Sources de données**, puis choisissez **Tempo**. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Nom sous lequel vous allez faire référence à la source de données dans les panneaux, les requêtes et Explore.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  URL  |  L'URL de l'instance Tempo ; par exemple,http://tempo.  | 
|  Basic Auth  |  Activez l'authentification de base auprès de la source de données Tempo.  | 
|  User  |  Nom d'utilisateur pour l'authentification de base.  | 
|  Password  |  Mot de passe pour l'authentification de base.  | 

## Trace vers les journaux
<a name="tempo-trace-to-logs"></a>

 Il s'agit d'une configuration pour la fonctionnalité de suivi dans les journaux. La source de données cible doit actuellement être Loki. Pour de plus amples informations, veuillez consulter [Intégration du traçage](explore.md#tracing-integration). 
+ **Source de données : source** de données cible.
+ **Balises** — Les balises qui seront utilisées dans la requête Loki. La valeur par défaut est `'cluster', 'hostname', 'namespace', pod'`.
+ Décalage de l'**heure de début de l'intervalle : décalage** de l'heure de début de la requête Loki en fonction de l'heure de début de l'intervalle. Pour étendre jusqu'au passé, vous devez utiliser une valeur négative. Les unités de temps peuvent être utilisées ici, par exemple, 5s, 1m, 3h. La valeur par défaut est 0.
+ Décalage **horaire de fin de l'intervalle : décalage** de l'heure de fin de la requête Loki en fonction de l'heure de fin de l'intervalle. Les unités de temps peuvent être utilisées ici, par exemple, 5s, 1m, 3h. La valeur par défaut est 0.

## Traces de requêtes
<a name="tempo-query-traces"></a>

 Vous pouvez interroger et afficher des traces depuis Tempo via Explore. Vous pouvez rechercher des traces si vous configurez le paramètre de suivi dans les journaux sur la page de configuration de la source de données. Pour trouver des traces à visualiser, utilisez l'éditeur de requêtes Loki. Pour obtenir des résultats de recherche, vous devez avoir configuré des champs dérivés pointant vers cette source de données. 

Pour interroger une trace particulière, sélectionnez le type de requête TraceID, puis saisissez l'ID dans le champ Trace ID.

## Lien vers l'ID de trace à partir des journaux
<a name="tempo-linking-trace-id-from-logs"></a>

 Vous pouvez créer un lien vers Tempo Trace à partir des journaux de Loki ou d'Elastic en configurant un lien interne. Pour de plus amples informations, veuillez consulter [Champs dérivés](using-loki-in-AMG.md#loki-derived-fields). 

# Configuration d'une source TestData de données à des fins de test
<a name="testdata-data-source"></a>

Grafana est fourni avec une source de TestData données qui crée des séries chronologiques simulées pour n'importe quel panneau. Vous pouvez l'utiliser pour créer vos propres séries chronologiques fausses et aléatoires et les afficher dans n'importe quel panneau, ce qui vous permet de vérifier le fonctionnement du tableau de bord et de partager les données en toute sécurité et facilement.

**Configuration de la source de données**

**Pour accéder à la configuration de la source de données pour TestData**

1. Choisissez l'icône **de configuration** (engrenage).

1. Choisissez **Sources de données**.

1. choisir **TestData**.

La source de données ne fournit aucun paramètre autre que les options les plus élémentaires communes à toutes les sources de données :


|  Nom  |  Description  | 
| --- | --- | 
|  `Name`  |  Nom de la source de données dans les panneaux, les requêtes et Explore.  | 
|  `Default`  |  Si cette source de données sera présélectionnée pour les nouveaux panels.  | 

**Création de données fictives**

Une fois la source de TestData données ajoutée, les utilisateurs de votre instance Grafana peuvent l'utiliser comme source de données dans n'importe quel panneau de mesures, et elle fournira des données fictives que vous pourrez utiliser, en fonction du TestData scénario que vous aurez choisi.

**Choisissez un scénario**

Au lieu de fournir un éditeur de requêtes, la source de TestData données vous aide à sélectionner un **scénario** qui génère des données simulées pour les panneaux.

Vous pouvez attribuer un **alias** à chaque scénario, et bon nombre d'entre eux ont leurs propres options qui apparaissent lorsqu'ils sont sélectionnés.

**Scénarios disponibles :**
+ **Annotations**
+ **Erreur conditionnelle**
+ **Contenu CSV**
+ **Fichier CSV**
+ **Valeurs métriques CSV**
+ **Points de données hors de portée**
+ **Données du bucket avec carte thermique exponentielle**
+ **API Grafana**
+ **Grafana en direct**
+ **Données du godet par carte thermique linéaire**
+ **Charger les données Apache Arrow**
+ **Journaux**
+ **Aucun point de données**
+ **Graphe de nœuds**
+ **Vague CSV prévisible**
+ **Pouls prévisible**
+ **Randonnée aléatoire**
+ **Random Walk (avec erreur)**
+ **Table de marche aléatoire**
+ **Cadres bruts**
+ **Simulation**
+ **Requête lente**
+ **Client de diffusion**
+ **Tableau statique**
+ **Données générées aux États-Unis**

**Importer un tableau de bord préconfiguré**

TestData fournit également un exemple de tableau de bord.

**Pour importer l'exemple de tableau de bord**

1. Accédez à la page de configuration de la source de données.

1. Sélectionnez l'onglet **Tableaux de bord**.

1. Sélectionnez **Importer** pour le tableau de bord **Simple Streaming Example**.

**Pour personnaliser un tableau de bord importé :**

Pour personnaliser le tableau de bord importé, nous vous recommandons de l'enregistrer sous un autre nom. Si ce n'est pas le cas, la mise à niveau de Grafana peut remplacer le tableau de bord personnalisé par la nouvelle version.

**Utiliser les données de test pour signaler les problèmes**

Si vous signalez un problème lié GrafanaLabs à GitHub l'utilisation ou au rendu de données de séries chronologiques, nous vous recommandons vivement d'utiliser cette source de données pour reproduire le problème. Cela permet aux développeurs de reproduire et de résoudre votre problème beaucoup plus facilement.

# Connect à une source de données Zipkin
<a name="zipkin-data-source"></a>

 Zipkin est un système de traçage distribué open source. Ajoutez la source de données Zipkin pour pouvoir interroger vos traces dans Explore in Amazon Managed Grafana 

## Ajouter la source de données
<a name="zipkin-adding-the-data-source"></a>

 Pour accéder aux paramètres Zipkin, cliquez sur l'icône **Configuration** (engrenage), puis sur **Sources de données**, puis sur **Zipkin**. 


|  Nom  |  Description  | 
| --- | --- | 
|  Name  |  Le nom de la source de données. C'est ainsi que vous voyez la source de données dans les panneaux, les requêtes et Explore.  | 
|  Default  |  La source de données par défaut signifie qu'elle sera présélectionnée pour les nouveaux panneaux.  | 
|  URL  |  URL de l'instance Zipkin, http://localhost:9411 par exemple.  | 
|  Access  |  Serveur (par défaut) = L'URL doit être accessible depuis le backend/serveur Grafana.  | 
|  Basic Auth  |  Activez l'authentification de base auprès de la source de données Zipkin.  | 
|  User  |  Nom d'utilisateur pour l'authentification de base.  | 
|  Password  |  Mot de passe pour l'authentification de base.  | 

## Traces de requêtes
<a name="zipkin-query-traces"></a>

 L'interrogation et l'affichage des traces depuis Zipkin sont disponibles via Explore. 

 L'éditeur de requêtes Zipkin vous permet d'effectuer une requête directement par identifiant de trace ou de sélectionner une trace dans le sélecteur de trace. Pour effectuer une requête par ID de trace, insérez l'ID dans la saisie de texte. 

 Utilisez le sélecteur de trace pour sélectionner une trace particulière parmi toutes les traces enregistrées dans la plage de temps que vous avez sélectionnée dans Explore. Le sélecteur de trace comporte trois niveaux d'imbrication : 1. Le service qui vous intéresse 1. Une opération particulière fait partie du service sélectionné 1. Trace spécifique dans laquelle l'opération sélectionnée s'est produite, représentée par le nom de l'opération racine et la durée de la trace. 

## Cartographie des données dans l'interface utilisateur de suivi
<a name="zipkin-data-mapping-in-the-trace-ui"></a>

 Les annotations Zipkin sont affichées dans la vue de trace sous forme de journaux dont la valeur d'annotation est affichée sous la clé d'annotation. 

## Lien vers l'ID de trace à partir des journaux
<a name="zipkin-linking-trace-id-from-logs"></a>

 Vous pouvez créer un lien vers Zipkin Trace à partir des journaux de Loki en configurant un champ dérivé avec un lien interne. Pour de plus amples informations, veuillez consulter [Champs dérivés](using-loki-in-AMG.md#loki-derived-fields). 