Je cherche à ajouter une sorte d'analyse à monAPI optimisée par Tastypie. J'apprécie vraiment Google Analytics pour le site Web habituel, mais cela ne fonctionnera évidemment pas pour une API. Comment analysez-vous les API en général? Existe-t-il des packages disponibles pour Tastypie qui ajoutent des analyses - au moins quelques éléments de base: URL de ressource , heure, agent, en-têtes de demande, etc.?
Bien que j'utilise Tastypie, on peut poser la même question à propos de django-piston et django-rest-framework.
Réponses:
3 pour la réponse № 1Si tu utilises throttle = CacheDBThrottle()
dans votre ressource, vous pouvez voir l’URL de la ressource, le temps,La méthode de demande et l’identifiant (si vous utilisez l’authentification) dans la table tastypie_apiaccess. Cependant, d’autres informations telles que l’adresse IP, le pays, l’agent d’utilisateur, les en-têtes de demande, etc. sont toujours manquantes. Vous pouvez utiliser votre propre classe de régulation et un modèle pour la sauvegarder. information.
Une autre approche consiste à utiliser un outil pour analyser les journaux de votre serveur.
0 pour la réponse № 2
Qmonix est un autre outil que vous pouvez essayer. C'est un SDK analytique qui vous permet de transmettre tout type d’événement.
Les événements sont codés comme ceci "mon_app / événement / est arrivé".
Les événements sont envoyés sur API HTTP afin que vous puissiez utiliser Qmonix dans vos applications Web.
Malheureusement, il n'y a pas de librairie Tastypie pour cela, mais vous pouvez quand même écrire facilement vos propres wrappers pour envoyer vos événements via HTTP.
Vous pouvez jeter un œil à d'autres bibliothèques de langues (JavaScript, Android, etc.) sur github.