باختصاراجمع سجلات journal الخاصة بـ systemd واستعرضها بصريًا في ClickStack باستخدام journald receiver في OpenTelemetry Collector. يتضمن ذلك مجموعة بيانات تجريبية ولوحة معلومات جاهزة.
التكامل مع الأنظمة الحالية
journald في نظام Linux الحالي لديك عبر تشغيل OpenTelemetry Collector باستخدام journald receiver لجمع سجلات النظام وإرسالها إلى ClickStack عبر OTLP.
إذا أردت اختبار هذا التكامل أولًا من دون تعديل إعدادك الحالي، فانتقل إلى قسم مجموعة البيانات التجريبية.
المتطلبات الأساسية
- مثيل ClickStack قيد التشغيل
- نظام Linux يعمل بـ systemd (Ubuntu 16.04+، CentOS 7+، Debian 8+)
- تثبيت Docker أو Docker Compose على النظام المراد مراقبته
احصل على مفتاح API لـ ClickStack
يرسل OpenTelemetry Collector البيانات إلى نقطة نهاية OTLP الخاصة بـ ClickStack، والتي تتطلب المصادقة.- افتح HyperDX على عنوان URL الخاص بـ ClickStack لديك (على سبيل المثال: http://localhost:8080)
- أنشئ حسابًا أو سجّل الدخول إذا لزم الأمر
- انتقل إلى Team Settings → API Keys
- انسخ مفتاح API للاستيعاب الخاص بك
- اضبطه كمتغير بيئة:
تحقّق من أن سجل systemd قيد التشغيل
تأكد من أن نظامك يستخدم systemd وأن سجلات journal متوفرة:انشر باستخدام Docker Compose
يتطلب receiver
journald الملف التنفيذي journalctl لقراءة ملفات journal. ولا تتضمن الصورة الرسمية otel/opentelemetry-collector-contrib أداة journalctl افتراضيًا.بالنسبة إلى عمليات النشر المعتمدة على الحاويات، يمكنك إما تثبيت OTel Collector مباشرةً على المضيف أو إنشاء image مخصصة تتضمن أدوات systemd. راجع قسم استكشاف الأخطاء وإصلاحها لمزيد من التفاصيل.تحقّق من السجلات في HyperDX
بعد اكتمال الإعداد، سجّل الدخول إلى HyperDX وتأكد من أن السجلات تتدفق:- انتقل إلى Search view
- اضبط source على Logs
- صفِّ حسب
service.name:systemd-logs - يجب أن ترى إدخالات سجلات منظَّمة تتضمن حقولًا مثل
unitوpriorityوMESSAGEو_HOSTNAME
مجموعة البيانات التجريبية
تشغيل ClickStack باستخدام البيانات التجريبية
ابدأ تشغيل ClickStack باستخدام السجلات التجريبية:يستخدم العرض التجريبي receiver
filelog مع سجلات نصية بدلًا من journald لتجنّب الحاجة إلى journalctl داخل الحاوية.التحقق من السجلات في HyperDX
بعد تشغيل ClickStack:- افتح HyperDX وسجّل الدخول إلى حسابك
- انتقل إلى واجهة Search واضبط source على
Logs - اضبط النطاق الزمني على 2025-11-14 00:00:00 - 2025-11-17 00:00:00
عرض المنطقة الزمنيةيعرض HyperDX الطوابع الزمنية وفق المنطقة الزمنية المحلية في متصفحك. تمتد البيانات التجريبية عبر 2025-11-15 00:00:00 - 2025-11-16 00:00:00 (UTC). ويضمن هذا النطاق الزمني الواسع ظهور السجلات التجريبية بغض النظر عن موقعك.
لوحات المعلومات والتصورات
إعدادات لوحة المعلومات
استيراد لوحة المعلومات الجاهزة مسبقًا
- افتح HyperDX وانتقل إلى قسم Dashboards
- انقر على Import Dashboard في الزاوية العلوية اليمنى ضمن قائمة النقاط الثلاث
- ارفع الملف
systemd-logs-dashboard.jsonوانقر على Finish Import
عرض لوحة المعلومات
تتضمن لوحة المعلومات تصورات لـ:- حجم السجلات بمرور الوقت
- أهم وحدات systemd حسب عدد السجلات
- أحداث مصادقة SSH
- حالات فشل الخدمة
- معدلات الأخطاء
بالنسبة إلى مجموعة البيانات التجريبية، اضبط النطاق الزمني على 2025-11-15 00:00:00 - 2025-11-16 00:00:00 (UTC) (مع تعديله بحسب منطقتك الزمنية المحلية).
استكشاف الأخطاء وإصلاحها
عدم ظهور السجلات في HyperDX
خطأ عدم العثور على journalctl
exec: "journalctl": executable file not found in $PATH:
فإن الصورة otel/opentelemetry-collector-contrib لا تتضمن journalctl. يمكنك أحد الخيارين التاليين:
- تثبيت الـ collector على المضيف:
- استخدم نهج التصدير النصي (كما في العرض التوضيحي) مع receiver
filelogلقراءة ملفات تصدير journald
الخطوات التالية
- قم بإعداد التنبيهات لأحداث النظام الحرجة (تعطل الخدمة، فشل المصادقة، وعمليات الإنهاء بسبب نفاد الذاكرة OOM)
- أنشئ لوحات معلومات إضافية لحالات استخدام محددة (مراقبة أمان SSH، وصحة الخدمة)
- قم بالتصفية حسب وحدات systemd محددة لتقليل الضجيج والتركيز على الخدمات المهمة
الانتقال إلى بيئة الإنتاج
- نشر collector كمجموعة خفيّات في Kubernetes
- تشغيل collector كخدمة systemd على كل مضيف
- استخدام OpenTelemetry Operator للنشر الآلي