Qu'est-ce que Python?
Python est un langage de programmation général de haut niveau. Sa philosophie de conception met l'accent sur la lisibilité du code avec l'utilisation d'une indentation significative. Python est dynamiquement typé et avec un mécanisme de Garbage Collection. Il prend en charge de nombreux paradigmes de programmation, notamment la programmation structurée (en particulier procédurale), orientée objet et fonctionnelle.
La grande bibliothèque standard de Python et les nombreux packages fournissent de nombreux outils adaptés à diverses tâches. Les applications web Python peuvent être construites sur des frameworks de serveurs web bien connus comme Django ou Flask.
Instrumentation des applications Python
Le package appservice-python associé à une librairie d'instrumentation Python, permet de collecter les mesures de performance et les erreurs du serveur d'application.
En fonction de la librairie APM Python choisie, l'instrumentation d'une application pour collecter les événements APM peut être réalisée de différentes manières :
- Pour collecter des données sur les requêtes entrantes et les tâches d'arrière-plan, la librairie s'intègre aux technologies prises en charge afin d'utiliser les crochets et les signaux fournis par la librairie. Ces intégrations nécessitent peu de modifications du code de votre application.
- Pour collecter des données auprès des pilotes de bases de données, des bibliothèques HTTP, etc., certaines fonctions et méthodes de ces bibliothèques sont instrumentées. Les instrumentations sont mises en place automatiquement et ne nécessitent aucune modification du code.
- En plus des données APM et des erreurs, l'agent Python collecte également les métriques du système et de l'application à intervalles réguliers. Cette collecte s'effectue dans un thread en arrière-plan lancé par la librairie.
L'Agent ServicePilot instrumente les technologies prises en charge et enregistre les événements intéressants, telles que les requêtes HTTP et les requêtes de base de données, en fonction de la librairie utilisée.
La librairie d'instrumentation garde automatiquement la trace des requêtes adressées à vos DataStores afin de mesurer leur durée et leurs métadonnées, ainsi que les informations liées au protocole HTTP (comme l'URL, les paramètres et les en-têtes).
Ces événements, appelés Transactions et Spans, sont envoyés à ServicePilot afin de mieux comprendre les problèmes de latence et les pics d'erreurs au sein de votre application.
Supervision des traces d'applications Python
Les ressources sont automatiquement créées à partir de ce package après avoir déployé l'Agent ServicePilot avec la configuration adéquate de la librairie APM Python. Il surveille les requêtes web HTTP(S) des processus Python.
Ceci permet de collecter des statistiques résumées (min,max,avg...) par application Python telles que :
- Requêtes par minute
- Somme des requêtes par code de retour HTTP et méthodes
- Nombre de requêtes dans chaque intervalle de temps de réponse
- Requêtes établies ou interrompues
Afin de fournir des informations détaillées sur l'application Python, les détails recueillis par requête comprennent :
- Host et chemin de page web
- IP client et serveur
- Temps de réponse réel des utilisateurs
- HTTP Return code et method
- Pays client et géolocalisation pour les IPs publiques
Comment installer une ressource appservice-python ?
- Utilisez votre installation ServicePilot OnPremise ou un compte SaaS.
- Ajoutez une nouvelle ressource appservice-python via l'interface web (
/prmviews
ou/prmresources
) ou par API (page/prmpackages
), l'agent ServicePilot par défaut ou un autre agent sera provisionné automatiquement.
Les détails du package appservice-python sont situés dans la page
/prmpackages
du logiciel.
Avantages de la solution ServicePilot
ServicePilot vous permet de fournir des services informatiques plus rapidement et en toute sécurité grâce à la découverte automatique et aux fonctions avancées de monitoring.
En corrélant la technologie PYTHON APM avec l'APM et la surveillance de l'infrastructure, ServicePilot est en mesure de fournir une vue plus complète de l'environnement informatique d'une organisation.
Cela permet aux équipes informatiques d'identifier et de diagnostiquer rapidement les problèmes susceptibles d'affecter les performances des applications, et de prendre des mesures correctives avant que les utilisateurs finaux ne soient affectés.
Commencez par un essai gratuit de notre solution SaaS. Explorez nos plans ou contactez-nous pour trouver ce qui vous convient le mieux.