.rollup()
La fonction .rollup()
(cumul) est utilisée pour agréger les données de vos métriques automatiquement dans toutes les requêtes de métriques. Cependant, l’ajout d’une fonction .rollup()
à la fin d’une requête vous permet d’effectuer une agrégation temporelle personnalisée qui remplace la valeur par défaut. Cette fonction vous permet de définir les éléments suivants :
Remarque : les métriques de type Distribution ne prennent pas en charge le paramètre agrégateur
. Ce type de métrique est agrégé dans le temps et dans l’espace. Consultez la documentation sur le cumul pour les distributions avec centiles pour en savoir plus.
La fonction accepte deux paramètres, <AGRÉGATEUR>
et éventuellement <INTERVALLE>
: .rollup(<AGRÉGATEUR>,<INTERVALLE>)
ou .rollup(<AGRÉGATEUR>)
.
Paramètre | Description |
---|
<AGRÉGATEUR> | Ce paramètre peut être défini sur avg , sum , min , max ou count . Il détermine la façon dont les points de données sont agrégés au sein d’un intervalle donné. Valeur par défaut imposée : avg . |
<INTERVALLE> | Intervalle (en secondes) entre deux points de données affichés. Paramètre facultatif. |
Ces paramètres peuvent être utilisés séparément ou ensemble, par exemple .rollup(sum,120)
. Le graphique à barres suivant affiche l’évolution de la charge CPU sur une semaine pour un host sans utiliser la fonction .rollup()
:
Le graphique à barres suivant affiche la même métrique, mais un cumul d’une journée est cette fois-ci appliqué avec .rollup(avg,86400)
:
Cumul mobile
Fonction | Description | Exemple |
---|
moving_rollup | Effectuer un cumul pour combiner les points recueillis sur les X dernières secondes. | moving_rollup(<NOM_MÉTRIQUE>, <INTERVALLLE>, <AGRÉGATEUR>) |
Lorsque vous appliquez la fonction moving_rollup()
à une requête, vous pouvez combiner plusieurs points provenant de l’intervalle spécifié le plus récent, c’est-à-dire les X dernières secondes. Comme avec .rollup()
, la valeur de <AGRÉGATEUR>
peut être sum
/min
/max
/count
/avg
et définit la façon dont les points de données sont agrégés dans un intervalle de temps donné.
Intervalle de cumul : imposé ou personnalisé
Le nombre de points de données pouvant être affichés sur un graphique est limité par Datadog. Afin de respecter cette limite, Datadog effectue automatiquement un cumul des points de données via la méthode avg
de façon à afficher la moyenne de tous les points de données dans un intervalle de temps pour une métrique donnée. Cet intervalle de temps par défaut varie en fonction de la façon dont les données sont visualisées. Consultez le tableau suivant pour connaître ces intervalles de temps par défaut :
Intervalle de temps | Intervalle de cumul, graphique linéaire | Intervalle de cumul, graphique à barres | Intervalle de cumul, API |
---|
The past hour | 20 s | 1 min | 20 s |
The past four hours | 1 min | 2 min | 1 min |
The past day | 5 min | 20 min | 5 min |
The past two days | 10 min | 30 min | 10 min |
The past week | 1 h | 2 h | 1 h |
The past month | 2 h | 12 h | 4 h |
Une fonction .rollup()
personnalisée peut être utilisée pour obliger Datadog à appliquer un autre type d’agrégation temporelle (avg
, min
, max
, count
ou sum
) et un autre intervalle de temps entre deux points de données. Toutefois, si la fonction .rollup()
appliquée utilise un intervalle de temps inférieur à la limite de Datadog, la limite de Datadog est utilisée (la méthode de cumul spécifiée est toutefois appliquée). Par exemple, si vous demandez un intervalle de .rollup(20)
pour un mois entier, les données sont renvoyées avec un cumul supérieur à 20 secondes pour éviter que le nombre de points de données soit supérieur à la limite définie.
Remarque : lorsqu’une requête concerne des métriques de type COUNT
ou RATE
, le modificateur .as_count()
est automatiquement ajouté à l’interface. La méthode de cumul est alors définie sur sum
et l’interpolation est désactivée. Le modificateur .as_count()
est affiché explicitement à la fin de la requête :
Pour en savoir plus sur l’utilisation des modificateurs .as_count()
et .as_rate()
, consultez l’article de blog Visualiser des métriques StatsD (en anglais) ou lisez la documentation sur les modificateurs intégrés à l’application pour mieux comprendre les effets de ces fonctions.
Cumuls dans les monitors
L’utilisation d’un cumul dans une requête de monitor est généralement à éviter en raison du risque de décalage entre l’intervalle de cumul et la fenêtre d’évaluation du monitor. Le début et la fin des intervalles de cumul sont alignés sur l’heure UNIX, et non sur le début et la fin des requêtes du monitor : les monitors sont par conséquent susceptibles d’évaluer un intervalle de cumul incomplet contenant uniquement un faible volume de données, et donc de se déclencher par erreur. Pour éviter ce problème, il est nécessaire de retarder l’évaluation du monitor pendant une durée correspondant à l’intervalle de cumul (au minimum).
Autres fonctions
Consultez les autres fonctions disponibles :