الترحيل من واجهة برمجة تطبيقات جامع بيانات HTTP إلى واجهة برمجة تطبيقات استيعاب السجل لإرسال البيانات إلى سجلات Azure Monitor
توفر واجهة برمجة تطبيقات Azure Monitor Log Ingestion قوة معالجة أكبر ومرونة أكبر في استيعاب السجلات وإدارة الجداول من واجهة برمجة تطبيقات HTTP Data Collector القديمة. توضح هذه المقالة الاختلافات بين واجهة برمجة تطبيقات جامع البيانات وواجهة برمجة تطبيقات استيعاب السجل وتوفر إرشادات وأفضل الممارسات للترحيل إلى واجهة برمجة تطبيقات استيعاب السجل الجديدة.
إشعار
ك Microsoft MVP، ساهم Morten Waltorp Knudsen في هذه المقالة وقدم ملاحظات مادية لها. للحصول على مثال حول كيفية أتمتة الإعداد والاستخدام المستمر لواجهة برمجة تطبيقات Log Ingestion، راجع الوحدة النمطية AzLogDcrIngestPS PowerShell المتوفرة للجمهور في Morten.
مزايا واجهة برمجة تطبيقات استيعاب السجل
توفر واجهة برمجة تطبيقات استيعاب السجل المزايا التالية عبر واجهة برمجة تطبيقات جامع البيانات:
- يدعم التحويلات، التي تمكنك من تعديل البيانات قبل استيعابها في الجدول الوجهة، بما في ذلك التصفية ومعالجتها.
- يتيح لك إرسال البيانات إلى وجهات متعددة.
- يمكنك من إدارة مخطط الجدول الوجهة، بما في ذلك أسماء الأعمدة، وما إذا كنت تريد إضافة أعمدة جديدة إلى الجدول الوجهة عند تغيير مخطط البيانات المصدر.
المتطلبات الأساسية
يفترض إجراء الترحيل الموضح في هذه المقالة أن لديك:
- مساحة عمل Log Analytics حيث لديك حقوق المساهم على الأقل.
- أذونات لإنشاء قواعد تجميع البيانات في مساحة عمل Log Analytics.
- تطبيق Microsoft Entra لمصادقة استدعاءات واجهة برمجة التطبيقات أو أي نظام مصادقة Resource Manager آخر.
الأذونات المطلوبة
الإجراء | الأذونات المطلوبة |
---|---|
إنشاء نقطة نهاية من أجل جمع البيانات. | Microsoft.Insights/dataCollectionEndpoints/write الأذونات التي يوفرها دور مساهم المراقبة المضمن، على سبيل المثال. |
إنشاء قاعدة تجميع بيانات أو تعديلها. | Microsoft.Insights/DataCollectionRules/Write الأذونات التي يوفرها دور مساهم المراقبة المضمن، على سبيل المثال. |
تحويل جدول يستخدم واجهة برمجة تطبيقات جامع البيانات إلى قواعد تجميع البيانات وواجهة برمجة تطبيقات استيعاب السجل. | Microsoft.OperationalInsights/workspaces/tables/migrate/action الأذونات كما هو منصوص عليه في دور مساهم Log Analytics المضمن، على سبيل المثال. |
إنشاء جداول جديدة أو تعديل مخططات الجدول. | microsoft.operationalinsights/workspaces/tables/write الأذونات كما هو منصوص عليه في دور مساهم Log Analytics المضمن، على سبيل المثال. |
استدعاء واجهة برمجة تطبيقات استيعاب السجل. | راجع تعيين أذونات إلى DCR. |
إنشاء موارد جديدة مطلوبة لواجهة برمجة تطبيقات استيعاب السجل
تتطلب واجهة برمجة تطبيقات استيعاب السجل إنشاء نوعين جديدين من الموارد، والتي لا تتطلبها واجهة برمجة تطبيقات جامع بيانات HTTP:
- نقاط نهاية تجميع البيانات، التي يتم من خلالها استيعاب البيانات التي تجمعها في البنية الأساسية لبرنامج ربط العمليات التجارية للمعالجة.
- قواعد جمع البيانات، التي تحدد تحويلات البيانات وجدول الوجهة الذي يتم استيعاب البيانات إليه.
ترحيل الجداول المخصصة الموجودة أو إنشاء جداول جديدة
إذا كان لديك جدول مخصص موجود تقوم حاليا بإرسال البيانات إليه باستخدام واجهة برمجة تطبيقات مجمع البيانات، يمكنك:
ترحيل الجدول لمتابعة استيعاب البيانات في نفس الجدول باستخدام واجهة برمجة تطبيقات استيعاب السجل.
الاحتفاظ بالجدول والبيانات الموجودة وإعداد جدول جديد حيث يمكنك استيعاب البيانات باستخدام واجهة برمجة تطبيقات استيعاب السجل. يمكنك بعد ذلك حذف الجدول القديم عندما تكون جاهزا.
هذا هو الخيار المفضل، خاصة إذا كنت بحاجة إلى إجراء تغييرات على الجدول الموجود. يمكن أن تؤدي التغييرات في أنواع البيانات الموجودة وتغييرات المخطط المتعددة إلى الجداول المخصصة لواجهة برمجة تطبيقات جامع البيانات الموجودة إلى حدوث أخطاء.
تلميح
لتحديد الجداول التي تستخدم واجهة برمجة تطبيقات مجمع البيانات، اعرض خصائص الجدول. يتم تعيين خاصية النوع للجداول التي تستخدم واجهة برمجة تطبيقات جامع البيانات إلى جدول مخصص (كلاسيكي). لاحظ أن الجداول التي تقوم ب استيعاب البيانات باستخدام عامل Log Analytics القديم (MMA) تحتوي أيضا على خاصية Type التي تم تعيينها إلى جدول مخصص (كلاسيكي) . تأكد من الترحيل من عامل Log Analytics إلى عامل Azure Monitor قبل تحويل جداول MMA. وإلا، ستتوقف عن استيعاب البيانات في حقول مخصصة في هذه الجداول بعد تحويل الجدول.
يلخص هذا الجدول الاعتبارات التي يجب أخذها في الاعتبار لكل خيار:
ترحيل الجدول | التنفيذ جنبا إلى جنب | |
---|---|---|
تسمية الجدول والأعمدة | إعادة استخدام اسم الجدول الموجود. خيارات تسمية العمود: - استخدم أسماء أعمدة جديدة وحدد تحويلا لتوجيه البيانات الواردة إلى العمود المسمى حديثا. - متابعة استخدام الأسماء القديمة. |
قم بتعيين اسم الجدول الجديد بحرية. تحتاج إلى ضبط عمليات التكامل ولوحات المعلومات والتنبيهات قبل التبديل إلى الجدول الجديد. |
إجراء الترحيل | ترحيل الجدول لمرة واحدة. لا يمكن التراجع عن جدول تم ترحيله. | يمكن إجراء الترحيل تدريجيا، لكل جدول. |
ما بعد الترحيل | يمكنك الاستمرار في استيعاب البيانات باستخدام واجهة برمجة تطبيقات HTTP Data Collector مع الأعمدة الموجودة، باستثناء الأعمدة المخصصة. استيعاب البيانات في أعمدة جديدة باستخدام واجهة برمجة تطبيقات استيعاب السجل فقط. |
تتوفر البيانات الموجودة في الجدول القديم حتى نهاية فترة الاستبقاء. عند إعداد جدول جديد لأول مرة أو إجراء تغييرات على المخطط، قد يستغرق ظهور تغييرات البيانات في الجدول الوجهة من 10 إلى 15 دقيقة. |
لتحويل جدول يستخدم واجهة برمجة تطبيقات جامع البيانات إلى قواعد تجميع البيانات وواجهة برمجة تطبيقات استيعاب السجل، قم بإصدار استدعاء واجهة برمجة التطبيقات هذا مقابل الجدول:
POST https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/tables/{tableName}/migrate?api-version=2021-12-01-preview
هذا الاستدعاء غير فعال، لذلك ليس له أي تأثير إذا تم تحويل الجدول بالفعل.
يتيح استدعاء واجهة برمجة التطبيقات جميع ميزات السجلات المخصصة المستندة إلى DCR على الجدول. ستستمر واجهة برمجة تطبيقات جامع البيانات في استيعاب البيانات في الأعمدة الموجودة، ولكنها لن تنشئ أي أعمدة جديدة. لن يستمر ملء أي حقول مخصصة معرفة مسبقا. طريقة أخرى لترحيل جدول موجود إلى استخدام قواعد جمع البيانات، ولكن ليس بالضرورة أن تقوم واجهة برمجة تطبيقات استيعاب السجل بتطبيق تحويل مساحة العمل على الجدول.
هام
- يجب أن تبدأ أسماء الأعمدة بحرف ويمكن أن تتكون من ما يصل إلى 45 حرفا أبجديا رقميا وتسطيرا أسفل السطر (
_
). _ResourceId
id
Type
Title
_ResourceId
_SubscriptionId
TenantId
UniqueId
أسماء الأعمدة المحجوزة و و.- يجب أن تحتوي الأعمدة المخصصة التي تضيفها إلى جدول Azure على اللاحقة
_CF
. - إذا قمت بتحديث مخطط الجدول في مساحة عمل Log Analytics، فيجب عليك أيضا تحديث تعريف دفق الإدخال في قاعدة تجميع البيانات لاستيعاب البيانات في أعمدة جديدة أو معدلة.
استدعاء واجهة برمجة تطبيقات استيعاب السجل
تتيح لك واجهة برمجة تطبيقات Log Ingestion إرسال ما يصل إلى 1 ميغابايت من البيانات المضغوطة أو غير المضغوطة لكل مكالمة. إذا كنت بحاجة إلى إرسال أكثر من 1 ميغابايت من البيانات، يمكنك إرسال مكالمات متعددة بالتوازي. هذا تغيير من واجهة برمجة تطبيقات جامع البيانات، والذي يتيح لك إرسال ما يصل إلى 32 ميغابايت من البيانات لكل مكالمة.
للحصول على معلومات حول كيفية استدعاء واجهة برمجة تطبيقات تسجيل الاستيعاب، راجع استدعاء واجهة برمجة تطبيقات REST لاستيعاب السجل.
تعديل مخططات الجدول وقواعد جمع البيانات استنادا إلى التغييرات التي تم إجراؤها على كائن البيانات المصدر
بينما تقوم واجهة برمجة تطبيقات جامع البيانات تلقائيا بضبط مخطط الجدول الوجهة عند تغيير مخطط كائن البيانات المصدر، فإن واجهة برمجة تطبيقات استيعاب السجل لا تقوم بذلك. يضمن هذا عدم جمع بيانات جديدة في أعمدة لم تكن تنوي إنشائها.
عند تغيير مخطط البيانات المصدر، يمكنك:
- تعديل مخططات الجدول الوجهة وقواعد جمع البيانات للمحاذاة مع تغييرات مخطط البيانات المصدر.
- حدد تحويلا في قاعدة جمع البيانات لإرسال البيانات الجديدة إلى أعمدة موجودة في الجدول الوجهة.
- اترك الجدول الوجهة وقاعدة جمع البيانات دون تغيير. في هذه الحالة، لن يتم استيعاب البيانات الجديدة.
إشعار
لا يمكنك إعادة استخدام اسم عمود بنوع بيانات مختلف عن نوع البيانات الأصلي المحدد للعمود.