Question

Je dois collecter des statistiques à partir de mon application serveur écrite en python. Je suis à la recherche de conseils généraux sur la configuration des modèles et le stockage des informations statistiques. Je pensais stocker et organiser toutes ces informations dans une base de données, mais mon implémentation s'avère trop spécifique.

Je dois collecter des statistiques telles que les utilisateurs actifs, les demandes traitées, etc., au fil du temps.

Existe-t-il des guides ou des techniques permettant de créer des systèmes de stockage de statistiques plus génériques?

Était-ce utile?

La solution

Comme la plupart des solutions logicielles, il n’existe pas de solution unique qui puisse résoudre votre problème. Mais j’ai créé quelques programmes similaires et voici certaines choses qui ont bien fonctionné.

  • Créez un service de journalisation asynchrone afin que la journalisation n'affecte pas les performances de votre code. (Vous devez savoir où vous stockez vos données, où elles sont traitées, etc., car vous pouvez toujours dégrader considérablement les performances si vous ne faites pas attention.) J'ai constaté que la création d'un service Web est souvent pratique.
  • Essayez de sauvegarder autant d'informations que possible sur la demande. À l'avenir, cela facilitera l'ajout de nouvelles requêtes et de nouveaux rapports.
    • Normaliser vos données
    • Indiquez toujours l'heure à laquelle l'action a été effectuée. Si vous pouvez capturer le temps d’exécution, il est généralement utile.

Autres conseils

Une approche consiste à procéder par étapes: stocker les journaux d’activité, y compris les demandes et les utilisateurs, sous forme de fichiers texte. Plus tard, minez les journaux en points de données (python devrait pouvoir le faire facilement). Vous pouvez utiliser la bibliothèque de journalisation de python pour la phase de journalisation. En général, commencez par une journalisation à résolution temporelle élevée, que vous pourrez ensuite agréger en résumés horaires, quotidiens, hebdomadaires, etc.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top