À propos du projet
Snowfinch est une application d'analyse web en temps réel sous licence MIT, écrite en Ruby et utilisant MongoDB. Elle permet aux utilisateurs de suivre et de visualiser les analyses de plusieurs sites. Les fonctionnalités actuelles incluent le suivi des pages vues, des visites actives et des visiteurs pour un site ; les pages vues et les visiteurs actifs pour une page donnée ; ainsi qu'un suivi basé sur une paire clé-valeur de requête URI ou un nombre donné de referrers, ce que le README décrit comme utile pour les campagnes ou les visites via les réseaux sociaux. Le README note qu'elle est moins complète que les alternatives commerciales.
L'installation nécessite une version récente de Ruby (1.9.2 recommandée) et MongoDB. Après le clonage, les utilisateurs modifient config/database.yml et config/snowfinch.yml. Certaines informations sont stockées dans une base de données relationnelle, PostgreSQL étant le choix par défaut, et le Gemfile peut être ajusté pour une autre base de données supportée par Rails. Les utilisateurs exécutent bundle, puis rake db:setup pour créer une base de données et un utilisateur initial, et lancent l'application avec un serveur d'application Ruby tel que Passenger ou Unicorn. Les identifiants par défaut sont user@snowfinch.net / snowfinch, lesquels doivent être modifiés.
Pour l'évolutivité de la collecte de données, Snowfinch fournit le gem snowfinch-collector, une application Rack qui gère la collecte et le stockage. Elle peut être déployée séparément sur plusieurs hôtes à l'aide d'un fichier config.ru, avec la même base de données MongoDB que l'application Rails, et configurée dans config/snowfinch.yml. Par défaut, elle est montée sur /collector dans l'application Rails, mais l'exécuter séparément évite la surcharge du routeur et du middleware de Rails. La feuille de route liste des fonctionnalités prévues mais non encore disponibles : périodes temporelles arbitraires (actuellement limitées aux 2 derniers jours), collecte/affichage des informations de referrer, marquage personnalisé des visiteurs, localisation géographique, filtres de métadonnées de page personnalisés pour les tests A/B, et un collecteur asynchrone. Les bugs sont signalés via les issues GitHub ; les contributions via des pull requests accompagnées de tests sont appréciées.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.