مقدمة
إدارة سجلات مستودع الموقع الإلكتروني فعالة مهمة لحفظ أداء موقعك الإلكتروني، حل مشاكل، والحصول على معلومات عن سلوك المستخدمين. Apache واحد من أكثر المستودعات الإلكترونية منابعًا. يولد سجلات مراجعة وخطأ تحتوي على معلومات قيمة. للتعامل بالسجلات بالكفاءة والتحليل، يمكنك استخدام Logstash لتحضير وتوجيهها إلى مجموعة Managed OpenSearch للتسجيل والتصور.
في هذا الدرس التعليمي، سنقوم بتوجيهك في تثبيت Logstash على دروبلت، وت配置ر لجمع سجلات Apache خاصتك، وإرسالها إلى Managed OpenSearch للتحليل.
الأحتياجات السابقة
- دروبلت/أولاد مع موقع السجلات Apache.
- مجموعة مناظم OpenSearch
خطوة 1 – تثبيت Logstash
يمكن تثبيت Logstash باستخدام الملفات الثنائية أو عبر المستودعات الإصدارية. وللحصول على إدارة وتحديثات أسهل، يوصل الاستخدام المستودعي عامًا.
في هذا المقطع، سنقوم بتوجيهك في تثبيت Logstash على دوبلتك الخاص باستخدام مديري البرامج APT و YUM.
دعونا نحدد النظام الأساسي:
للأنظمة مبتنية على APT (Ubuntu/Debian)
تحميل وتثبيت مفاتيح التواصل العامة:
قد يتوجب تثبيت مجموعة البريد apt-transport-https
على Debian قبل المضي قدما:
حفظ تعريف المستودع في /etc/apt/sources.list.d/elastic-8.x.list
:
استخدم طريقة echo
موضحة أعلاه لإضافة مستودع Logstash. لا تستخدم add-apt-repository
لأنه سيضيف مدخل deb-src
أيضًا، ولكننا لا نقدم بسير المصدر. إذا قمت بإضافة مدخل deb-src
، سترى خطأ مثل التالية:
Unable to find expected entry 'main/source/Sources' in Release file (Wrong sources.list entry or malformed file)
فقط حذف مدخل deb-src
من ملف /etc/apt/sources.list
ويتم تثبيته كما يتوجب.
أجراء sudo apt-get update
ويكون المستودع جاهزًا للاستخدام. يمكنك تثبيته ب:
للأنظمة المبنية على YUM (CentOS/RHEL)
تحميل وتثبيت مفاتيح التوقيع العامة:
أضف المادة التالية في ملف /etc/yum.repos.d/logstash.repo
الخاص بك. يمكنك استخدام ‘tee’ لتحديث وإنشاء الملف.
جهازك جاهز للاستخدام. يمكنك تثبيته ب:
لمعلومات أكثر، يرجى الاشتراك في تثبيت Logstash المرشد.
الخطوة 2 – تكوين Logstash لإرسال الأرشادات إلى OpenSearch
القناة الرئيسية للتسجيلات تكون من ثلاث مراحل رئيسية: إدخال، تصفية، وخروج. تستخدم القناة الرئيسية للبلوكس. يمكنك استخدام قناة المجموعة أو إنشاء قناتك الخاصة.
-
الإدخال: تتكون هذه المرحلة من تجميع البيانات من مصادر مختلفة. يدعم Logstash قناة الإدخال العديدة لتوافر المصادر المتنوعة مثل ملفات الأرشادات، البيانات، قواعد المعلومات، والخدمات السحابية.
-
الفلتر: هذه المرحلة تمعالج وتحويل البيانات المجموعة في المرحلة الإدخالية. يمكن للفلاتر تعديل، تنمية، وتهيئة البيانات لجعلها أكثر فائدة وأسهل للتحليل.
-
الإخراج: هذه المرحلة ترسل البيانات المعالجة إلى مقصد. يمكن للمقاصد تضمين قواعد البيانات، الملفات، ومخازن البيانات مثل OpenSearch.
الخطوة 3 – تثبيت ملحق الإخراج Open Search
يمكن تثبيت ملحق الإخراج OpenSearch بتنفيذ الأمر التالي:
يمكن العثور على المزيد من المعلومات في هذا logstash-output-opensearch-plugin المستودع.
الآن دعونا نخلق قاعدة البيانات:
إنشاء ملف جديد في المسار /etc/logstash/conf.d/ يُدعى apache_pipeline.conf
، ونسخ المحتويات التالية.
استبدل <OpenSearch_Host>
بإسم النّاطح الخاص بخادم OpenSearch و <OpenSearch_Password>
بكلمة المرور الخاصة بخادم OpenSearch.
دعونا نفك الضّغط عن التّهيئة أعلاه.
-
الإدخال: يُستخدم لتهيئة مصدر للحدث. يستخدم ملحق الإدخال ‘file’ هنا.
-
path => “/var/log/apache2/access.log” : يحدد المسار إلى ملف سجل الوصول لأباشي الذي سيقرأه لوغستاش
تأكد من أن خدمة لوغستاش لديها الوصول إلى المسار الإدخالي.
-
start_position => “beginning”: يحدد مكان بداية قراءة لوغستاش للملف الخاص بالسجل. “beginning” يشير إلى أن لوغستاش يجب أن تبدأ في معالجة الملف من البداية، بدلاً من النهاية
-
sincedb_path => “/dev/null”: يحدد مسار ملف sincedb. تُستخدم ملفات sincedb بواسطة Logstash لتتبع الموضع الحالي في ملفات السجل، مما يتيح له استئناف العمل من حيث توقف في حالة إعادة التشغيل أو الفشل.
-
tags => “apache_access”: يخصص علامة للأحداث المقروءة من هذا الإدخال. العلامات مفيدة لتحديد الأحداث وتصفيةها داخل Logstash، وغالبًا ما تُستخدم في مراحل الإخراج أو التصفية في التكوين. نحن نستخدم العلامات لهذا الغرض
- إستخدام الفلتر: لمعالجة الأحداث.
بدء بالشروط:
هذا يتحقق إذا كانت العلامة
apache_access
موجودة في حقل [العلامات] للأحداث الدخولية للسجلات. نستخدم هذه الشرطة لتطبيق فلتر GROK المناسب لسجلات الوصول والأخطاء لأباشي. -
مرشح Grok (لسجلات الوصول لأباتشي):
مرشح Grok
%{HTTPD_COMBINEDLOG}
هو نمط معرف مسبقا في Logstash يستخدم لتحليل تنسيق سجلات الوصول المجموع لأباتشي. هذا يستخرج حقول كالعنوان IP، التوقيت، طريقة HTTP، الرابط، رمز الحالة، وما إلى ذلك، من حقل الرسالة للحدثات الواردة. - أزيل فلتر
Remove
(اختياري): بعد تحليل سجلات Apache، نستخدم mutate-remove لإزالة بعض الحقول. -
شرط غير ذلك: سيتم تنفيذ البلوك else إذا لم يكن العلامة
apache_access
موجودة في [tags]. يحتوي هذا البلوك else على فلتر GROK آخر لسجلات أخطاء Apache.هذا الفلتر grok
%{HTTPD24_ERRORLOG}
يحلل الرسائل التي تطابق تنسيق سجلات أخطاء Apache. يستخرج مجالات متعلقة بسجلات الأخطاء مثل تاريخ الزمن، مستوى السجل، رسالة الخطأ، وهلمجرا.يمكن العثور على أنماط GROK في: https://github.com/logstash-plugins/logstash-patterns-core/tree/main/patterns.
-
الإخراج: يرسل ملحق الإخراج الأحداث إلى مقصد محدد.
يبدأ مجموعة الإخراج بشرط if. نحن نستخدم الشروط if هنا
يستخدم هذا الشرط if لإعادة توجيه السجلات إلى OpenSearch إلى عددين من الفهارس المنفصلين،
apache_error
وapache_access
.لنتحقق من ملحق الإخراج OpenSearch:
hosts => "https://XXX:25060" اسم مضيف Open search الخاص بك user => "doadmin" اسم مستخدم Open search الخاص بك password => "XXXXX" كلمة المرور OpenSearch index => "apache_error" اسم الفهرس في OpenSearch ssl_certificate_verification => true تمكين التحقق من شهادة SSL
خطوة 4 – بدء خدمة Logstash
بمجرد تأكيد المجموعة، قم ببدء خدمة Logstash:
خطوة 5 – التصحيح
تحقيق الاتصال
يمكنك تحقيق متوافقة بأن Logstash يمكنه الاتصال بOpenSearch باختبار الاتصال:
أ替يل your-opensearch-server باسم معلومات المخزن للserver الخاص بك و your_username، your_password بمعلومات الدخول الخاصة بOpenSearch.
تحميل البيانات
تأكد من أن البيانات مُسجلة بالطريقة الصحيحة في OpenSearch:
أ替يل your-opensearch-server باسم معلومات المخزن للserver الخاص بك و your_username، your_password بمعلومات الدخول الخاصة بOpenSearch. بما في ذلك your-index-name بالاسم التسمية الخاص بالمواد المرادفين.
قاعدة واوراق الشبكة
تأكد من قوالب قاعدة الوصول وإعدادات الشبكة تسمح للتواصل بين Logstash و OpenSearch عبر نافذة 25060
.
المعلومات التعليمية
توجد المعلومات التعليمية لـ Logstash في /var/log/logstash/logstash-plain.log
للتفاصيل ، انظر إلى تحليل المشاكل .
الخلاصة
كنا نتمشى خلال إعداد Logstash لجمع وتوجيه معلومات Apache إلى OpenSearch في هذه الدراسة. هذا ما تغطي عندنا:
تثبيت Logstash: تعلمنا كيفية استخدام مديري البرامج APT أو YUM وهما تعتمدان على توزيعك للبرمجيات اللغوية لتثبيت Logstash على حاسبك الفرعي.
تكوين Logstash: قمنا بإنشاء وتنظيم ملف التكوينات لـ Logstash لضمان أن تتم تجزئة المعلومات التي تم توفيرها من نافذة Apache بشكل صحيح وتم إرسالها إلى OpenSearch.
تحقق في OpenSearch: قمنا بإنشاء نموذج معرفي لـ OpenSearch Dashboards للتأكد من أن تم تسجيل معلوماتك بطريقة صحيحة وقابلة للبحث.
بإنهاء هذه الخطوات ، يمكنك أن تمتلك إعداد فعال حيث تجمع Logstash Apache logs وترسلها إلى OpenSearch.
Source:
https://www.digitalocean.com/community/tutorials/forward-apache-logs-to-opensearch-via-logstash