Visualisation par plage horaire

Bonjour,

J'aimerais mettre en place une visualisation qui me permettrai de voir, pour chaque plage horaire que je souhaites définir, le pourcentage d'activité sur cette plage horaire.

Exemple avec 3 plages horaires : 8h -18h, 18h - 00h et 00h - 8h
J'aimerai par exemple avoir : 00h-8h : 25% 8h-18h: 60% et 18h-00H:15%
Ainsi je peux voir que c'est en journée qu'il y a le plus d'activité

Pour chaque donnée j'ai un timestamp du type: "2019-06-19T06:24:05.000Z"

Merci d'avance.

Bonjour,

Oui c'est faisable.

Tu peux agréger tes visualisations par l'aggregation date range auquel tu peux définir tes plages d'horaires avec ton champs date @timestamp

[ Exemple ]
image

Parfait merci, je pensais aussi devoir utiliser cela. Je vais lire la doc pour voir quel format de date je dois appliquer pour avoir ce qu'il me faut.

Désolé de vous déranger mais je n'arrive pas mettre en place un plage horaire, est ce que vous pourriez me montrer comment faire ?

Voici une solution :

00:00 à 08:00 = from now/d-1h to now/d+7h
08:00 à 18:00 = from now/d+7h to now/d+17h
18:00 à 00:00 = now/d+17h to now/d+23h

A savoir que:

  1. now = la date de maintenant (14-02-2020 14:35 )
  2. now-1h/d est l’équivalent de 00:00 du jour. (Attention : au décalage horaire, On est à UTC+1 (si je dit pas des betises))

Et tu peux ajouter un autre Range avec le bouton Add range.
Lien qui pourrait t'aider : https://www.elastic.co/guide/en/elasticsearch/reference/7.2/common-options.html#date-math

1 Like

Dans le cas où j'ai apporté une solution à ton problème, n’hésites pas de mentionner comme Solution afin que ce ticket soit clos.

Merci pour ta réponse mais ce n'est pas tout à fais ce que je souhaites. Avec ta solution je vais voir l'activité par plage horaire uniquement sur la journée d'aujourd'hui. Cependant je souhaite que cela s'applique sur toute la période de mes logs.
Par exemple si j'ai les logs d'une année entière, je veux savoir quelle plage horaire à été la plus active sur l'année ( Ici j'ai pris l'exemple d'une année mais j'aimerais que cela s'applique sur la zone temporelle choisie par l'utilisateur )

Il faut que tu indexes ça proprement en tant que champ de tes données. Par exemple sous un champ:

"heure_debut": 8

Ou:

"plage": "08-09"

Faire ensuite une aggregation dessus.

Où utiliser les range data types.

D'accord c'est la solution que j'avais envisagé mais je pensais pourvoir la contourné avec un date range. J'ai mis la réponse ahmed comme solution mais je vais utiliser celle de dadoonet.
Merci beaucoup à vous deux pour vos réponses !