شعار زيفيرنت

تسليم سجلات Amazon CloudWatch غير المضغوطة إلى Amazon S3 وSplunk باستخدام Amazon Data Firehose | خدمات الويب الأمازون

التاريخ:

يمكنك استخدام خرطوم بيانات أمازون لتجميع وتسليم أحداث السجل من تطبيقاتك وخدماتك التي تم التقاطها فيها سجلات الأمازون CloudWatch لديك خدمة تخزين أمازون البسيطة (Amazon S3) ووجهات Splunk، لحالات الاستخدام مثل تحليلات البيانات، وتحليل الأمان، واستكشاف أخطاء التطبيقات وإصلاحها، وما إلى ذلك. افتراضيًا، يتم تسليم سجلات CloudWatch ككائنات مضغوطة بواسطة gzip. قد ترغب في فك ضغط البيانات، أو تريد تسليم السجلات إلى Splunk، الأمر الذي يتطلب إدخال بيانات غير مضغوطة، لمراقبة التطبيق وتدقيقه.

أصدرت AWS ميزة لدعم إلغاء ضغط CloudWatch Logs في Firehose. باستخدام هذه الميزة الجديدة، يمكنك تحديد خيار في Firehose لفك ضغط سجلات CloudWatch. لم يعد عليك إجراء معالجة إضافية باستخدام AWS لامدا أو المعالجة اللاحقة للحصول على السجلات التي تم فك ضغطها، ويمكنها تسليم البيانات التي تم فك ضغطها إلى Splunk. بالإضافة إلى ذلك، يمكنك استخدام ميزات Firehose الاختيارية مثل تحويل تنسيق السجل لتحويل CloudWatch Logs إلى Parquet أو ORC، والتقسيم الديناميكي لتجميع سجلات التدفق تلقائيًا بناءً على المفاتيح الموجودة في البيانات (على سبيل المثال، حسب الشهر) وتسليم السجلات المجمعة إلى البيانات المقابلة. بادئات أمازون S3.

في هذا المنشور، سنلقي نظرة على كيفية تمكين ميزة إلغاء الضغط لوجهات Splunk وAmazon S3. نبدأ مع Splunk ثم Amazon S3 للتدفقات الجديدة، ثم نتناول خطوات الترحيل للاستفادة من هذه الميزة وتبسيط مسار التدفق الحالي لديك.

قم بفك ضغط سجلات CloudWatch لـ Splunk

يمكنك استخدام عامل تصفية الاشتراك في مجموعات سجل CloudWatch لاستيعاب البيانات مباشرة إلى Firehose أو عبرها الأمازون كينسيس دفق البيانات.

ملحوظة: بالنسبة لميزة إلغاء ضغط CloudWatch Logs، تحتاج إلى ملف جامع أحداث HTTP (HEC) إدخال البيانات التي تم إنشاؤها في Splunk، مع تمكين إقرار المفهرس و نوع المصدر. وهذا مطلوب للتعيين إلى نوع المصدر الصحيح للسجلات التي تم فك ضغطها. عند إنشاء إدخال HEC، قم بتضمين تعيين نوع المصدر (على سبيل المثال، aws:cloudtrail).

لإنشاء دفق تسليم Firehose لميزة إلغاء الضغط، أكمل الخطوات التالية:

  1. قم بتوفير إعدادات وجهتك وحدد نقطة نهاية خام كنوع نقطة النهاية.

يمكنك استخدام نقطة نهاية أولية لميزة إلغاء الضغط لاستيعاب بيانات الأحداث الأولية والمنسقة بتنسيق JSON إلى Splunk. على سبيل المثال، بيانات سجلات تدفق VPC هي بيانات أولية، و أوس كلاود تريل البيانات بتنسيق JSON.

  1. أدخل رمز HEC المميز لـ رمز المصادقة.
  2. لتمكين ميزة إلغاء الضغط، قم بإلغاء التحديد قم بتحويل سجلات المصدر باستخدام AWS Lambda مع تحويل السجلات.
  3. أختار قم بتشغيل إلغاء الضغط و قم بتشغيل استخراج الرسائل For قم بفك ضغط سجلات المصدر من Amazon CloudWatch Logs.
  4. أختار قم بتشغيل استخراج الرسائل للوجهة Splunk.

خاصية استخراج الرسائل

بعد فك الضغط، تصبح سجلات CloudWatch بتنسيق JSON، كما هو موضح في الشكل التالي. يمكنك رؤية البيانات التي تم فك ضغطها تحتوي على معلومات البيانات الوصفية مثل logGroup, logStreamو subscriptionFilters، ويتم تضمين البيانات الفعلية داخل message الحقل تحت logEvents (يوضح المثال التالي مثالاً لأحداث CloudTrail في سجلات CloudWatch).

عندما تقوم بتمكين استخراج الرسائل، سيقوم Firehose باستخراج محتويات حقول الرسائل فقط وربط المحتويات بخط جديد بينهما، كما هو موضح في الشكل التالي. من خلال تصفية البيانات التعريفية لسجلات CloudWatch باستخدام هذه الميزة، سينجح Splunk في تحليل بيانات السجل الفعلية وتعيينها إلى نوع المصدر الذي تم تكوينه في رمز HEC المميز.

بالإضافة إلى ذلك، إذا كنت ترغب في تسليم أحداث CloudWatch هذه إلى وجهة Splunk الخاصة بك في الوقت الفعلي، فيمكنك استخدامها التخزين المؤقت صفر، وهي ميزة جديدة تم إطلاقها مؤخرًا في Firehose. يمكنك استخدام هذه الميزة لإعداد 0 ثانية كفاصل زمني مؤقت أو أي فاصل زمني بين 0-60 ثانية لتسليم البيانات إلى وجهة Splunk في الوقت الفعلي خلال ثوانٍ.

باستخدام هذه الإعدادات، يمكنك الآن استيعاب بيانات سجل CloudWatch غير المضغوطة بسلاسة في Splunk باستخدام Firehose.

قم بفك ضغط سجلات CloudWatch لـ Amazon S3

تعمل ميزة إلغاء الضغط في CloudWatch Logs لوجهة Amazon S3 بشكل مشابه لـ Splunk، حيث يمكنك إيقاف تشغيل تحويل البيانات باستخدام Lambda وتشغيل خيارات إلغاء الضغط واستخراج الرسائل. يمكنك استخدام ميزة إلغاء الضغط لكتابة بيانات السجل كملف نصي إلى وجهة Amazon S3 أو استخدامها مع ميزات وجهة Amazon S3 الأخرى مثل تحويل تنسيق السجل باستخدام Parquet أو ORC، أو التقسيم الديناميكي لتقسيم البيانات.

التقسيم الديناميكي مع تخفيف الضغط

بالنسبة لوجهة Amazon S3، يدعم Firehose التقسيم الديناميكي، الذي يمكّنك من تقسيم بيانات التدفق بشكل مستمر باستخدام مفاتيح داخل البيانات، ثم تسليم البيانات المجمعة بواسطة هذه المفاتيح إلى بادئات Amazon S3 المقابلة. يمكّنك هذا من تشغيل تحليلات عالية الأداء وفعالة من حيث التكلفة على تدفق البيانات في Amazon S3 باستخدام خدمات مثل أمازون أثينا, أمازون EMR, طيف الأمازون للانزياح الأحمرو أمازون QuickSight. يؤدي تقسيم بياناتك إلى تقليل كمية البيانات الممسوحة ضوئيًا، وتحسين الأداء، وتقليل تكاليف استعلامات التحليلات الخاصة بك على Amazon S3.

باستخدام ميزة إلغاء الضغط الجديدة، يمكنك إجراء التقسيم الديناميكي بدون أي وظيفة Lambda لتعيين مفاتيح التقسيم في CloudWatch Logs. يمكنك تمكين التحليل المضمن لـ JSON الخيار، قم بمسح بيانات السجل المضغوطة، وحدد مفاتيح التقسيم. تعرض لقطة الشاشة التالية مثالاً حيث يتم تمكين التحليل المضمن لبيانات سجل CloudTrail مع تحديد مخطط تقسيم لمعرف الحساب ومنطقة AWS في سجل CloudTrail.

سجل تحويل التنسيق مع الضغط

بالنسبة لبيانات CloudWatch Logs، يمكنك استخدام ميزة تحويل تنسيق السجل على البيانات التي تم فك ضغطها لوجهة Amazon S3. يمكن لـ Firehose تحويل تنسيق بيانات الإدخال من JSON إلى اباتشي باركيه or أباتشي أو آر سي قبل تخزين البيانات في Amazon S3. Parquet وORC هما تنسيقان بيانات عموديان يوفران المساحة ويتيحان استعلامات أسرع مقارنة بالتنسيقات الموجهة نحو الصفوف مثل JSON. يمكنك استخدام الميزات لتحويل تنسيق السجل ضمن تحويل وتحويل السجلات الإعدادات لتحويل بيانات سجل CloudWatch إلى تنسيق Parquet أو ORC. تعرض لقطة الشاشة التالية مثالاً لإعدادات تحويل تنسيق السجل لتنسيق Parquet باستخدام غراء AWS المخطط والجدول لبيانات سجل CloudTrail. عند تكوين إعدادات التقسيم الديناميكي، يعمل تحويل تنسيق السجل جنبًا إلى جنب مع التقسيم الديناميكي لإنشاء الملفات بتنسيق الإخراج باستخدام بنية مجلد القسم في حاوية S3 المستهدفة.

ترحيل تدفقات التسليم الحالية لتخفيف الضغط

إذا كنت تريد ترحيل تدفق Firehose موجود يستخدم Lambda لإزالة الضغط إلى ميزة إلغاء الضغط الجديدة هذه في Firehose، فارجع إلى الخطوات الموضحة في تمكين وتعطيل فك الضغط.

التسعير

تعمل ميزة إلغاء ضغط Firehose على إلغاء ضغط البيانات ورسوم الرسوم لكل جيجابايت من البيانات التي تم فك ضغطها. لفهم تسعير تخفيف الضغط، راجع تسعير Amazon Data Firehose.

تنظيف

لتجنب تكبد رسوم في المستقبل ، احذف الموارد التي أنشأتها بالترتيب التالي:

  1. احذف مرشح الاشتراك في CloudWatch Logs.
  2. احذف دفق تسليم Firehose.
  3. احذف حاويات S3.

وفي الختام

تعمل ميزة إلغاء الضغط واستخراج الرسائل في Firehose على تبسيط تسليم سجلات CloudWatch إلى وجهات Amazon S3 وSplunk دون الحاجة إلى أي تطوير للتعليمات البرمجية أو معالجة إضافية. بالنسبة لوجهة Amazon S3، يمكنك استخدام إمكانات تحويل Parquet أو ORC والتقسيم الديناميكي على البيانات التي تم فك ضغطها.

لمزيد من المعلومات ، راجع الموارد التالية:


حول المؤلف

رانجيت كاليدسان هو مهندس حلول أول لدى Amazon Web Services ومقره في بوسطن، ماساتشوستس. وهو مهندس حلول شركاء يساعد شركاء بائعي البرامج المستقلين (ISV) في مجال الأمان على المشاركة في بناء الحلول وتسويقها مع AWS. ويتمتع بخبرة تزيد عن 25 عامًا في مجال تكنولوجيا المعلومات لمساعدة العملاء العالميين على تنفيذ حلول معقدة للأمان والتحليلات. يمكنك التواصل مع رانجيت على لينكدين:.

فانيندرا فولياراجولي هو قائد إدارة المنتجات في Amazon Data Firehose في AWS. في هذا الدور، يقود Phaneendra استراتيجية المنتج والذهاب إلى السوق لشركة Amazon Data Firehose.

بقعة_صورة

أحدث المعلومات الاستخباراتية

بقعة_صورة