6
Visibilité en profondeur
TRACES
• Hiérarchie de spans
• Durée, attributs, logs, …
• Environment distribué
• Services graph
• Noms des attributs ?
• Relation avec les logs et
metrics ?
• Jaeger
Slide 7
Slide 7 text
7
Les 3 pilliers…
LE PROBLEME
Silos
• 1 source (application)
• Plusieurs chemins
• Plusieurs destinations
• Pas de vision unifiée
• Duplication
• Connaissances &
compétences
• Temps d’intervention
• …
Slide 8
Slide 8 text
8
NOTRE OBJECTIF
Vision unifiée
• Une seule UI
• Correlation
• Evolutive
18
Et si on générait les logs et
metrics à partir des traces ?
Slide 19
Slide 19 text
19
DEMO
Slide 20
Slide 20 text
20
OPENTELEMETRY COLLECTOR – PIPELINES @ UBISOFT
Slide 21
Slide 21 text
21
LOGS, METRICS OU TRACES ?
Slide 22
Slide 22 text
22
Quand ?
• Compléter des
metrics/logs manquant
• Requêtes HTTP
• Interactions entre
services – client &
serveur
• Applications tierces
Comment ?
• Processeur
OpenTelemetry
Collector
• Histogram basé sur les
spans
Avantages ?
• Simplification de
l’instrumentation du
code
• Correlation
automatique
(exemplars)
• Rétention des metrics
• Vues différentes
GENERATION AUTOMATIQUE DE METRICS / LOGS
Slide 23
Slide 23 text
23
Agent
• Kubernetes DaemonSet
• Collecte de logs par
nœud
• Collecte de metrics
Prometheus par nœud
• Collecte d’informations
du kubelet (par nœud)
• Collecte d’informations
de la machine
• Réception de spans à
travers un service
kubenetes
STRATEGIES DE DEPLOIEMENT DU COLLECTEUR
Slide 24
Slide 24 text
24
Standalone
• Kubernetes Deployment
• Collecte d’informations
du cluster Kubernetes
• Collecte de metrics
Prometheus au niveau
des services kubernetes
• (réception de spans à
travers un service
kubenetes)
• …
STRATEGIES DE DEPLOIEMENT DU COLLECTEUR
Slide 25
Slide 25 text
25
Sidecar
• Kubernetes Container
• Interopérabilité entre
l’app et l’environment
• Collecte des traces
• Facilité de mise en place
• Otelcol Operator –
injection automatique
dans les pods Kubernetes
STRATEGIES DE DEPLOIEMENT DU COLLECTEUR
Slide 26
Slide 26 text
26
POC / Demo
• Instrumentation
automatique en Java
et Python
• Collecteur
• Plateforme unifiée
• Grafana
• SaaS ?
Code existant
• Interopérabilité
• Comblez les trous –
avec des traces ?
• Sidecar
Nouveau code
• Uniquement des
traces?
• Limiter au maximum la
duplication
• Conventions de
nommage
Workshop CNCF Paris – OpenTelemetry, jeudi 12 mai à Ubisoft
https://meetup.com/Cloud-Native-Computing-Paris/
PAR OU COMMENCER ?
Slide 27
Slide 27 text
27
OpenTelemetry
Collector
• Encore plus
d’unification entre les
logs/metrics/traces
• « Control Plane »:
contrôle de la
configuration à
distance
Instrumentation
automatique
• eBPF
• Pixie
Continuous Profiling
• Nouveaux outils
inspirés de
Prometheus: Parca,
Pyroscope
• Intégration entre
Pyroscope et les traces
d’OpenTelemetry
• Metrics -> Trace ->
Profile
ET ENSUITE ?
Slide 28
Slide 28 text
28
DEMO
Slide 29
Slide 29 text
29
Prise de conscience
• Combien de temps
pour trouver la « root
cause » ?
• Combien d’outils
différents ?
• Quel effort
d’instrumentation ?
Commencer par les
traces
• Comblez les trous
• Génération de metrics
/ logs automatique
• Convention de
nommage
• Intéropérabilité
Plateforme unifiée
• SaaS ou on-premise ?
• Correlation
• Experience unifiée
• Root-cause analysis
CONCLUSION