القياس عن بعد ومجموعة الأحداث
1) الغرض والمبادئ
الأهداف:- تدفق حدث واحد ويمكن التنبؤ به للتحليلات ومكافحة الاحتيال و RG والامتثال و ML.
- التعقب من طرف إلى طرف (المستخدم/الدورة/الطلب/التتبع) وقابلية الاستنساخ.
- تقليل PII والامتثال للخصوصية.
Принципы: أولاً، الخصوصية حسب التصميم، الخصوصية الافتراضية، الملاحظة الافتراضية، إدراك التكلفة.
2) تصنيف الأحداث
الدفع: الدفع. إيداع '،' دفع. سحب '،' دفع. رد التكاليف '.
الألعاب: 'لعبة. session_start/stop'، لعبة. الرهان '،' لعبة. دفع «،» مكافأة. '.
المخصص: "أصيل. تسجيل الدخول"، "ملف تعريف. تحديث '،' kyc. status_changed'، 'rg. limit_set'.
غرف العمليات: 'api. طلب '،' خطأ. ',' release. نشر '،' ميزة. flag_changed'.
الامتثال: 'aml. alert_opened'، 'عقوبات. «،» دسار. طلب '.
يحتوي كل نوع على مالك مجال ومخطط و SLO نضارة.
3) المخططات والعقود
المجالات المطلوبة (الحد الأدنى):- 'event _ time' (UTC), 'event _ type', 'schema _ version', 'event _ id' (UUID/ULID),
- «trace _ id »/« span _ id'،» request _ id «،» user. pseudo_id', 'session _ id',
json
{
"event_id": "01HFY1S93R8X",
"event_time": "2025-11-01T18:45:12. 387Z",
"event_type": "game. bet",
"schema_version": "1. 4. 0",
"user": {"pseudo_id": "p-7a2e", "age_band": "25-34", "country": "EE"},
"session": {"id": "s-2233", "device_id": "d-9af0"},
"game": {"id": "G-BookOfX", "provider": "StudioA", "stake": {"value": 2. 00, "currency": "EUR"}},
"ctx": {"ip": "198. 51. 100. 10", "trace_id": "f4c2...", "request_id": "req-7f91"},
"labels": {"market": "EE", "affiliate": "A-77"}
}
تطور المخططات: الإصدارات الدلالية ؛ متوافقة مع الماضي - أضف حقول غير قابلة للإلغاء ؛ كسر - فقط في الإصدار الجديد ('/v2 ') مع فترة تسجيل مزدوجة.
4) الأجهزة: أين وكيف
4. 1 عميل (Web/Mobile/Desktop)
القياس عن بعد الاحتياطي المحلي SDK، تقديم الدفعة، عمليات إعادة التدوير الأسية.
الأحداث التلقائية: الزيارات، والنقرات، ورؤية الكتل، والعناصر الحيوية على الويب (TTFB، LCP، CLS)، وأخطاء JS.
المعرفات: 'device _ id' (مستقر، لكنه خاص)، 'session _ id' (محدث)، 'user. pseudo_id'.
الحماية من «الضوضاء»: التخلص من 'event _ id'، والاختناق، وأخذ العينات من جانب العميل.
4. 2 خادم/خلفية
تنبعث أغلفة Logger/tracer (OpenTelemetry) → حدث النطاق.
رمي إلزامي «تتبع _ معرف» من الحافة/البوابة إلى جميع خدمات المصب.
نمط Outbox لنشر المعاملات لأحداث المجال.
4. 3 مزودين/أطراف ثالثة
موصلات (PSP/KYC/studios) مع تطبيع لاستضافة الدوائر ؛ محولات النسخ.
التحقق من سلامة التوقيعات/الحمولات، وقطع الأشجار في المحيط (مراجعة الحسابات).
5) OpenTelemetry (OTel)
الآثار: يتلقى كل طلب 'تعقب - هوية' ؛ نربط السجلات/الأحداث عبر 'trace _ id '/' span _ id'.
السجلات: استخدام سجلات/محولات OTEL ؛ خدمة العلامات البيئية. اسم '،' نشر. env '.
المقاييس: RPS/latency/معدل الخطأ حسب الخدمة، مقاييس الأعمال (GGR، التحويل).
جامع: نقطة واحدة للاستلام/المخزن الاحتياطي/التصدير إلى كافكا/HTTP/graphic. كومة.
6) محددات الهوية والارتباط
«event _ id» - التفرد والغباء.
المستخدم. pseudo_id' - التسريب المستقر (رسم الخرائط بشكل منفصل ومحدود).
"session _ id"، "request _ id"، "trace _ id"، "device _ id' مطلوبة للتحليل من طرف إلى طرف.
اتساق المعرف عند بوابة واجهة برمجة التطبيقات ومستوى SDK.
7) أخذ العينات ومراقبة الحجم
القواعد: لكل نوع حدث، لكل سوق، ديناميكي (تكيفي) حسب الحمل.
الأحداث التي تم التقاطها بدقة: الدفع/الامتثال/الحوادث - لم يتم أخذ عينات منها.
الأحداث التحليلية: 10-50٪ مع الأوزان التصحيحية في حالات العرض مسموح بها.
هبوط جانب الخادم: صالح لمقاييس التردد العالي.
8) الخصوصية والامتثال
تقليل PII: توكينيز PAN/IBAN/البريد الإلكتروني ؛ IP → رموز جغرافية/ASN عند تناول.
Regionalisation: Send to regional intest endpoints (EEA/UK/BR).
DSAR/RTBF: دعم اختباء الإسقاط الانتقائي ؛ سجل المعاملات القانونية.
سياسات الاحتفاظ: التوقيت حسب النوع (التحليلات أقصر، والتنظيم أطول) ؛ عقد قانوني.
9) النقل والتخزين المؤقت
عميل → Edge: HTTPS (HTTP/2/3)، «POST/telemetry/batch» (ما يصل إلى 100 حدث).
Edge → Tire: Kafka/Redpanda مقسم بواسطة 'user. pseudo_id'/'tenant_id'.
التنسيقات: JSON (inester)، Avro/Protobuf (في الحافلة)، Parquet (في البحيرة).
الموثوقية: retrai مع jitter، DLQ، عزل حبوب منع الحمل السامة.
json
{
"sdk": {"name":"igsdk-js","version":"2. 7. 1"},
"sent_at": "2025-11-01T18:45:12. 500Z",
"events": [ {... }, {... } ]
}
10) الموثوقية والغباء
تم إنشاء «حدث _ معرف» + جد الخادم بواسطة «(event_id، المصدر)».
Outbox on services، Exchange-One-semantics in threads (keied state + dedupe).
الترتيب داخل المفتاح: مقسم حسب «المستخدم/الجلسة».
التحكم في الوقت: NTP/PTP، يسمح بالانجراف (على سبيل المثال، ≤ 200 ms)، "استلم _ at' على الخادم.
11) جودة القياس عن بعد (TQ) و SLO
الاكتمال: ≥ 99. 5٪ من أحداث النوع الحرج لكل T.
النضارة: p95 تأخير التسليم إلى Silver ≤ 15 دقيقة.
الصواب: مخططات صالحة ≥ 99. 9٪، معدل الانخفاض <0. 1%.
التغطية النزرة: النسبة المئوية للطلبات ذات المعرف «التعقب» ≥ 98 في المائة.
التكلفة/جيجابايت: الميزانية المستهدفة للاستيعاب/التخزين حسب المجال.
12) إمكانية المراقبة ولوحات القيادة
الحد الأدنى من الأدوات:- Lag infester (p50/p95) حسب المصدر والمنطقة.
- الاكتمال حسب نوع الحدث والسوق.
- أخطاء التحقق من صحة مخططات الحمولات الكبيرة الحجم.
- خريطة إصدار SDK والنسبة المئوية للعملاء القدامى.
- ارتباط الويب الحيوي ↔ التحويل/الفشل.
13) متطلبات العميل SDK
البصمة الخفيفة، المخزن المؤقت غير المتصل بالإنترنت، البدء المؤجل.
الإعدادات: أخذ العينات، الحد الأقصى لحجم الدفعة، الحد الأقصى لعمر قائمة الانتظار، أزياء الخصوصية (no-PII).
الحماية: توقيع الطرد/مضاد العبث، تشويش المفتاح.
تحديث: أعلام الميزات لتعطيل الأحداث الصاخبة.
14) طبقة الحافة والحماية
حد السعر، WAF، التحقق من صحة المخطط، الضغط (gzip/br).
دلو رمزي لكل عميل ؛ anti-repay ('request _ id', TTL).
إزالة بروتوكول الإنترنت وتعميم الوصول → التطبيع/التخصيب خارج الحمولة «الخام».
15) التكامل مع خط أنابيب البيانات
البرونز: تمت إضافة حمولة خام بشكل لا رجعة فيه (للطب الشرعي).
الفضة: جداول طبيعية مع تفريغ/إثراء.
الذهب: صناديق عرض BI/AML/RG/المنتج.
الربط بين الأحداث والتقارير ؛ من التحولات.
16) تحليلات جودة العملاء
نسبة العملاء الهادئة (لا توجد أحداث في ساعات N).
شذوذ «العاصفة» (مكرر/انفجار جماعي).
حصة «SDKs القديمة» حسب الإصدار والمنصة.
17) العمليات و RACI
R: منصة البيانات (interst/bus/validators)، App Teams (أجهزة SDK).
أ: رئيس قسم البيانات/الهندسة المعمارية.
جيم: الامتثال/إدارة شؤون الإعلام (PII/الاحتفاظ)، SRE (SLO/الحوادث).
الأول: BI/التسويق/المخاطر/المنتج.
18) خارطة طريق التنفيذ
أفضل لاعب (2-4 أسابيع):1. تصنيف الحدث v1 + مخططات JSON لـ 6-8 أنواع.
2. SDK (Web/Android/iOS) с دفعة и أخذ العينات ؛ الحافة '/القياس عن بعد/الدفعة '.
3. كافكا + الطبقة البرونزية ؛ المصدقين الأساسيين والتخلص.
4. لوحة القيادة تبتلع التأخير/الاكتمال، تنبيهات للقفز/التحقق من الصحة.
المرحلة 2 (4-8 أسابيع):- UTel Collector, trace correction; تطبيع الفضة وقواعد DQ.
- نقاط النهاية الإقليمية (EEA/UK)، الخصوصية والأزياء، DSAR/RTBF الإجراءات.
- خريطة إصدار SDK، تحديثات الطرح التلقائي بواسطة الحلقات.
- بالضبط مرة واحدة في البث، اتصالات متجر الميزات، خلاصات مكافحة الاحتيال عبر الإنترنت.
- قاعدة كمدونة للمخططات والمصدقين، تحليل الأثر.
- تحسين القيمة: أخذ العينات التكيفية، الترتيب Z/التكتل في البحيرة.
19) قائمة مراجعة الجودة قبل الإصدار
- يتم ملء حقول المخطط المطلوبة والأنواع الصحيحة.
- 'التعقب _ id '/' الطلب _ id '/' الجلسة _ id' موجودة.
- تدعم SDK الدفعة وإعادة التجربة وأخذ العينات.
- حافة التحقق من صحة المخطط والحد من حجم الحمولة.
- يتم تمكين مرشحات الخصوصية وترميز الحقول الحساسة.
- تهيئة SLO/التنبيهات ولوحات القيادة.
- توثيق المجالات (حدث مثال، مالك، جيش تحرير السودان).
20) الأخطاء المتكررة وكيفية تجنبها
الأحداث الخام بدون مخططات: تسجيل التسجيل والتحقق من صحة CI.
لا غباء: تطلب «event _ id» ونوافذ تفريغ التخزين.
مزيج PII والتحليلات: رسم خرائط منفصلة، حقول أقنعة.
لا تتبع: الطريق «تتبع _ هوية» من خلال بوابة → خدمات → أحداث.
الأحجام غير المدارة - استخدام أخذ العينات/التجديف وحصص الميزانية.
نقطة النهاية العالمية بدون مناطق - استخدم الهيكلة الإقليمية والإقامة في البيانات.
21) مسرد (موجز)
OpenTelemetry (OTel) هو معيار مفتوح للمسارات/المقاييس/السجلات.
Outbox - نشر المعاملات لأحداث المجال.
DLQ - طابور من الرسائل «المكسورة».
أخذ العينات - اختيار جزء من الأحداث لتقليل الحجم.
Data Residency - تخزين البيانات في الولاية القضائية المطلوبة.
22) خلاصة القول
يدور القياس عن بعد المصمم جيدًا حول الترتيبات، وليس فقط «إرسال السجلات»: المخططات الصارمة، والمعرفات المتفق عليها، والخصوصية الافتراضية، والنقل الموثوق، وإمكانية الملاحظة، وتوفير التكاليف. من خلال اتباع هذه المقالة، تحصل على تدفق مستمر من الأحداث الجاهزة للتحليلات والامتثال والتعلم الآلي باستخدام SLOs التي يمكن التنبؤ بها.