استخدام Azure Event Grid لإرسال أحداث تخزين Blob إلى نقطة نهاية الويب (مدخل Azure)
Event Grid هي خدمة مدارة بالكامل تمكنك من إدارة الأحداث بسهولة عبر العديد من خدمات وتطبيقات Azure المختلفة. إنها تبسط بناء التطبيقات المستندة إلى الحدث وبلا خادم. للحصول على نظرة عامة عن الخدمة، راجع نظرة عامة على Event Grid.
في هذه المقالة، يمكنك استخدام مدخل Azure لأداء المهام التالية:
- إنشاء حساب تخزين بيانات Blob.
- الاشتراك في الأحداث لتخزين blob.
- تشغيل حدث عن طريق تحميل ملف إلى تخزين blob.
- عرض النتيجة في تطبيق ويب معالج. عموماً، يمكنك إرسال الأحداث إلى نقطة نهاية تعالج بيانات الحدث، وتتخذ الإجراءات. لتبسيط الأمر، يمكنك إرسال الأحداث إلى تطبيق ويب يجمع الرسائل ويعرضها.
إذا لم يكن لديك اشتراك Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
عند الانتهاء من ذلك، سوف ترى أنه تم إرسال بيانات الحدث إلى تطبيق الويب.

إنشاء حساب تخزين
تسجيل الدخول إلى مدخل Azure .
لإنشاء تخزين Blob، حدد Create a resource.
في Search، أدخل Storage account، وحدد Storage account من قائمة النتائج.
في الصفحة Storage account حدد Create لبدء إنشاء حساب التخزين. للاشتراك في الأحداث، بادر بإنشاء حساب تخزين V2 للأغراض العامة أو حساب تخزين Blob.
في الصفحة Create storage account، بادر باتخاذ الخطوات التالية:
حدد اشتراكك في Azure.
بالنسبة لمجموعة الموارد، أنشئ مجموعة موارد جديدة أو مجموعة موجودة.
أدخل اسماً مميزاً لحساب التخزين خاصتك.
حدد Region التي تريد إنشاء حساب التخزين فيها.
بالنسبة لخيار Redundancy، حدد Locally-redundant storage (LRS) من القائمة المنسدلة.
حدد Review + create.
في الصفحة Review + create راجع الإعدادات، وحدد Create.
ملاحظة
حسابات التخزين فقط من نوع StorageV2 (الأغراض العامة v2) و BlobStorage تدعم دمج الحدث. التخزين (v1 للأغراض العامة)لا يدعم التكامل مع شبكة الأحداث.
قم بإنشاء نقطة نهاية للرسالة
قبل الاشتراك في أحداث تخزين Blob، دعنا ننشئ نقطة نهاية لرسالة الحدث. عادةً ما تتخذ نقطة النهاية إجراءات بناءً على بيانات الحدث. لتبسيط بدء التشغيل السريع هذا، ستنشرتطبيق ويب مدمج مسبقًا يعرض رسائل الحدث. يتضمن الحل المنشور خطة خدمة التطبيقات، وتطبيق الويب الخاص بخدمة التطبيقات، وكود المصدر من GitHub.
حدد Deploy to Azure لنشر الحل في اشتراكك.
في الصفحة Custom deployment، بادر باتخاذ الخطوات التالية:
بالنسبة إلى مجموعة الموارد، حدد مجموعة الموارد التي أنشأتها عند إنشاء حساب التخزين. سيكون من الأسهل بالنسبة إليك التنظيف بعد الانتهاء من البرنامج التعليمي عن طريق حذف مجموعة الموارد.
بالنسبة إلى اسم الموقع، أدخل اسماً لتطبيق الويب.
بالنسبة إلى اسم خطة الاستضافة، أدخل اسماً لخطة خدمة التطبيقات لاستخدامها لاستضافة تطبيق الويب.
حدد Review + create.
في صفحة مراجعة+ إنشاء حدد إنشاء.
قد يستغرق النشر بضع دقائق حتى يكتمل. حدد التنبيهات (أيقونة الجرس) في المدخل، ثم حدد Go to resource group.

في الصفحة Resource group، في قائمة الموارد، حدد تطبيق الويب الذي أنشأته. كما ترى أيضاً خطة App Service وحساب التخزين في هذه القائمة.

في الصفحة App Service لتطبيق الويب الخاص بك، حدد عنوان URL للانتقال إلى موقع الويب. يجب أن يكون عنوان URL بهذا الشكل:
https://<your-site-name>.azurewebsites.net.
تأكد من رؤية الموقع مع عدم نشر أي أحداث عليه حتى الآن.

تمكين موفر موارد Event Grid
إذا لم تكن قد استخدمت Event Grid في اشتراك Azure من قبل، فقد تحتاج إلى تسجيل موفر موارد Event Grid.
في مدخل Azure:
- حدد Subscriptions في القائمة اليمنى.
- حدد الاشتراك الذي تستخدمه لـ Event Grid.
- في القائمة اليسرى، ضمن Settings، حدد Resource providers.
- ابحث عن Microsoft.EventGrid.
- إذا لم تكن مسجلاً، فحدد Register.
قد يستغرق التسجيل لحظات حتى ينتهي. حدد Refresh لتحديث الحالة. عندما تتحول Status إلى Registered تصبح مستعدًا للمتابعة.
الاشتراك في تخزين Blob
تشترك في موضوع لإخبار Event Grid بالأحداث التي تريد تعقبها، ومكان إرسال هذه الأحداث.
في المدخل، انتقل إلى حساب Azure Storage التي أنشأته سابقاً. في القائمة اليسرى، حدد All resources وحدد حساب التخزين خاصتك.
في الصفحة Storage account، حدد Eventsفي القائمة اليسرى.
حدد More Options، و Web Hook. ترسل أحداث إلى تطبيق العارض خاصتك باستخدام إخطار على الويب لنقطة النهاية.

في صفحة Create Event Subscription، بادر بتنفيذ الخطوات التالية:
أدخل اسماً للاشتراك في الحدث.
أدخل اسماً لـ موضوع النظام. للتعرف على موضوعات النظام، راجع نظرة عامة على موضوعات النظام.

حدد Web Hook في Endpoint type.

بالنسبة لـ Endpoint، انقر فوق Select an endpoint، وأدخِل عنوان URL لتطبيق الويب خاصتك وأضِف
api/updatesإلى عنوان URL الخاص بالصفحة الرئيسية (على سبيل المثال:https://spegridsite.azurewebsites.net/api/updates)، ثم حدد Confirm Selection.
الآن، في صفحة Create Event Subscription، حدد Create لإنشاء اشتراك الحدث.

اعرض تطبيق الويب الخاص بك مرة أخرى، ولاحظ أنه تم إرسال حدث التحقق من الاشتراك إليه. حدد أيقونة العين لتوسيع بيانات الحدث. ترسل شبكة الأحداث حدث التحقق بحيث يمكن التحقق من نقطة النهاية التي تريد تلقي بيانات الحدث. يتضمن تطبيق الويب تعليمة برمجية للتحقق من صحة الاشتراك.

الآن، لنبادر بتشغيل حدث لمعرفة كيف توزع Event Grid الرسالة إلى نقطة النهاية لديك.
إرسال حدث إلى نقطة النهاية خاصتك
تشغل حدث مخزن Blob عن طريق تحميل ملف. لا يحتاج الملف إلى أي محتوى محدد. تفترض المقالات أن لديك ملفاً يُسمى testfile.txt، ولكن يمكنك استخدام أي ملف.
في مدخل Azure، انتقل إلى حساب تخزين Blob خاصتك وحدد Containers في قائمة السماح.
حدد + Container. أعط الحاوية اسماً، واستخدم أي مستوى وصول، وحدد Create.

حدد حاويتك الجديدة.

لتحميل ملف، حدد Upload. في صفحة Upload blob، استعرض وحدد ملفاً تريد تحميله للاختبار، ثم حدد Upload على تلك الصفحة.

استعرض للوصول إلى ملف الاختبار خاصتك وحمِّله.
لقد شغلت الحدث، وأرسلت Event Grid الرسالة إلى نقطة النهاية التي كونتها عند الاشتراك. الرسالة بتنسيق JSON وتحتوي على صفيف ذي حدثٍ واحدٍ أو أكثر. في المثال التالي، تحتوي رسالة JSON على صفيف ذي حدثٍ واحدٍ. اعرض تطبيق الويب ولاحظ استلام حدث إنشاء blob.

تنظيف الموارد
إذا كنت تخطط لمتابعة العمل مع هذا الحدث، فلا تنظف الموارد التي جرى إنشاؤها في هذه المقالة. وإلا، تُحذف الموارد التي أنشأتها في هذه المقالة.
حدد مجموعة الموارد، ثم حدد Delete resource group.
الخطوات التالية
الآن بعد أن عرفت كيفية إنشاء مواضيع مخصصة واشتراكات أحداث، تعرف على المزيد عما يمكن أن تساعدك Event Grid على فعله: