الانتقال إلى المحتوى الرئيسي
باختصارراقب مقاييس أداء Apache Kafka في ClickStack باستخدام OTel JMX Metric Gatherer. يتضمن مجموعة بيانات تجريبية ولوحة معلومات مُعدّة مسبقًا.

التكامل مع نشر Kafka حالي

راقب نشر Kafka الحالي لديك من خلال تشغيل حاوية OpenTelemetry JMX Metric Gatherer لجمع المقاييس وإرسالها إلى ClickStack عبر OTLP. إذا كنت تريد اختبار هذا التكامل أولًا من دون تعديل إعداداتك الحالية، فانتقل إلى قسم مجموعة البيانات التجريبية.
المتطلبات الأساسية
  • مثيل ClickStack قيد التشغيل
  • تثبيت Kafka قائم (الإصدار 2.0 أو أحدث) مع تمكين JMX
  • إمكانية الوصول عبر الشبكة بين ClickStack وKafka (منفذ JMX ‏9999، ومنفذ Kafka ‏9092)
  • ملف JAR الخاص بـ OpenTelemetry JMX Metric Gatherer (تعليمات التنزيل أدناه)
1

الحصول على مفتاح API لـ ClickStack

يرسل JMX Metric Gatherer البيانات إلى نقطة نهاية OTLP الخاصة بـ ClickStack، والتي تتطلب المصادقة.
  1. افتح HyperDX على عنوان URL الخاص بـ ClickStack (على سبيل المثال، http://localhost:8080)
  2. أنشئ حسابًا أو سجّل الدخول إذا لزم الأمر
  3. انتقل إلى إعدادات الفريق → مفاتيح API
  4. انسخ مفتاح API للإدخال الخاص بك
  1. عيّنه كمتغير بيئة:
2

حمّل OpenTelemetry JMX Metric Gatherer

حمّل ملف JAR الخاص بـ JMX Metric Gatherer:
3

تحقّق من تفعيل Kafka JMX

تأكّد من أن JMX مفعّل على وسطاء Kafka لديك. بالنسبة إلى عمليات نشر Docker:
بالنسبة لعمليات النشر غير المعتمدة على Docker، اضبط ما يلي في إعدادات بدء تشغيل Kafka:
تأكّد من إمكانية الوصول إلى JMX:
4

نشر JMX Metric Gatherer باستخدام Docker Compose

يوضح هذا المثال إعدادًا كاملًا يضم Kafka وJMX Metric Gatherer وClickStack. عدّل أسماء الخدمات ونقاط النهاية لتتوافق مع عملية النشر الحالية لديك:
معلمات التكوين الأساسية:
  • service:jmx:rmi:///jndi/rmi://kafka:9999/jmxrmi - عنوان URL للاتصال عبر JMX (استخدم اسم مضيف Kafka الخاص بك)
  • otel.jmx.target.system=kafka - يفعّل المقاييس الخاصة بـ Kafka
  • http://clickstack:4318 - نقطة نهاية OTLP عبر HTTP (استخدم اسم مضيف ClickStack الخاص بك)
  • authorization=\${CLICKSTACK_API_KEY} - مفتاح API للمصادقة (مطلوب)
  • service.name=kafka,kafka.broker.id=broker-0 - سمات المورد لأغراض التصفية
  • 10000 - الفاصل الزمني للتجميع بالمللي ثانية (10 ثوانٍ)
5

تحقّق من المقاييس في HyperDX

سجّل الدخول إلى HyperDX وتأكد من أن المقاييس تصل بشكل صحيح:
  1. انتقل إلى Chart Explorer
  2. ابحث عن kafka.message.count أو kafka.partition.count
  3. يجب أن تظهر المقاييس كل 10 ثوانٍ
المقاييس الرئيسية التي يجب التحقق منها:
  • kafka.message.count - إجمالي الرسائل المُعالجة
  • kafka.partition.count - إجمالي الأقسام
  • kafka.partition.under_replicated - يجب أن تكون القيمة 0 في عنقود سليم
  • kafka.network.io - معدل نقل الشبكة
  • kafka.request.time.* - المئينات لزمن استجابة الطلب
لتوليد نشاط وملء المزيد من المقاييس:
عند تشغيل أوامر عميل Kafka ‏(kafka-topics وkafka-console-producer وما إلى ذلك) من داخل حاوية Kafka، فاسبِقها بـ unset JMX_PORT && لتجنّب تعارض منفذ JMX.

مجموعة البيانات التجريبية

للمستخدمين الذين يريدون اختبار تكامل مقاييس Kafka قبل تهيئة أنظمتهم الإنتاجية، نوفر مجموعة بيانات مُولَّدة مسبقًا تتضمن أنماطًا واقعية لمقاييس Kafka.
1

نزّل مجموعة بيانات المقاييس النموذجية

نزّل ملفات المقاييس المُولَّدة مسبقًا (29 ساعة من مقاييس Kafka بأنماط واقعية):
تتضمن مجموعة البيانات أنماطًا واقعية لعنقود Kafka للتجارة الإلكترونية بوسيط واحد:
  • 06:00-08:00: ذروة الصباح - ارتفاع حاد في حركة المرور انطلاقًا من خط الأساس الليلي
  • 10:00-10:15: تخفيضات خاطفة - قفزة كبيرة إلى 3.5 أضعاف حركة المرور المعتادة
  • 11:30: حدث نشر - قفزة بمقدار 12 ضعفًا في تأخر المستهلك مع التقسيمات غير المكررة بما يكفي
  • 14:00-15:30: ذروة التسوق - حركة مرور مرتفعة مستمرة عند 2.8 ضعف خط الأساس
  • 17:00-17:30: ذروة ما بعد العمل - ذروة ثانوية في حركة المرور
  • 18:45: إعادة توازن المستهلك - قفزة بمقدار 6 أضعاف في التأخر أثناء إعادة التوازن
  • 20:00-22:00: تراجع المساء - انخفاض حاد إلى مستويات الليل
2

ابدأ ClickStack

ابدأ مثيل ClickStack:
3

حمّل المقاييس إلى ClickStack

حمّل المقاييس مباشرةً إلى ClickHouse:
4

تحقّق من المقاييس في HyperDX

بعد التحميل، أسرع طريقة لرؤية مقاييسك هي عبر لوحة المعلومات المُعَدّة مسبقًا.انتقل إلى قسم لوحات المعلومات والتصور لاستيراد لوحة المعلومات وعرض جميع مقاييس Kafka دفعةً واحدة.
عرض المنطقة الزمنيةيعرض HyperDX الطوابع الزمنية وفقًا للمنطقة الزمنية المحلية في متصفحك. تمتد البيانات التجريبية عبر 2025-11-05 16:00:00 - 2025-11-06 16:00:00 (UTC). اضبط النطاق الزمني على 2025-11-04 16:00:00 - 2025-11-07 16:00:00 لضمان ظهور المقاييس التجريبية مهما كان موقعك. وبعد رؤية المقاييس، يمكنك تضييق النطاق إلى فترة 24 ساعة للحصول على تصورات أوضح.

لوحات المعلومات والتصورات

لمساعدتك على بدء مراقبة Kafka باستخدام ClickStack، نوفر تصورات أساسية لمقاييس Kafka.
1

إعدادات لوحة المعلومات

2

استورد لوحة المعلومات الجاهزة مسبقًا

  1. افتح HyperDX وانتقل إلى قسم Dashboards
  2. انقر على Import Dashboard في الزاوية العلوية اليمنى ضمن قائمة النقاط الثلاث
  1. ارفع ملف kafka-metrics-dashboard.json وانقر على Finish Import
3

اعرض لوحة المعلومات

ستُنشأ لوحة المعلومات مع إعداد جميع التصورات مسبقًا:
بالنسبة إلى مجموعة البيانات التجريبية، اضبط النطاق الزمني على 2025-11-05 16:00:00 - 2025-11-06 16:00:00 (UTC) (عدّله وفقًا لمنطقتك الزمنية المحلية). لن تتضمن لوحة المعلومات المستوردة نطاقًا زمنيًا محددًا تلقائيًا.

استكشاف الأخطاء وإصلاحها

عدم ظهور أي مقاييس في HyperDX

تحقق من ضبط مفتاح API وتمريره إلى الحاوية:
إذا لم يكن موجودًا، فاضبطه ثم أعد التشغيل:
تحقّق من وصول المقاييس إلى ClickHouse:
إذا لم تظهر أي نتائج، فتحقق من سجلات JMX exporter:
أنشئ نشاطًا على Kafka لتعبئة المقاييس:

أخطاء المصادقة

إذا رأيت Authorization failed أو 401 Unauthorized:
  1. تحقّق من مفتاح API في واجهة مستخدم HyperDX (الإعدادات → مفاتيح API → مفتاح API للإدخال)
  2. أعِد التصدير ثم أعِد التشغيل:

تعارضات المنافذ مع أوامر عميل Kafka

عند تشغيل أوامر Kafka من داخل حاوية Kafka، قد يظهر لك:
ابدأ الأوامر بـ unset JMX_PORT &&:

مشكلات الاتصال بالشبكة

إذا كانت سجلات JMX exporter تعرض Connection refused: تحقّق من أن جميع الحاويات على شبكة Docker نفسها:
اختبر الاتصال:

الخطوات التالية

  • قم بإعداد التنبيهات للمقاييس الحرجة (التقسيمات غير المكررة بما يكفي، وزيادة تأخر المستهلك، والارتفاعات المفاجئة في زمن استجابة الطلبات)
  • أنشئ لوحات معلومات إضافية لحالات استخدام محددة (معدل النقل لكل topic، ومراقبة consumer group)
  • راقب عدة وسطاء Kafka عبر إضافة مثيلات إضافية من JMX Metric Gatherer مع resource attributes فريدة لـ kafka.broker.id

الانتقال إلى بيئة الإنتاج

يرسل هذا الدليل المقاييس مباشرةً من JMX Metric Gatherer إلى نقطة نهاية OTLP الخاصة بـ ClickStack، وهو مناسب للاختبار وعمليات النشر الصغيرة. في بيئات الإنتاج، انشر OpenTelemetry Collector الخاص بك كعامل لاستقبال المقاييس من JMX Exporter وتمريرها إلى ClickStack. يوفّر ذلك المعالجة على دفعات، والمرونة، وإدارة التهيئة المركزية. راجع إدخال البيانات باستخدام OpenTelemetry للاطلاع على أنماط النشر في بيئة الإنتاج وأمثلة على تهيئة الجامع.
آخر تعديل في ٣ يوليو ٢٠٢٦