عن المشروع
## نظرة عامة
Lytics هي حزمة تحليلات ويب ذاتية الاستضافة تركز على خصوصية المستخدم. توفر مقاييس حركة المرور القياسية، واستعلامات SQL مخصصة، وصور تفاعلية تُظهر تفاعل المستخدم مع الصفحات. ينقسم المشروع إلى عدة وحدات:
- **lytics-ping** – نقطة نهاية HTTP خفيفة تتلقى بيانات التتبع من العلامة JavaScript.
- **lytics-app** – الخدمة الرئيسية بناءً على Quarkus تقوم بتخزين البيانات وإنشاء التقارير وتقديم واجهة المستخدم.
- **lytics-query** – يتحقق من صحة استعلامات SQL ويقوم بتحويلها للاستخدام في التقارير والصور التفاعلية.
- **tag** – مقطع JavaScript صغير يقوم المالكون بمواقع الويب بتضمينه لإرسال الأحداث إلى خدمة ping.
- **offsite** – JavaScript ومنطق العرض للصور التفاعلية التي يتم تحميلها من نطاق منفصل.
- **schemas** – تعريفات مخطط قواعد البيانات لـ MariaDB/MySQL وClickHouse.
## البنية التحتية
تخزن المنصة الأحداث الخام في ClickHouse لتحليل أداء عالي، بينما تبقى البيانات العلاقة في MariaDB/MySQL. تواصل الخدمات المبنية على Quarkus عبر HTTP وتشترك في الإعدادات من خلال ملف `application.properties`. يتم تنفيذ عرض الصور التفاعلية على جانب العميل باستخدام النص الخارجي، والذي تم إنشاؤه باستخدام npm ويتم تقديمها كملف ثابت من قبل خادم Quarkus.
## البدء
1. **إعداد قاعدة البيانات** – قم بإنشاء نسخة MariaDB/MySQL ومستعرض ClickHouse. قم بتطبيق مخططات من مجلد `schemas`.
2. **التكوين** – حرر ملف `lytics-app/src/main/resources/application.properties` بإدخال سلاسل الاتصال وأي خيارات أخرى ترغب بها.
3. **البناء** – شغّل الأمر `mvn package` لترجمة جميع الوحدات.
4. **تشغيل الخدمات**:
```bash
java -Dquarkus.config.locations=application.properties -jar lytics-ping/target/lytics-ping-1.0.0-SNAPSHOT-runner.jar
java -Dquarkus.config.locations=application.properties -jar lytics-app/target/lytics-app-1.0.0-SNAPSHOT-runner.jar
```
5. **التطوير** – استخدم إضافة Quarkus في IntelliJ أو شغّل الأمر `quarkus dev` من سطر الأوامر. بالنسبة لتغييرات النص الخارجي، شغّل الأمر `npm run watch` داخل مجلد `offsite`؛ وسيتم وضع الناتج في `lytics-app/src/main/resources/web/static/offsite/offsite.min.js`.
## حل المشكلات
إذا واجهت مشاكل في حل التبعيات أو في بيئة التطوير، فقد يساعد إعادة التثبيت الكامل:
```bash
mvn clean install -U
```
## حالات الاستخدام
- تتبع الزوار المتوافق مع الخصوصية للمواقع التي لا يمكنها استخدام تحليلات طرف ثالث.
- صور تفاعلية مرئية لفهم سلوك النقر والتمرير دون التضحية ببيانات المستخدم.
- استعلامات SQL قابلة للتخصيص للتقارير المتقدمة وتصدير البيانات.
تقدم Lytics مجموعة كاملة من الحلول للمنظمات التي تحتاج إلى تحليلات محلية مع سيطرة دقيقة على تخزين ومعالجة البيانات.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.