Tango

Le défi

Comment s'assurer qu'une plateforme de communication offre bien une expérience haut-de-gamme à ses 250 millions de clients dans le monde entier ?

La solution

Utiliser la suite ELK pour monitorer les logs et gérer les performances en temps réel.

FAITS MARQUANTS DE L’ETUDE DE CAS

Fournir des performances élevées

  • Suivre le rythme du secteur
  • Améliorer à 100 % la productivité opérationnelle
  • Réduire le délai de réponse en cas de problème: de quelques jours à quelques minutes

Fournir des indicateurs exploitables

  • Fournir au client une expérience incomparable
  • Maintenir une haute disponibilité et des performances irréprochables
  • Obtenir des connaissances précieuses en termes de veille stratégique

Offrir un service fiable à 250 millions de clients

Tango est un service de messagerie gratuite sur mobile basé en Californie, avec plus de 250 millions d'utilisateurs inscrits dans 224 pays. Grâce à son offre de communication, ses fonctionnalités sociales et sa plateforme de contenu inédite, Tango propose à ses utilisateurs un média attrayant pour se connecter, échanger sur un réseau social et s'amuser.

« Dans notre secteur, l'expérience du client est un aspect crucial, » explique Guy Fighel, directeur de l'ingénierie chez Tango. « à chaque panne, à chaque dégradation de nos performances, nous perdons un client sur l'application incriminée… Et si cette situation se répète trop souvent, le client en question se tourne vers la concurrence. Notre priorité absolue est d'assurer le fonctionnement en continu, avec d'excellentes performances et une durée d'indisponibilité minimale. »

L'analyse des logs est une approche efficace pour la gestion des performances. Par le passé, Tango utilisait des outils de ligne de commande, pour atteindre manuellement les logs sur le back-end. Côté client, tous les logs étaient placés sur une énorme base de données, mais encore fallait-il savoir ce que l'on cherche et où le trouver. L'entreprise ne possédait pas non plus de capacités critiques, comme la corrélation d'événements en provenance du back-end et du client, ou encore les alertes relatives à des incidents ou à des seuils. En conséquence, les délais de réponse aux problèmes de performance n'étaient pas assez courts.

« Nous étions totalement aveugles à certains événements, » explique M. Fighel. « Et lorsque nous nous en apercevions, c'était déjà trop tard, et nous étions en pleine crise. »

Utiliser ELK pour améliorer à 100 % la productivité opérationnelle

Tango a déployé la suite ELK complète pour obtenir une meilleure visibilité sur ses logs, à des fins de monitoring et de dépannage de ses infrastructures. Elasticsearch, ici le moteur principal de recherche et d'analyses, est au cœur de la suite, tandis que Logstash sert de pipeline aux données et que Kibana est l'outil qui permet de les visualiser.

« Grâce à ELK, il nous est possible d'effectuer dans les logs des recherches en fonction du type, de l'horodatage ou de la provenance des données… tous les paramètres sont à notre disposition, » explique M. Fighel.

Tango envoie les logs, via Logstash, depuis les serveurs jusqu'à un cluster Redis, puis vers Elasticsearch. En cours de traitement, la suite ELK extrait tous les logs du back-end, tout en insérant tous les logs de clients partout dans le monde, puis met toutes ces données en relation. Enfin, Kibana sert de tableau de bord.

« Nous savons à quoi nous attendre de la part de nos clients, aussi pouvons-nous repérer la moindre variation des performances, » poursuit M. Fighel. « ELK nous donne de la visibilité. Nous mesurons des délais de réponse en temps réel pour 250 millions de clients répartis dans le monde entier. C'est incroyable. C'est comme si nous étions en face à face avec le client, où qu'il soit, et je peux voir ce que fait le système, quand, et pourquoi il ne fonctionne pas bien. Voilà la vraie valeur d'ELK. »

« ELK nous a permis d'améliorer notre productivité à hauteur de 100 %, » ajoute-t-il.

« Depuis que nous avons implémenté ELK, nos délais de réponse aux problèmes de performances se sont considérablement raccourcis : cinq minutes après un incident, voire moins. Avant d'utiliser ELK, il pouvait se passer des jours avant que nous ne nous apercevions qu'il y avait un problème. »

« Pour l'entreprise, l'essentiel est qu'ELK nous fournit les capacités pour monitorer notre durée de disponibilité et nos performances, ainsi que pour analyser et résoudre les problèmes le plus vite possible, » commente M. Fighel. « Grâce à ELK, nous pouvons nous assurer que Tango bénéficie d'une grande disponibilité et fournit des performances haut-de-gamme. »

Veille stratégique par l'analyse de logs

En plus de s'en servir pour la gestion de ses performances, Tango utilise également ELK pour des opérations de veille stratégique (VS). ELK fournit par exemple à Tango des statistiques sur les fonctionnalités les plus utilisées, ou la version de Tango la plus populaire.

« ELK nous permet de réaliser quelques analyses basiques de VS, sur la base des données d'exploitation et d'infrastructure qui nous parviennent aussi bien des clients que des serveurs, » explique M. Fighel. « Cela nous permet d'identifier précisément les fonctionnalités qui plaisent, et celles qui ne tournent pas. Nous pouvons ensuite modifier une caractéristique ou en ajouter une nouvelle, afin d'améliorer l'expérience client. »

à titre d'exemple, Tango utilise ELK pour identifier les régions géographiques où ses performances sont les plus faibles, ce qui peut être dû par exemple à des réseaux moins fiables. L'entreprise peut alors conclure un partenariat avec des fournisseurs locaux de cloud afin d'améliorer ses performances grâce à une couche de proxy mise en place dans cette région.

« Ce type d'analyses se fait exclusivement avec la suite ELK, » déclare M. Fighel. « Nous n'avions auparavant aucune solution pour faire ces analyses. »

Compléter l'APM par l'analyse des logs

Tango fait appel à New Relic pour sa gestion des performances applicatives (Application Performance Management : APM) afin de s'assurer que l'application Tango fonctionne bien chez ses clients. M. Fighel estime que l'analyse des logs avec ELK est un complément essentiel pour augmenter les performances de l'APM.

« Nous utilisons ELK et l'APM de New Relic en parallèle, » souligne-t-il. « Si vous regardez mon écran, vous verrez l'APM d'un côté et Kibana de l'autre. Nous pouvons analyser les problèmes de performance des applications avec l'APM, mais ELK est là pour visualiser les logs des serveurs, ce qui représente un volumineux ensemble de données en provenance des clients. Ainsi, nous pouvons analyser sous un autre angle les problèmes relatifs à nos performances. »

Monitoring d'Elasticsearch avec Marvel

« Comment surveiller le surveillant ? » demande M. Fighel. « C'est l'éternelle question. Il est essentiel d'avoir quelque chose pour monitorer la solution de monitoring. Avant Marvel, c'était très compliqué. Nous utilisons désormais cette solution pour monitorer nos clusters Elasticsearch. Marvel nous offre la flexibilité et la facilité de monitoring de la solution Elasticsearch elle-même. »

Tango gagne à utiliser Elasticsearch, Logstash et Kibana

Réponse immédiate aux problèmes de performances

Avant d'utiliser ELK, Tango pouvait rester des jours sans localiser un problème de performance. Désormais, l'équipe Tango réagit aux problèmes en quelques minutes.

Augmentation de la productivité opérationnelle ELK

ELK évite à Tango de nombreuses tâches manuelles, ce qui a permis d'augmenter de 100 % la productivité de l'équipe.

Veille stratégique

En plus d'utiliser ELK pour la gestion de ses performances, Tango s'en sert également pour effectuer une veille stratégique sur ses logs, comme par exemple ceux concernant le comportement de ses clients, afin d'encourager ses activités et d'améliorer ses stratégies produit.

Monitoring de la fiabilité

Marvel, le nouveau système de monitoring conçu spécifiquement pour Elasticsearch, permet à Tango de s'assurer que son système de gestion des performances, essentiel à ses activités, fonctionne de façon optimale.