Avouons-le. Toutes sortes d'outils de surveillance sont en place, et pourtant les temps d'arrêt et les erreurs sont une source importante de soucis commerciaux.
Pouvez Surveillance synthétique être la réponse?
La surveillance est une partie extrêmement critique et nécessaire de toute entreprise numérique moderne.
Vous ne pouvez pas compter sur la découverte accidentelle de bogues, ou attendre qu'un client frustré appelle, simplement parce que le coût pour l'entreprise est trop élevé.
J'aimerais pouvoir rendre les détails publics (mais les obligations contractuelles me lient), mais j'ai vu de près une entreprise perdre sa position sur le marché de la deuxième à la vingtième place, simplement parce que les plaintes des clients ne cessaient de s'accumuler. Et c'était une entreprise B2B, remarquez. Si vous pensez qu'une bonne équipe de service client (ou une équipe de «réussite» client, peu importe comment vous l'appelez) aurait pu les sauver, vous vous trompez - il y avait tout simplement trop d'erreurs inattendues dans le système qui continuaient à apparaître au hasard même après la mise en place des correctifs.
Pourquoi la surveillance ne suffit-elle pas?
La réponse à de tels problèmes commerciaux est - la surveillance! Oui, tout le monde le sait et vous, en tant qu'entreprise, en avez probablement quelques-uns systèmes de surveillance en place.
Mais le défi avec les applications du monde réel est que les pings et Disponibilité de l'API n'écrémez même pas la surface de l'application. Les applications modernes reposent sur des transactions, des entonnoirs, des connexions et plusieurs services tiers, et tout cela doit fonctionner ensemble plutôt que de travailler parfaitement de manière isolée.
Avec les systèmes de surveillance traditionnels, alors que vous pouvez être sûr que votre serveur de messagerie fonctionne et que votre serveur de paiement fonctionne, mais comment savoir si le serveur de paiement peut envoyer des e-mails transactionnels via le serveur de messagerie?
Dites bonjour 👋 à la surveillance synthétique.
Si vous avez du mal à atteindre la terre promise insaisissable où vous rencontrez des problèmes avant vos clients, la surveillance synthétique est ce dont vous avez besoin. Malgré son nom ésotérique (et le fait qu'il peut être très difficile de se coder soi-même), la surveillance synthétique est une idée assez simple à expliquer.
Il s'agit de simuler les utilisateurs d'applications sous la forme de scripts, qui passent ensuite en revue certains flux de pages prédéfinis pour vérifier que tout fonctionne comme il se doit. Veuillez noter que pour votre application, il n'y a pas de différence réelle - les demandes fonctionnent comme si elles provenaient d'un utilisateur réel, et elles impliquent d'appuyer sur des boutons et de remplir des formulaires sur les pages exactement comme le ferait un utilisateur.
La mise en place et l'exécution d'une série de tests de ce type vous permet de répondre à tout moment aux questions critiques suivantes:
- Le système est-il en place?
- Tous les sous-systèmes importants sont-ils en place?
- Les clients peuvent-ils se connecter?
- Les clients peuvent-ils localiser ce qu'ils attendaient et au bon endroit?
- Un changement de code récent a-t-il rompu une partie de l'expérience client?
- Les clients peuvent-ils filtrer les résultats, télécharger des rapports, etc.?
- Les clients peuvent-ils effectuer des paiements?
- Les clients peuvent-ils joindre l'équipe d'assistance à partir de l'application?
Votre liste peut varier, mais une fois que vous avez configuré la surveillance synthétique, vous êtes en mesure d'avoir une confiance à 100% dans votre système à tout moment. Il est difficile de surventer la surveillance synthétique, mais une fois que vous l'avez configurée et exécutée, vous commencerez à vous demander comment vous avez pu vous en passer!
Quels sont les meilleurs outils de surveillance synthétique disponibles?
Alors, maintenant que vous êtes prêt à prendre la charge réelle, réelle (ou «synthétique», si vous voulez 😛) de votre application, voici quelques-uns des meilleurs outils que vous pouvez déployer et dont vous pouvez profiter immédiatement.
Checkly
Vérifier prétend être une solution de surveillance et de test à la pointe de la technologie qui a attiré beaucoup d'attention, en particulier dans la communauté JavaScript avec des clients tels que Vercel et Humio. Vous pouvez surveiller les flux de transactions du site dans un navigateur réel et vérifier vos points de terminaison API. Un tableau de bord unique vous montre à tout moment tout ce que vous devez savoir sur l'exactitude et les performances de votre application.

Ce que j'aime vraiment, c'est la façon dont Checkly combine une configuration très simple et une facilité d'utilisation avec des outils puissants que les développeurs adoreront. Checkly utilise le framework Chrome Puppeteer pour simuler avec précision les interactions avec un navigateur Chrome. Pour créer les chèques, vous pouvez plonger dans le code ou utiliser le Enregistreur de marionnettiste, une extension Chrome open-source de Checkly avec près de 7000 étoiles sur Github.

Checkly propose une puissante API REST qui vous permet d'orchestrer et d'automatiser vos contrôles, par exemple avec Terraform. Il vous permet également de configurer des alertes précises pour Opsgenie, Pagerduty ou Slack. Dans l'ensemble, c'est une excellente solution que je trouve la plus intéressante pour les équipes DevOps modernes.
Vous pouvez le démarrer avec un plan gratuit qui comprend un intervalle de vérification d'une minute depuis les emplacements des centres de données mondiaux.
Dotcom-Monitor
Surveillance synthétique de Dotcom-Monitor La solution surveille les API (REST, SOAP, sockets), les pages Web (dans de vrais navigateurs), les applications Web (y compris les transactions en plusieurs étapes) et l'infrastructure Internet (FTP, VoIP, etc.).

Totalement externes et entièrement gérés, les outils de surveillance synthétique de Dotcom-Monitor vous permettent de vous concentrer sur les données au lieu d'une configuration et d'une installation chronophages. De plus, leur équipe d'assistance primée est là pour vous aider à configurer et à gérer des tâches de surveillance complexes au niveau de l'entreprise 24/7/365.
Sematext
Synthétiques Sematext est un outil de surveillance synthétique doté de fonctionnalités intéressantes et faciles à utiliser. Il vous permet de surveiller la disponibilité de votre site Web et de vos applications à partir de plusieurs endroits dans le monde.
Sematext rapporte des statistiques sur les taux d'erreur, la vitesse des pages et les temps de chargement, ainsi que d'autres mesures critiques pour l'entreprise. Vous pouvez également l'utiliser pour comparer vos concurrents et identifier les domaines que vous devez optimiser pour améliorer les performances du site Web.
Vous pouvez également créer des Pages d'état avec des informations sur la disponibilité et les performances de tous les services surveillés et la possibilité de publier des informations sur les incidents ou la maintenance planifiée. Ces pages de statut peuvent vivre sur un domaine personnalisé et avoir vos éléments visuels.

Vous pouvez démarrer gratuitement avec Sematext et tester toutes leurs fonctionnalités avant de vous engager dans un projet. Une fois que vous êtes prêt, vous pouvez choisir parmi trois plans.
Un plan Pay-As-You-Go très flexible vous donne un contrôle très granulaire sur vos coûts. Un plan de 29 $/mois vous offre 40 moniteurs HTTP et 5 moniteurs de navigateur avec une conservation des données de 30 jours. Le plan Pro vous donnera 100 moniteurs HTTP et 15 navigateurs pour 99 $.
Uptrends
Tendances à la hausse est un service de surveillance synthétique magnifique et riche en fonctionnalités qui vaut le détour. Certaines des fonctionnalités qui impressionnent dès le départ sont les instantanés d'échec (voir où exactement les choses se sont cassées dans le navigateur), la limitation de la bande passante (voir comment votre site Web / application se comporte dans de mauvaises conditions de réseau), etc.

Microsoft et Vimeo utilisent des tendances haussières, vous êtes donc en bonne compagnie!
Uptime.com
Uptime est un logiciel de surveillance Web d'entreprise qui inclut une surveillance synthétique.
Leur éditeur intégré exclusif, équipé de suggestions de champs, crée une approche sans code pour les contrôles de transaction. L'éditeur comprend une fonctionnalité de saisie semi-automatique qui identifie des éléments spécifiques sans avoir à les rechercher.

Les vérifications des transactions d'Uptime sont un moyen rapide et simple d'obtenir des informations critiques sur ce qui ne fonctionne pas sur votre site et pourquoi. Je recommande vivement de l'essayer.
Better Uptime
Meilleure disponibilité est un service de surveillance moderne qui combine surveillance synthétique, gestion des incidents et pages d'état.

La configuration prend 3 minutes. Après cela, vous recevez un appel, un e-mail ou une alerte Slack chaque fois que votre site Web tombe en panne. Les principales caractéristiques sont :
- Alertes d'appels téléphoniques illimités
- HTTP (s), expiration de ping, SSL et TLD, vérifications des tâches Cron
- Planification facile sur appel
- Captures d'écran et journaux d'erreurs des incidents
- Slack, Teams, Heroku, AWS et plus de 100 autres intégrations
AlertBot
AlertBot est une autre excellente option pour la surveillance synthétique. AlertBot est fier d'offrir des fonctionnalités avancées faciles à utiliser, fournissant des rapports de santé utiles directement dans votre boîte de réception et vous alertant dès que votre site rencontre des problèmes.

Là où ils se démarquent vraiment des autres, c'est leur gestion proactive de vos moniteurs synthétiques multi-étapes (qu'ils appellent leur «Proactive ScriptAssist»). Les sites changent souvent et cette fonctionnalité garantit que vos scripts synthétiques fonctionnent toujours. Ils fournissent également un enregistreur Web facile à utiliser pour vous aider à créer vos scripts.
Pingdom
En ce qui concerne l'entreprise moyenne, ses besoins sont plutôt simples et directs. Il n'y a généralement qu'une seule application et quelques points de terminaison à surveiller, et il n'y a qu'une poignée d'expériences client critiques.
Pour ces cas d'utilisation, la plupart des meilleures offres sont exagérées, ce qui fait de Pingdom mon préféré pour la surveillance générale et Surveillance synthétique

Comme vous pouvez le voir, créer un test de surveillance synthétique est extrêmement simple dans Pingdom, et vous êtes sûr de profiter de l'expérience vive et ciblée. Si vous n'avez toujours pas commencé avec une surveillance, je vous recommande d'essayer l'ensemble de la pile offerte par Pingdom - vous serez sûrement ravi!
Apica
Apica est une offre de surveillance synthétique solide par une entreprise fiable. Leur service de surveillance synthétique comprend la surveillance de la disponibilité, la surveillance des concurrents, la surveillance globale (simuler des utilisateurs de n'importe quelle zone géographique), etc.

L'un des principaux avantages qu'offre Apica est celui du déploiement sur site pour les entreprises sensibles à la confidentialité ou soumises à des exigences réglementaires.
Site24x7
Comme Pingdom, Site24x7 est mieux connu comme un simple service de ping pour surveiller la disponibilité des applications, mais j'ai été ravi de voir son Surveillance synthétique Offres.
Le service est compatible avec les cas de test Selenium, c'est donc un bonus si vous avez déjà utilisé Selenium pour tester le navigateur.

J'ai été impressionné par leur système de notification, qui est livré avec des webhooks programmables et une compatibilité plug-and-play avec Microsoft Teams, Slack, Stride, HipChat, Zapier, etc.
AppDynamics
Maintenant propriété de Cisco, AppDynamics est un nom populaire dans les services de surveillance de sites Web et d'API avec un sous-ensemble important de surveillance synthétique basée sur un navigateur services.

Bien que les offres soient standard, il y a quelques fonctionnalités qui se sont démarquées pour moi.
Tout d'abord, un nouveau test d'erreur - dès qu'une erreur est contrée, AppDyanmics la teste à nouveau pour s'assurer qu'il ne s'agit pas d'un faux négatif; ce n'est qu'alors qu'une notification vous est envoyée.
Deuxièmement, les agents synthétiques privés, qui vous permettent de déployer des agents synthétiques personnalisés sur votre infrastructure pour couvrir les cas extrêmes ou simplement éviter les problèmes de latence. Vaut vraiment le détour!
Catchpoint
Catchpoint est un service de surveillance synthétique extrêmement complet avec plus de 700 sites de test mondiaux (plus que tout ce que j'ai rencontré en recherchant cet article).

Il essaie de couvrir tout le spectre de surveillance en vérifiant plus de 20 types de surveillance et en recherchant la véritable cause de l'échec.
Par exemple, le téléchargement du fichier a-t-il échoué en raison de l'absence de réponse du serveur FTP, du FAI du client ou du FAI de votre entreprise? Qu'il s'agisse de protocoles populaires, de types de navigateurs, de connectivité du dernier kilomètre, etc., Catchpoint fait tout son possible pour fournir une image réelle et complète.
New Relic
Le dernier sur cette liste est New Relic, qui est un autre service de surveillance synthétique décent à vérifier.

Il possède toutes les fonctionnalités que vous attendez d'un service de surveillance synthétique capable, mais avec seulement 18 emplacements dans le monde au moment de la rédaction. Donc, si la disponibilité mondiale est votre principale préoccupation, ce n'est peut-être pas la meilleure option pour vous.
Cela dit, cela forme une combinaison soignée si vous utilisez déjà d'autres produits de New Relic, en particulier Actualités.
Conclusion
Le pendant de la surveillance synthétique est Surveillance réelle, qui implique la journalisation en direct des erreurs et de les observer comme un faucon. Tout comme le premier, Real Monitoring a sa place essentielle - les simulations ne peuvent jamais atteindre pleinement le chaos d'un système en direct et chargé.
Surtout lorsqu'il s'agit de déterminer les endroits idéaux pour l'optimisation, Real Monitoring est votre seul pari. Cependant, comme déjà souligné, Real Monitoring joue un rattrapage avec le client. C'est une manière réactive de traiter les erreurs (qui, à mon avis, est encore loin du défaut pratiqué par les entreprises - ignorer les erreurs 😀).