À propos du projet
OSLKS Radar offre une solution haute performance et respectueuse de la vie privée pour le suivi du trafic Web. Le collecteur backend est écrit en Rust avec le framework Axum et stocke les événements dans TimescaleDB, offrant une validation d'origine en O(1) via un cache en mémoire et supportant des millions de requêtes par seconde. Le frontend est une application monopage (SPA) React construite avec Vite et Shadcn UI, proposant un design moderne en glass-morphism, un mode sombre et des capacités PWA complètes.
Les fonctionnalités clés incluent :
- Ingestion ultra-rapide sur le port 8080, avec des routes optionnelles en mode furtif pour contourner les bloqueurs de publicités.
- Tableaux de bord en temps réel sur le port 3000, affichant les pages vues, les événements de navigation SPA et les données géographiques (MaxMind GeoIP optionnel).
- Fonctionnement axé sur la confidentialité : sans cookies, sans scripts tiers, compatible RGPD et entièrement auto-hébergé.
- Binaires compatibles ARM pour les environnements à faibles ressources tels que les instances Ampere.
- Installation simple via une image Docker unique qui exécute le collecteur, une API Node et un serveur Caddy, orchestrés avec s6-overlay. Docker-Compose provisionne également un conteneur TimescaleDB.
- Gestion complète des sites, clés API pour l'accès serveur à serveur et un assistant d'installation pour la configuration initiale du super-utilisateur.
L'intégration s'effectue en ajoutant une petite balise script de moins de 1 Ko dans l'en-tête de la page, en spécifiant l'UUID du site Web et l'URL du collecteur. Le collecteur impose une liste blanche CORS, exigeant que chaque domaine soit répertorié dans CORS_ALLOWED_ORIGINS.
Le déploiement peut être effectué avec Docker Compose sur n'importe quel VPS, Coolify ou plateforme similaire. Les variables d'environnement contrôlent la connexion à la base de données, le secret de session, les origines autorisées et le chemin optionnel de la base de données GeoIP. Les variables VITE_* sont intégrées à la SPA lors de la compilation.
Le projet est open source sous licence MIT et accueille les contributions via le flux de travail fork-and-pull-request.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.