syslog-ng

syslog-ng هو تطبيق مجاني ومفتوح المصدر لبروتوكول syslog لأنظمة Unix والأنظمة الشبيهة بها . يُوسّع هذا التطبيق نموذج syslogd الأصلي بإضافة ميزات تصفية المحتوى، وقدرات تصفية متقدمة، وخيارات تكوين مرنة، كما يُضيف ميزات هامة إلى syslog، مثل استخدام بروتوكول TCP للنقل. تم تطوير syslog-ng في مكتب شركة One Identity LLC في بودابست. يتوفر بثلاث إصدارات تشترك في قاعدة بيانات واحدة . الإصدار الأول يُسمى syslog-ng، ويُشار إليه أيضًا باسم syslog-ng Open Source Edition (OSE) بترخيص LGPL + GPLv2. الإصدار الثاني يُسمى syslog-ng Premium Edition (PE) ويحتوي على إضافات (وحدات) بموجب ترخيص خاص . أما الإصدار الثالث فيُسمى syslog-ng Storebox (SSB)، وهو عبارة عن جهاز مزود بواجهة مستخدم ويب، بالإضافة إلى ميزات إضافية تشمل البحث النصي فائق السرعة، والبحث الموحد، والتنبيهات القائمة على المحتوى، ودعم فني متميز. [ 2 ]

في يناير 2018، استحوذت شركة One Identity، التابعة لشركة Quest Software ، على syslog-ng، التي كانت جزءًا من Balabit . ولا يزال فريق syslog-ng كيانًا مستقلاً ضمن مؤسسة One Identity، ويستمر العمل تحت العلامة التجارية syslog-ng.

في مايو 2024، قام المؤلف الأصلي لـ syslog-ng، بالاز شيدلر، بتفرع syslog-ng وأطلق AxoSyslog ، وهو بديل مفتوح المصدر بالكامل وقابل للتشغيل الفوري ، والذي يطور syslog-ng إلى معالج بيانات أمان عام، ويدمجه مع العديد من الأدوات والخدمات السحابية الأصلية.

بروتوكول

يدعم syslog-ng مجموعة واسعة من البروتوكولات لاستقبال وإرسال بيانات السجلات. ورغم أن أصوله تعود إلى syslog، إلا أنه يدعم اليوم بروتوكولات نقل حديثة ومتوافقة مع الحوسبة السحابية، مثل OpenTelemetry (OTLP) وGoogle PubSub وKafka. يتوافق syslog-ng مع مجموعة متنوعة من الأجهزة، وهو قادر على استهلاك البيانات وتحويلها بين مصادر ووجهات مختلفة.

تشمل الإضافات إلى بروتوكول syslog-ng الأصلي ما يلي:

تاريخ

بدأ مشروع syslog-ng في عام 1998، عندما قام بالاز شيدلر، المؤلف الرئيسي لـ syslog-ng، بنقل كود nsyslogd الموجود إلى نظام لينكس. ولا يزال فرع 1.0.x من syslog-ng يعتمد على مصادر nsyslogd، وهي متاحة في أرشيف مصادر syslog-ng. [ 4 ]

مباشرةً بعد إصدار syslog-ng 1.0.x، بدأت عملية إعادة برمجة قاعدة الشفرة لمعالجة بعض أوجه القصور في syslog، ولتلبية متطلبات الترخيص التي طرحها دارين ريد، مؤلف syslog الأصلي. أُعلن عن استقرار هذه النسخة المُعاد برمجتها في أكتوبر 1999 مع إصدار النسخة 1.2.0. في هذه النسخة، اعتمد syslog-ng على بعض الشفرات التي طُوّرت في الأصل لـ lsh بواسطة نيلز مولر.

استخدمت ثلاثة إصدارات رئيسية (1.2 و 1.4 و 1.6) قاعدة التعليمات البرمجية هذه، وكان آخر إصدار من فرع 1.6.x في فبراير 2007. في هذه الفترة التي امتدت لحوالي 8 سنوات، أصبح syslog-ng أحد تطبيقات syslog البديلة الشائعة.

في جهدٍ تطوعي، بدأت عملية إعادة كتابة أخرى في عام 2001، حيث تم الاستغناء عن كود lsh واستخدام مكتبة GLib الأكثر انتشارًا . استغرقت عملية إعادة كتابة قاعدة الكود وقتًا، وصدر الإصدار المستقر الأول 2.0.0 في أكتوبر 2006.

انصبّت جهود التطوير على تحسين فرع 2.0.x. توقف دعم الإصدار 1.6.x في نهاية عام 2007. وتوقف دعم الإصدار 2.x في نهاية عام 2009، ولكنه لا يزال مستخدمًا في بعض توزيعات لينكس. [ 5 ] [ 6 ] أطلقت شركة بالابيت، المطورة لبرنامج syslog-ng، نسخة تجارية موازية منه، تُسمى syslog-ng Premium Edition. ويُستخدم جزء من عائدات هذه النسخة التجارية لتمويل تطوير النسخة المجانية.

تم إصدار Syslog-ng الإصدار 3.0 في الربع الأخير من عام 2008.

ابتداءً من الإصدار 3.0، توازت جهود التطوير بين الإصدار المميز والإصدار مفتوح المصدر. ركزت جهود الإصدار المميز على الجودة، وموثوقية النقل، والأداء، وتخزين السجلات المشفرة. أما جهود الإصدار مفتوح المصدر، فركزت على تحسين مرونة البنية التحتية الأساسية للسماح بمزيد من مصادر الرسائل المختلفة، غير سجلات النظام.

أحدثت سلسلة syslog-ng 3.X العديد من التغييرات الرئيسية في syslog-ng دون الإخلال بالتوافق مع الإصدارات السابقة. أصبح syslog-ng معياريًا ومتعدد الخيوط. كما أُضيفت إليه إمكانية دعم أنظمة تخزين المستندات وأنظمة قوائم انتظار الرسائل المختلفة. ويتم الآن تحليل العديد من أنواع الرسائل تلقائيًا وتحويلها إلى أزواج اسم-قيمة. وأصبح من الممكن توسيع syslog-ng باستخدام Java وPython.

صدرت النسخة 4.0 من syslog-ng في ديسمبر 2022. وكان تغيير رقم الإصدار الرئيسي ضروريًا نظرًا لتغيير جوهري في دعم أنواع أزواج الاسم والقيمة، والذي كان غير متوافق مع سلسلة الإصدارات 3.X. تتيح هذه النسخة تصفية البيانات بدقة أكبر وإرسالها بمعلومات النوع الصحيحة إلى قواعد البيانات ومخازن المستندات.

على الرغم من أن syslog-ng PE يعتمد على الإصدار مفتوح المصدر، إلا أن ترقيم إصداراته مستقل تمامًا عنه.

سمات

يوفر syslog-ng عددًا من الميزات بالإضافة إلى نقل رسائل syslog وتخزينها في ملفات سجل نصية عادية:

  • إمكانية تنسيق رسائل السجل باستخدام توسيع المتغيرات الشبيه بـ Unix shell (قد يؤدي ذلك إلى كسر توافق تنسيق السجل عبر الأنظمة الأساسية )
  • استخدام هذا التوسيع المتغير الشبيه بالصدفة عند تسمية الملفات، لتغطية ملفات وجهة متعددة بعبارة واحدة
  • إمكانية إرسال رسائل السجل إلى التطبيقات المحلية
  • دعم التحكم في تدفق الرسائل في نقل الشبكة
  • تسجيل الدخول مباشرة إلى قاعدة البيانات (منذ syslog-ng OSE 2.1)
  • إعادة كتابة أجزاء من رسالة syslog باستخدام عناصر set و replacement (منذ syslog-ng OSE 3.0)
  • تصنيف رسائل السجل الواردة وفي نفس الوقت استخراج المعلومات المنظمة من رسالة syslog غير المنظمة (منذ syslog-ng OSE 3.0)
  • دعم عام للاسم والقيمة: كل رسالة هي مجرد مجموعة من أزواج الاسم والقيمة، والتي يمكن استخدامها لتخزين معلومات إضافية (منذ syslog-ng OSE 3.0).
  • القدرة على معالجة تنسيقات الرسائل المنظمة المرسلة عبر syslog، مثل استخراج الأعمدة من الأسطر المنسقة بصيغة CSV (منذ syslog-ng OSE 3.0).
  • القدرة على ربط الرسائل الواردة المتعددة لتشكيل حدث أكثر تعقيدًا وترابطًا (منذ syslog-ng OSE 3.2)؛ [ 7 ]

التوزيعات

يتوفر برنامج syslog-ng في العديد من توزيعات لينكس ويونكس المختلفة. تقوم بعض التوزيعات بتثبيته كبرنامج افتراضي للنظام، أو توفره كحزمة بديلة لبرنامج syslogd القياسي السابق. وقد استبدلت العديد من توزيعات لينكس التي كانت تستخدم syslog-ng برنامج rsyslog به .

سهولة الحمل

يتميز برنامج syslog-ng بسهولة نقله إلى العديد من أنظمة يونكس، القديمة منها والحديثة على حد سواء. تجدون أدناه قائمة بإصدارات يونكس المعروفة حاليًا بأنها تعمل:

تستند القائمة أعلاه إلى تجربة BalaBit المباشرة الحالية، وقد تعمل منصات أخرى أيضًا، ولكن قد تختلف النتائج.

  • RFC 3164 – بروتوكول BSD syslog 
  • RFC 5424 – بروتوكول Syslog 
  • RFC 5425 – بروتوكول أمان طبقة النقل (TLS) لتعيين النقل لـ Syslog 
  • RFC 5426 – نقل رسائل Syslog عبر UDP 

انظر أيضاً

مراجع

  1. "الإصدار 4.12.0" . 16 يونيو 2026. تم الاطلاع عليه في 17 يونيو 2026 .
  2. "syslog-ng - حلول إدارة السجلات" . www.syslog-ng.com . تم الاطلاع عليه بتاريخ 9 سبتمبر 2024 .
  3. "سجل التغييرات 3.0.1" . تم الاطلاع عليه بتاريخ 21-01-2009 .
  4. ^ "مقابلة: مطور syslog-ng 2.0 Balázs Scheidler" . تم الاسترجاع 2024-07-31 .
  5. "حزمة Debian syslog-ng" . تم الاطلاع عليها بتاريخ 11-11-2011 .
  6. "وثائق SLES syslog-ng" (ملف PDF) . مؤرشف من الأصل (ملف PDF) بتاريخ 13 أغسطس 2011. تم الاطلاع عليه بتاريخ 11 نوفمبر 2011 .
  7. "ربط رسائل lo مع syslog-ng" . تم الاسترجاع في 11-11-2011 .
  8. "الفصل الثاني: ما الجديد في دبيان جنو/لينكس 5.0" . تم الاطلاع عليه بتاريخ 22-05-2010 .