ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: Azure Logic Apps (قياسي)
يوضح هذا الدليل كيفية إنشاء مثال لسير عمل تطبيق المنطق القياسي محليا الذي يمكنك تشغيله في Azure Logic Apps أحادي المستأجر عند استخدام Visual Studio Code مع ملحق Azure Logic Apps (Standard).
في هذا الدليل، يمكنك إنشاء مساحة عمل تطبيق منطقي قياسي ومشروع، وإنشاء سير العمل الخاص بك، ونشر مشروعك كمورد تطبيق منطقي قياسي في Azure حيث يمكن تشغيل سير العمل الخاص بك في Azure Logic Apps أحادي المستأجر أو في App Service Environment v3 (خطط App Service المستندة إلى Windows فقط). يمكنك أيضا نشر وتشغيل سير العمل الخاص بك في أي مكان يمكن ل Kubernetes تشغيله، مثل Azure أو Azure Kubernetes Service أو في أماكن العمل أو حتى موفري السحابة الآخرين، بسبب وقت التشغيل المعبأ في حاويات ل Azure Logic Apps (قياسي).
فيما يلي بعض الفوائد التي توفرها تطبيقات المنطق القياسية:
يمكنك إنشاء مهام سير العمل وتصحيحها وتشغيلها واختبارها محليا في بيئة تطوير Visual Studio Code المحلية. يوفر كل من مدخل Azure وVisual Studio Code القدرة على إنشاء موارد تطبيق المنطق القياسي وسير العمل وتشغيله ونشره. ومع ذلك، باستخدام Visual Studio Code، يمكنك تنفيذ هذه المهام محليا.
يمكن أن يتضمن مشروع تطبيق المنطق القياسي مهام سير عمل ذات حالة وبدون حالة.
تعمل مهام سير العمل في نفس مورد تطبيق المنطق القياسي والمستأجر في نفس العملية مثل وقت تشغيل Azure Logic Apps (قياسي)، بحيث تشترك في نفس الموارد وتوفر أداء أفضل.
يبدأ سير العمل المثال لهذا الدليل في البداية بمشغل طلب متبوعا بإجراء Office 365 Outlook . ينشئ مشغل الطلب نقطة نهاية قابلة للاستدعاء لسير العمل وينتظر طلب HTTPS وارد من أي مستدعي. عندما يتلقى المشغل طلبا ويطلق، يتم تشغيل الإجراء التالي عن طريق إرسال بريد إلكتروني إلى المستلم المحدد مع أي مخرجات مشغل تحددها. في وقت لاحق، يمكنك إضافة إجراء استجابة يقوم بإرجاع رد ومعالجة البيانات إلى المتصل.
في حين أن مثال هذا الدليل مستند إلى السحابة ويحتوي على بضع خطوات فقط، يمكنك إنشاء مهام سير عمل باستخدام عمليات من أكثر من 1400 موصل تساعدك على دمج مجموعة واسعة من الخدمات والأنظمة والتطبيقات والبيانات عبر السحابة والأماكن والبيئات المختلطة.
أثناء تقدمك خلال الدليل، يمكنك إكمال المهام عالية المستوى التالية:
- إنشاء مساحة عمل تطبيق منطقي قياسي ومشروع مع سير عمل فارغ ذو حالة.
- إضافة مشغل وإجراءات إلى سير العمل الخاص بك.
- قم بتشغيل وتصحيح الأخطاء والاختبار محليا.
- مراجعة محفوظات تشغيل سير العمل.
- ابحث عن تفاصيل اسم المجال للوصول إلى جدار الحماية.
- تمكين محفوظات التشغيل لسير العمل عديم الحالة.
- وزع إلى Azure، والذي يشمل تمكينًا اختياريًا Application Insights.
- تمكين Application Insights أو فتحه بعد التوزيع.
- إدارة مورد تطبيق المنطق المنشور في Visual Studio Code ومدخل Azure.
المتطلبات الأساسية
متطلبات الوصول والاتصال
إذا كنت تخطط لإنشاء مهام سير العمل وتشغيلها محليا باستخدام العمليات المضمنة فقط، والتي تعمل في الأصل في وقت تشغيل Azure Logic Apps (قياسي)، فلن تحتاج إلى متطلبات الوصول والاتصال في هذا القسم. ومع ذلك، بالنسبة للسيناريوهات التالية، تحتاج إلى تلبية هذه المتطلبات:
- انشر تطبيق المنطق الخاص بك إلى Azure من Visual Studio Code.
- إنشاء سير عمل يستخدم عمليات الموصل المدارة التي تعمل في Azure العمومي.
- الوصول إلى موارد تطبيق المنطق القياسي الحالي وسير العمل في Azure أو موارد Azure الأخرى المنشورة.
تتضمن هذه المتطلبات العناصر التالية:
حساب واشتراك Azure. إذا لم يكن لديك اشتراك، فيجب التسجيل للحصول على حساب Azure مجاني.
الوصول إلى الإنترنت بحيث يمكنك تنزيل الملحق المطلوب، والاتصال من Visual Studio Code بحساب Azure الخاص بك، واختبار مهام سير العمل التي تتضمن عمليات الموصل المدارة، والنشر إلى Azure من Visual Studio Code.
لإنشاء نفس مثال سير العمل في هذا الدليل، تحتاج إلى حساب بريد إلكتروني في Office 365 Outlook يستخدم حساب Microsoft للعمل أو المؤسسة التعليمية لتسجيل الدخول.
إذا لم يكن لديك حساب Office 365، فيمكنك استخدام أي إجراء آخر متوفر يمكنه إرسال رسائل من حساب بريدك الإلكتروني، على سبيل المثال، Outlook.com. إذا اخترت موصل بريد إلكتروني آخر، مثل Outlook.com، فلا يزال بإمكانك اتباع المثال، والخطوات العامة هي نفسها. ومع ذلك، قد تختلف تجربتك وخياراتك في بعض الطرق. على سبيل المثال، باستخدام موصل Outlook.com، استخدم حساب Microsoft الشخصي لتسجيل الدخول.
الأدوات
قم بتنزيل Visual Studio Code وتثبيته، وهو مجاني.
قم بتنزيل وتثبيت ملحق Azure Logic Apps (قياسي) ل Visual Studio Code باتباع الخطوات التالية:
في Visual Studio Code، في شريط النشاط، حدد Extensions. (لوحة المفاتيح: اضغط على Ctrl+Shift+X)
في مربع البحث extensions، أدخل azure logic apps standard. من قائمة النتائج، حدد Azure Logic Apps (Standard) > Install.
يقوم الملحق بتنزيل وتثبيت جميع التبعيات المطلوبة والإصدارات الصحيحة لأطر العمل التالية:
- أدوات Azure Functions الأساسية
- .NET SDK
- Node.js
بعد اكتمال التثبيت، يظهر الملحق في القائمة Extensions: Installed.
أعد تحميل Visual Studio Code أو أعد تشغيله للتأكد من تثبيت الملحق وجميع التبعيات بشكل صحيح.
للتأكد من تثبيت الملحق وكافة التبعيات بشكل صحيح، راجع التحقق من تثبيت الملحق.
حاليا، يمكنك تثبيت كل من ملحقات الاستهلاك (متعدد المستأجرين) والمقاييس (المستأجر الفردي) في نفس الوقت. تختلف تجارب التطوير عن بعضها البعض في بعض الطرق، ولكن يمكن أن يتضمن اشتراك Azure أنواع موارد تطبيق منطق الاستهلاك والقياسي. في Visual Studio Code، يعرض جزء Azure جميع تطبيقات المنطق المنشورة والمستضافة من Azure في اشتراك Azure، ولكنه ينظم تطبيقاتك بالطرق التالية:
- قسم الموارد : جميع تطبيقات المنطق القياسية في اشتراكك.
- قسم Logic Apps (Consumption): جميع تطبيقات منطق الاستهلاك في اشتراكك.
لتشغيل المشغلات والإجراءات المستندة إلى خطاف الويب محليا، مثل مشغل HTTP Webhook المضمن، تحتاج إلى إعداد إعادة توجيه عنوان URL لرد الاتصال في Visual Studio Code.
لتمكين تسجيل التشخيص والتتبع باستخدام Application Insights لتطبيق المنطق القياسي، يمكنك إكمال هذه المهمة إما أثناء نشر تطبيق المنطق أو بعد النشر. تحتاج إلى مورد Application Insights، ولكن يمكنك إنشاء هذا المورد مسبقا أو أثناء النشر أو بعد النشر.
تثبيت أو استخدام أداة يمكنها إرسال طلبات HTTP لاختبار نموذج سير العمل، على سبيل المثال:
- Visual Studio Code مع ملحق من Visual Studio Marketplace
- استدعاء PowerShell-RestMethod
- Microsoft Edge - أداة وحدة تحكم الشبكة
- برونو
- حليقه
تنبيه
بالنسبة للسيناريوهات التي يكون لديك فيها بيانات حساسة، مثل بيانات الاعتماد والأسرار ورمز الوصول المميزة ومفاتيح واجهة برمجة التطبيقات وغيرها من المعلومات المشابهة، تأكد من استخدام أداة تحمي بياناتك بميزات الأمان الضرورية. يجب أن تعمل الأداة دون اتصال أو محليا، ولا تتطلب تسجيل الدخول إلى حساب عبر الإنترنت أو مزامنة البيانات إلى السحابة. عند استخدام أداة بهذه الخصائص، فإنك تقلل من خطر تعريض البيانات الحساسة للجمهور.
التحقق من تثبيت الملحق
للتأكد من تثبيت الملحق وكافة التبعيات بشكل صحيح، أعد تحميل Visual Studio Code أو أعد تشغيله.
تأكد من أن Visual Studio Code يبحث تلقائيًا عن تحديثات الامتداد ويثبتها حتى تحصل كافة الملحقات الخاصة بك على آخر التحديثات. خلاف ذلك، يتعين عليك إلغاء تثبيت الإصدار القديم يدويا وتثبيت أحدث إصدار.
في القائمة ملف، انتقل إلى إعدادات التفضيلات>.
في علامة التبويب المستخدم، انتقل إلى ملحقات الميزات>.
تأكد من تحديد "التحقق التلقائي من التحديثات "، ومن تعيين "التحديث التلقائي" إلى "كافة الملحقات".
تأكد من تعيين إعداد Azure Logic Apps Standard: Project Runtime إلى الإصدار الصحيح:
في علامة التبويب User ، انتقل إلى >Extensions>Azure Logic Apps (Standard) .
تأكد من تعيين Project Runtime إلى الإصدار ~4، على سبيل المثال:
ملاحظة
يعد هذا الإصدار مطلوب لاستخدام إجراءات عمليات التعليمات البرمجية المضمنة.
الاتصال بحساب Azure الخاص بك
إذا لم تكن متصلا بالفعل بحساب Azure الخاص بك، فاتبع الخطوات التالية للاتصال:
في Visual Studio Code، في شريط النشاط، حدد أيقونة Azure لفتح جزء Azure .
في جزء Azure، ضمن Resources، حدد Sign in to Azure. عندما تظهر صفحة مصادقة Visual Studio Code، سجل الدخول باستخدام حساب Azure الخاص بك.
بعد تسجيل الدخول، يعرض جزء Azure اشتراكات Azure المقترنة بحساب Azure الخاص بك. في حالة عدم ظهور الاشتراكات المتوقعة، أو كنت تريد أن يعرض الجزء اشتراكات محددة فقط، فاتبع الخطوات التالية:
في القائمة الخاصة بالاشتراكات، انقل المؤشر إلى جانب الاشتراك الأول حتى يظهر الزر Select Subscriptions (أيقونة عامل التصفية). تحديد أيقونة التصفية.
أو، في شريط المعلومات الخاص بـ Visual Studio Code، حدد حساب Azure الخاص بك.
عند ظهور قائمة الاشتراكات المحدثة، حدد الاشتراكات التي تريدها، وتأكد من تحديد موافق.
إنشاء مساحة عمل محلية
يتطلب مشروع تطبيق المنطق دائما مساحة عمل. لذلك، قبل أن تتمكن من إنشاء تطبيق المنطق الخاص بك، يجب عليك إنشاء مساحة عمل حيث تحتفظ بمشروع تطبيق المنطق الخاص بك. يمكنك لاحقا استخدام مساحة العمل والمشروع هذه لإدارة تطبيق المنطق وتشغيله ونشره من Visual Studio Code إلى بيئة النشر الخاصة بك. يعد المشروع الأساسي مشابهًا لمشروع Azure Functions، المعروف أيضًا باسم مشروع تطبيق الوظيفة.
على الكمبيوتر، قم بإنشاء مجلد محلي فارغ لاستخدامه لاحقا لمساحة العمل والمشروع.
ينشئ هذا المثال مجلدا باسم fabrikam-workflows.
في Visual Studio Code، أغلق كافة المجلدات المفتوحة.
في نافذة Azure ، على شريط أدوات قسم Workspace ، من قائمة Azure Logic Apps ، حدد Create new logic app workspace.
إذا طلب منك جدار حماية Windows Defender منح الوصول إلى الشبكة Code.exe، وهو Visual Studio Code، وبالنسبة إلى func.exe، وهو Azure Functions Core Tools، فحدد >.
في نافذة تحديد مجلد ، انتقل إلى الموقع الذي أنشأت المجلد فيه، وحدد المجلد، واختر تحديد (لا تحدد المجلد مرتين).
على شريط أدوات Visual Studio Code، تظهر مطالبة لتسمية مساحة العمل الخاصة بك.
بالنسبة إلى توفير اسم مساحة عمل، أدخل اسم مساحة العمل لاستخدامه.
يستخدم هذا المثال Fabrikam-Workflows.
بعد ذلك، قم بإنشاء مشروع تطبيق المنطق الخاص بك.
إنشاء مشروع تطبيق المنطق الخاص بك
بعد إنشاء مساحة العمل المطلوبة، اتبع المطالبات لإنشاء مشروعك.
بالنسبة لقالب المشروع، حدد Logic app. أدخل اسم مشروع لاستخدامه.
يستخدم هذا المثال Fabrikam-Workflows.
بالنسبة إلى قالب سير العمل، حدد إما سير عمل الحالة أو سير العمل عديم الحالة، استنادا إلى السيناريو الخاص بك. أدخل اسم سير عمل لاستخدامه.
يحدد هذا المثال سير العمل ذو الحالة، الذي يخزن محفوظات سير العمل والمدخلات والمخرجات، ويستخدم Stateful-Workflow كاسم.
لا تخزن مهام سير العمل عديمة الحالة هذه البيانات وتدعم حاليا إجراءات الموصل المدارة فقط، وليس المشغلات. بالرغم من أن لديك خيار تمكين الموصلات في Azure لسير العمل عديم الحالة، فإن المصمم لا يعرض أي مشغلات للموصل المُدار لكي تحددها.
ملاحظة
إذا تلقيت خطأ يسمى azureLogicAppsStandard.createNewProject مع رسالة الخطأ، يتعذر الكتابة إلى إعدادات مساحة العمل لأن azureFunctions.suppressProject ليس تكوينا مسجلا، فحاول إعادة تثبيت ملحق Azure Functions ل Visual Studio Code، إما مباشرة من Visual Studio Marketplace أو من داخل Visual Studio Code.
الآن، اختر ما إذا كنت تريد فتح مشروعك في نافذة Visual Studio Code الحالية أو نافذة جديدة. حدد فتح في النافذة الحالية أو فتح في نافذة جديدة، استنادا إلى تفضيلاتك.
يفتح جزء Explorer لإظهار مساحة العمل والمشروع وملف workflow.json الذي تم فتحه تلقائيا. هذا الملف موجود في المجلد المسمى Stateful-Workflow ويخزن تعريف JSON الأساسي لسير العمل الذي تقوم بإنشاءه في المصمم. للحصول على معلومات حول بنية مشروعك، راجع بنية مشروع تطبيق المنطق القياسي.
يمكنك أيضا الحصول على مطالبة لتمكين الموصلات "المشتركة" متعددة المستأجرين التي تستضيفها Azure، على سبيل المثال:
لتمكين جميع الموصلات "المشتركة" المدارة التي تعمل في Azure متعددة المستأجرين حتى تتمكن من عرضها واختيار استخدامها في سير العمل، حدد استخدام الموصلات من Azure.
ملاحظة
إذا لم تحدد هذا الخيار، وحاولت لاحقا إضافة عملية موصل مدارة عند إنشاء سير العمل، فلا يمكنك المتابعة لأن جزء معلومات العملية يعرض دائرة تدور لا تتوقف.
بالنسبة إلى مجموعة موارد Azure، حدد Create new resource group. أدخل اسم مجموعة الموارد لاستخدامه.
يستخدم هذا المثال Fabrikam-Workflows-RG.
للاشتراك، حدد اشتراك Azure لاستخدامه مع مشروع تطبيق المنطق الخاص بك.
بالنسبة إلى الموقع الذي تريد إنشاء مجموعتك وموارده، حدد منطقة Azure.
يستخدم هذا المثال منطقة وسط غرب الولايات المتحدة الأمريكية.
إذا كان مشروعك يحتاج إلى إعداد آخر للتطوير أو يحتاج إلى عناصر دعم لإنشاء سير العمل الخاص بك، فشاهد السيناريوهات التالية والمهام ذات الصلة:
السيناريو مهمة تشغيل المشغلات أو الإجراءات المستندة إلى خطاف الويب محليا. إعداد إعادة التوجيه لعناوين URL لرد اتصال خطاف الويب. إعداد محفوظات تشغيل سير العمل عديمة الحالة. تمكين محفوظات التشغيل لسير العمل عديم الحالة. أضف البيانات الاصطناعية والتبعيات، مثل الخرائط والمخططات والتجميعات. إضافة البيانات الاصطناعية والتبعيات. العمل مع مشروع (.NET) قائم على NuGet تحويل مشروع حزمة مستندة إلى ملحق (Node.js) إلى مشروع (.NET) قائم على حزمة NuGet.
ملاحظة: لتحويل مشروع مستند إلى حزمة ملحق (Node.js) قمت بإنشائه قبل وجود دعم التجميعات، راجع أيضا ترحيل المشاريع المستندة إلى حزمة NuGet لاستخدام التجميعات في المجلد lib.إنشاء الموصلات المضمنة الخاصة بك. 1. تحويل مشروع مستند إلى مجموعة الملحقات (Node.js) إلى مشروع NuGet المستند إلى حزمة (.NET).
2. تمكين التأليف المضمن في الموصل.
الآن، افتح مصمم سير العمل.
فتح مصمم سير العمل
بعد فتح المشروع في جزء Explorer، افتح المصمم حتى تتمكن من إنشاء سير العمل الخاص بك.
من القائمة المختصرة لملفworkflow.json ، حدد Open Designer.
ملاحظة
بعد تحديد هذا الخيار، قد تتلقى رسالة تفيد بأن بدء التشغيل قد يستغرق بضع ثوان بسبب "بدء تشغيل واجهة برمجة تطبيقات وقت تصميم سير العمل". يمكنك تجاهل هذه الرسالة أو تحديد OK.
يفتح Visual Studio Code مصمم سير العمل ويعرض مطالبة إضافة مشغل ، على سبيل المثال:
ملاحظة
إذا لم يفتح المصمم، فراجع قسم استكشاف الأخطاء وإصلاحها، يفشل Designer في الفتح.
بعد ذلك، أضف مشغلا وإجراءات لإنشاء سير العمل الخاص بك.
إضافة مشغل وإجراء
لإنشاء سير العمل، ابدأ سير العمل باستخدام مشغل، ثم أضف إجراء واحدا في البداية. وبهذه الطريقة، يمكنك اختبار سير العمل قبل إضافة الإجراء التالي. يستخدم سير العمل المثال المشغل والإجراءات التالية، والمعروفة بشكل جماعي باسم العمليات:
الموصل أو مجموعة العمليات | اسم العملية | نوع العملية | الوصف |
---|---|---|---|
طلب | عند تلقي طلب HTTP | المشغل (مضمن) | إنشاء عنوان URL لنقطة النهاية على سير العمل لتلقي المكالمات الواردة أو الطلبات من خدمات أخرى أو مهام سير عمل تطبيق المنطق. لمزيد من المعلومات، راجع تلقي مكالمات HTTPs الواردة إلى مهام سير العمل والاستجابة لها. |
Office 365 Outlook | إرسال بريد إلكتروني | الإجراء (مدار) | أرسل بريدا إلكترونيا باستخدام حساب Office 365 Outlook. لاتباع الخطوات الواردة في هذا الدليل، تحتاج إلى حساب بريد إلكتروني في Office 365 Outlook. لمزيد من المعلومات، راجع الاتصال ب Office 365 Outlook من Azure Logic Apps. ملاحظة: إذا كان لديك حساب بريد إلكتروني مدعوم من قبل موصل مختلف، يمكنك استخدام هذا الموصل، ولكن تختلف تجربة مستخدم هذا الموصل عن الخطوات الواردة في هذا المثال. |
طلب | استجابه | الإجراء (مضمن) | إرسال رد وإرجاع البيانات مرة أخرى إلى المتصل. لمزيد من المعلومات، راجع إضافة إجراء استجابة. |
إضافة مشغل الطلب
في مصمم سير العمل، حدد إضافة مشغل، إذا لم يكن محددا بالفعل.
يفتح جزء Add a trigger ويعرض معرضا حيث يمكنك التحديد من الموصلات ومجموعات العمليات المتوفرة، على سبيل المثال:
في جزء إضافة مشغل ، اتبع هذه الخطوات العامة لإضافة مشغل الطلبالمسمى عند تلقي طلب HTTP.
يحدد المثال التالي الخيار المضمن بحيث تظهر المشغلات المضمنة فقط:
عندما يظهر المشغل على المصمم، يفتح جزء معلومات المشغل ويعرض معلمات المشغل وإعداداته والمهام الأخرى ذات الصلة.
ملاحظة
إذا لم يظهر جزء معلومات المشغل، فتأكد من تحديد المشغل على المصمم.
احفظ سير العمل الخاص بك. في شريط أدوات المصمم، حدد "Save".
إضافة الإجراء Office 365 Outlook
على المصمم، ضمن مشغل الطلب ، اتبع هذه الخطوات العامة لإضافة إجراء Office 365 Outlookالمسمى إرسال بريد إلكتروني (V2).
إذا لم يظهر الإجراء في النتائج الأولية، بجوار اسم الموصل، فحدد مشاهدة المزيد، على سبيل المثال:
عند ظهور جزء مصادقة الإجراء، حدد تسجيل الدخول لإنشاء اتصال بحساب بريدك الإلكتروني.
اتبع المطالبات اللاحقة لمصادقة بيانات الاعتماد الخاصة بك، والسماح بالوصول، والسماح بالعودة إلى Visual Studio Code.
ملاحظة
إذا مر وقت طويل قبل إكمال المطالبات، تنتهي مهلة عملية المصادقة وتفشل. في هذه الحالة، ارجع إلى المصمم وأعد محاولة التسجيل الخاصة بالدخول لإنشاء الاتصال.
عند ظهور مطالبة مصادقة Microsoft، حدد حساب المستخدم ل Office 365 Outlook. في صفحة التأكيد المطلوبة التي تفتح، حدد السماح بالوصول.
عندما يطالب Azure Logic Apps بفتح ارتباط Visual Studio Code، حدد Open.
عندما يطالبك Visual Studio Code بفتح الملحق في Microsoft Azure Tools، حدد Open.
بعد أن يقوم Visual Studio Code بإنشاء الاتصال الخاص بك، تظهر بعض الموصلات الرسالة التي تفيد بأن الاتصال سيكون صالحا لمدة <n> أيام فقط. ينطبق هذا الحد الزمني فقط على المدة أثناء تأليف سير عمل تطبيق المنطق في Visual Studio Code. بعد النشر، لم يعد هذا الحد ينطبق لأنه يمكن مصادقة سير العمل في وقت التشغيل باستخدام الهوية المدارة المعينة من قبل النظام التي تم تمكينها تلقائيا. تختلف هذه الهوية المُدارة عن بيانات اعتماد المصادقة أو سلسلة الاتصال التي تستخدمها عند إنشاء اتصال. في حالة تعطيل هذه الهوية المُدارة المعينة من جانب النظام، فلن تعمل الاتصالات في وقت التشغيل.
في جزء إرسال معلومات بريد إلكتروني الذي يفتح، في علامة التبويب معلمات ، قم بتوفير المعلومات المطلوبة للإجراء.
ملاحظة
إذا لم يتم فتح جزء معلومات الإجراء تلقائيا، فحدد إجراء إرسال بريد إلكتروني على المصمم.
الخاصية مطلوب القيمة الوصف إلى نعم < عنوان بريدك الإلكتروني> مستلم البريد الإلكتروني، والذي يمكن أن يكون عنوان بريدك الإلكتروني لأغراض الاختبار. يستخدم هذا المثال البريد الإلكتروني الوهمي، sophia.owen@fabrikam.com. موضوع نعم رسالة بريد إلكتروني من مثال سير العمل عنوان البريد الإلكتروني نص الرسالة نعم مرحبا من مثال سير العمل الخاص بك! محتوى نص البريد الإلكتروني على سبيل المثال:
احفظ سير العمل الخاص بك. في شريط المصمم، حدد Save.
بنية مشروع تطبيق المنطق القياسي
في Visual Studio Code، يشتمل مشروع logic app على أحد الأنواع التالية:
- تعتمد على حزمة الملحقات (Node.js)، وهي النوع الافتراضي
- NuGet مستند إلى الحزم (.NET)، والذي يمكنك تحويله من النوع الافتراضي
استنادا إلى هذه الأنواع، قد يتضمن مشروعك مجلدات أو ملفات مختلفة قليلا. على سبيل المثال، يحتوي المشروع المستند إلى حزمة Nuget على مجلد .bin يحتوي على حزم وملفات مكتبة أخرى. لا يتضمن المشروع المستند إلى مجموعة الملحقات هذا المجلد .bin .
تتطلب بعض السيناريوهات مشروعا يستند إلى حزمة NuGet لتشغيل تطبيقك، على سبيل المثال، عندما تريد تطوير وتشغيل عمليات مضمنة مخصصة. لمزيد من المعلومات بشأن تحويل مشروعك لاستخدام NuGet، راجع تمكين تأليف الموصل المدمج.
يحتوي المشروع الافتراضي المستند إلى مجموعة الملحقات على بنية مجلد وملف مشابهة للمثال التالي:
MyWorkspaceName
| MyBundleBasedLogicAppProjectName
|| .vscode
|| Artifacts
||| Maps
|||| MapName1
|||| ...
||| Rules
||| Schemas
|||| SchemaName1
|||| ...
|| lib
||| builtinOperationSdks
|||| JAR
|||| net472
||| custom
|| WorkflowName1
||| workflow.json
||| ...
|| WorkflowName2
||| workflow.json
||| ...
|| workflow-designtime
||| host.json
||| local.settings.json
|| .funcignore
|| connections.json
|| host.json
|| local.settings.json
على مستوى الجذر لمشروعك، يمكنك العثور على المجلدات والملفات التالية مع العناصر الأخرى:
اسم | مجلد أو ملف | الوصف |
---|---|---|
.vscode | مجلد | يحتوي على ملفات الإعدادات المتعلقة بـ Visual Studio Code، مثل ملفات extension.json وlaunch.json وsettings.json وfeatures.json . |
التحف | مجلد | يحتوي على البيانات الاصطناعية حساب التكامل التي تحددها وتستخدمها في مهام سير العمل التي تدعم سيناريوهات الأعمال التجارية (B2B). على سبيل المثال، تتضمن بنية العينة المجلدات التالية: - الخرائط: يحتوي على خرائط لاستخدامها في عمليات تحويل XML. - المخططات: يحتوي على مخططات لاستخدامها لعمليات التحقق من صحة XML. - القواعد: البيانات الاصطناعية لقواعد العمل في مشاريع المحرك المستندة إلى القواعد. |
ليب | مجلد | يحتوي على تجميعات مدعومة يمكن لتطبيق المنطق الخاص بك استخدامها أو الرجوع إليها. يمكنك تحميل هذه التجميعات إلى مشروعك في Visual Studio Code، ولكن يجب إضافتها إلى مجلدات معينة في مشروعك. على سبيل المثال، يتضمن هذا المجلد المجلدات التالية: - builtinOperationSdks: يحتوي على مجلدي JARوnet472 لتجميعات Java و.NET Framework، على التوالي. - مخصص: يحتوي على تجميعات .NET Framework المخصصة. لمزيد من المعلومات حول أنواع التجميع المدعومة ومكان وضعها في مشروعك، راجع إضافة تجميعات إلى مشروعك. |
< اسم سير العمل> | مجلد | لكل سير عمل، يتضمن المجلد <WorkflowName> ملف workflow.json، والذي يحتوي على تعريف JSON الأساسي لسير العمل. |
وقت تصميم سير العمل | مجلد | يحتوي على ملفات الإعدادات المتعلقة ببيئة التطوير. |
.funcignore | ملف | يحتوي على معلومات تتعلق بـ Azure Functions Core Toolsالمثبتة لديك. |
connections.json | ملف | يحتوي على البيانات التعريفية ونقاط النهاية والمفاتيح لأي اتصالات مُدارة وAzure Functions التي تستخدمها مهام سير العمل. هام: لاستخدام اتصالات ووظائف مختلفة لكل بيئة، تأكد من تخصيص ملف links.json هذا وتحديث نقاط النهاية. |
host.json | ملف | يحتوي على إعدادات وقيم التكوين الخاصة بوقت التشغيل، على سبيل المثال، الحدود الافتراضية لنظام Azure Logic Apps الأساسي للمستأجر الفردي، والتطبيقات المنطقية، ومهام سير العمل، والمشغلات، والإجراءات. في المستوى الجذر لمشروع تطبيقك المنطقي، يحتوي ملف بيانات التعريف host.json على إعدادات التكوين والقيم الافتراضية التي تستخدمها جميع مهام سير العمل في نفس التطبيق المنطقي خلال التشغيل، سواء محلياً أو في Azure. للحصول على معلومات مرجعية، راجع تحرير إعدادات التطبيق وإعدادات المضيف. ملاحظة: عند إنشاء تطبيقك المنطقي، يقوم Visual Studio Code بإنشاء نسخة احتياطية من ملف host.snapshot. *. json في حاوية التخزين الخاصة بك. إذا قمت بحذف التطبيق المنطقي الخاص بك، فلن يتم حذف ملف النسخ الاحتياطي هذا. إذا قمت بإنشاء تطبيق منطق آخر بنفس الاسم، فسيتم إنشاء ملف لقطة آخر. يمكنك الحصول على ما يصل إلى 10 لقطات فقط لنفس تطبيق المنطق. إذا تجاوزت هذا الحد، فستحصل على الخطأ التالي: Microsoft.Azure.WebJobs.Script.WebHost: Repository has more than 10 non-decryptable secrets backups (host)) لحل هذا الخطأ، احذف ملفات اللقطة الإضافية من حاوية التخزين الخاصة بك. |
local.settings.json | ملف | يحتوي على إعدادات التطبيق وسلاسل الاتصال والإعدادات الأخرى التي تستخدمها مهام سير العمل خلال التشغيل محلياً. تنطبق هذه الإعدادات والقيم فقط عند تشغيل مشاريعك في بيئة التطوير المحلية. خلال التوزيع إلى Azure، يتم تجاهل الملف والإعدادات ولا يتم تضمينها في التوزيع الخاص بك. يخزن هذا الملف الإعدادات والقيم كمتغيرات بيئة محلية تستخدمها أدوات التطوير المحلية للقيم appSettings . يمكنك استدعاء متغيرات البيئة هذه والإشارة إليها في وقت التشغيل ووقت التوزيع باستخدام إعدادات التطبيق والمعلمات. هام: يمكن أن يحتوي ملف local.settings.json على بيانات سرية، لذا تأكد من استبعاد هذا الملف أيضاً من التحكم في مصدر المشروع. يحتوي هذا الملف أيضا على إعدادات التطبيق التي يحتاجها تطبيق المنطق الخاص بك للعمل بشكل صحيح. للحصول على معلومات مرجعية، راجع تحرير إعدادات التطبيق وإعدادات المضيف. |
مهام إعداد التطوير الأخرى
بعد إنشاء مشروعك، قد تظل لديك مهام إعداد أخرى لدعم سيناريوهات تطوير محلية محددة حول إنشاء تطبيقات المنطق القياسية وتشغيلها ونشرها باستخدام Visual Studio Code. تصف الأقسام التالية مهام هذه السيناريوهات.
فعل خطافات الويب قيد التشغيل محليًا
عملية الإخطار على الويب هي مشغل سير عمل أو إجراء ينتظر حدوث حدث قبل تنفيذ العملية. على وجه التحديد، تنتظر عملية الإخطار على الويب حتى يصل طلب HTTPS من خدمة المتصل أو سير العمل قبل أن تتمكن العملية من المتابعة. على سبيل المثال، تتضمن خطافات الويب عمليات مثل مشغل الطلب ومشغل HTTP + Webhook .
في مدخل Microsoft Azure، يشترك وقت تشغيل Azure Logic Apps تلقائيا في خطاف الويب في خدمة المتصل أو سير العمل. يسجل وقت التشغيل عنوان URL لرد الاتصال لخطاف الويب مع خدمة المتصل أو سير العمل. ثم ينتظر الإخطار على الويب أن يرسل المتصل الطلب باستخدام عنوان URL لرد الاتصال.
ومع ذلك، في Visual Studio Code، يجب عليك إكمال بعض مهام الإعداد لعمليات webhook للعمل بشكل صحيح. في هذا السيناريو، يستخدم عنوان URL رد الاتصال خادم المضيف المحلي (http://localhost:7071/...
)، وهو خادم خاص، لذلك لا يمكن للمتصل إرسال طلب مباشرة عبر الإنترنت إلى عنوان URL هذا.
بالنسبة لعمليات الإخطار على الويب في مهام سير العمل قيد التشغيل محليا، تحتاج إلى إعداد عنوان URL عام يعرض خادم المضيف المحلي ويرسل المكالمات بأمان من المتصل إلى عنوان URL لرد الاتصال. بإمكانك استخدام خدمة إعادة توجيه وأداة مثل ngrok، والتي تفتح نفق HTTP إلى منفذ المضيف المحلي الخاص بك، أو يمكنك استخدام الأداة المكافئة الخاصة بك.
إعداد إعادة توجيه الاتصال باستخدام ngrok
انتقل إلى موقع ngrok على الويب. قم بالتسجيل للحصول على حساب جديد أو تسجيل الدخول إلى حسابك، إذا كان لديك حساب بالفعل.
احصل على الرمز المميز للمصادقة الشخصية، والذي يحتاجه عميل ngrok للاتصال بالوصول إلى الحساب الخاص بك ومصادقة الوصول إليه.
للعثور على صفحة الرمز المميز للمصادقة، في قائمة لوحة معلومات حسابك، قم بتوسيع Authentication، وحدد Your Authtoken.
من مربع Your Authtoken، انسخ الرمز المميز إلى موقع آمن.
من ngrokصفحة تنزيل أو لوحة معلومات حسابك، نزّل إصدار ngrok الذي تريده، واستخرج ملف .zip.
للمزيد من المعلومات، راجع الخطوة 1: إلغاء ضغط التثبيت.
على جهاز الكمبيوتر الخاص بك، افتح أداة موجه الأوامر. استعرض وصولا إلى الموقع حيث يوجد لديك ملف ngrok.exe.
قم بتوصيل عميل ngrok بحساب ngrok الخاص بك عن طريق تشغيل الأمر التالي:
ngrok authtoken <your-authentication-token>
للمزيد من المعلومات، راجع الخطوة 2: توصيل الحساب الخاص بك.
افتح نفق HTTP إلى منفذ المضيف المحلي 7071 عن طريق تشغيل الأمر التالي:
ngrok http 7071
للمزيد من المعلومات، راجع الخطوة 3: شغله.
من الإخراج، ابحث عن السطر الموضح أدناه:
http://<domain>.ngrok.io -> http://localhost:7071
انسخ عنوان URL الذي يشتمل على هذا التنسيق واحفظه:
http://<domain>.ngrok.io
أعد عنوان URL لإعادة التوجيه في إعدادات التطبيق الخاص بك
في Visual Studio Code، على المصمم، أضف عملية webhook التي تريد استخدامها في سير العمل الخاص بك.
يستمر هذا المثال مع مشغل HTTP + Webhook .
عندما تظهر المطالبة لموقع نقطة نهاية المضيف، أدخل عنوان URL لإعادة التوجيه (إعادة التوجيه) الذي أنشأته مسبقًا.
ملاحظة
يؤدي تجاهل المطالبة إلى ظهور تحذير بأنه يلزم عليك توفير عنوان URL لإعادة التوجيه، لذا حدد Configure، وأدخل عنوان URL. بعد الانتهاء من هذه الخطوة، لن تظهر المطالبة لعمليات webhook اللاحقة التي قد تضيفها.
لإظهار المطالبة، على مستوى جذر المشروع، افتح القائمة المختصرة لملف local.settings.json ، وحدد Configure Webhook Redirect Endpoint. تظهر المطالبة الآن حتى تتمكن من تقديم عنوان URL لإعادة التوجيه.
يضيف Visual Studio Code عنوان URL لإعادة التوجيه إلى ملف local.settings.json في المجلد الجذر للمشروع الخاص بك. في
Values
الكائن، تظهر الخاصية المسماةWorkflows.WebhookRedirectHostUri
الآن ويتم تعيينها إلى عنوان URL لإعادة التوجيه، على سبيل المثال:{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "dotnet", "FUNCTIONS_V2_COMPATIBILITY_MODE": "true", <...> "Workflows.WebhookRedirectHostUri": "http://xxxXXXXxxxXXX.ngrok.io", <...> } }
لمزيد من المعلومات حول إعدادات التطبيق هذه، راجع تحرير إعدادات التطبيق وإعدادات المضيف لتطبيقات المنطق القياسية.
في المرة الأولى عند بدء جلسة تصحيح الأخطاء المحلية أو تشغيل سير العمل دون تصحيح الأخطاء، يسجل وقت تشغيل Azure Logic Apps سير العمل مع المتصل ويشترك في نقطة نهاية المتصل التي تعلم عمليات الإخطار على الويب. في المرة التالية التي يشغل سير العمل الخاص بك، لن يسجل وقت التشغيل أو إعادة الاشتراك لأن تسجيل الاشتراك موجود بالفعل في التخزين المحلي.
عند إيقاف جلسة عمل تصحيح الأخطاء لسير عمل يستخدم عمليات الإخطار على الويب التي يتم تشغيلها محليا، لا يتم حذف تسجيلات الاشتراك الموجودة. لإلغاء التسجيل، يلزم عليك إزالة تسجيلات الاشتراك يدويًا أو حذفها.
ملاحظة
بعد أن يبدأ سير العمل الخاص بك في العمل، قد تعرض نافذة المحطة الطرفية أخطاء مثل هذا المثال:
message='Http request failed with unhandled exception of type 'InvalidOperationException' and message: 'System.InvalidOperationException: Synchronous operations are disallowed. Call ReadAsync or set AllowSynchronousIO to true instead.'
في هذه الحالة، افتح الملف local.settings.json في المجلد الجذر للمشروع الخاص بك، وتأكد من تعيين الخاصية إلى true
:
"FUNCTIONS_V2_COMPATIBILITY_MODE": "true"
تمكين محفوظات التشغيل لسير العمل عديم الحالة
لتصحيح أخطاء سير عمل عديم الحالة بسهولة أكبر، يمكنك تمكين محفوظات التشغيل لسير العمل هذا، ثم تعطيل محفوظات التشغيل عند الانتهاء. اتبع هذه الخطوات لـ Visual Studio Code، أو إذا كنت تعمل في مدخل Microsoft Azure، فشاهد إنشاء مهام سير عمل تستند إلى مستأجر واحد في مدخل Microsoft Azure.
في مشروع Visual Studio Code، على مستوى المجلد الجذر، افتح ملف local.settings.json .
أضف الخاصية
Workflows.<workflow-name>.operationOptions
، واضبط القيمة علىWithStatelessRunHistory
، على سبيل المثال:بالنسبة لنظام التشغيل
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "dotnet", "Workflows.<workflow-name>.OperationOptions": "WithStatelessRunHistory" } }
macOS أو Linux
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=fabrikamstorageacct; \ AccountKey=<access-key>;EndpointSuffix=core.windows.net", "FUNCTIONS_WORKER_RUNTIME": "dotnet", "Workflows.<workflow-name>.OperationOptions": "WithStatelessRunHistory" } }
في مجلد المشروع المسمى workflow-designtime، افتح ملف local.settings.json ، وقم بإجراء نفس التغيير.
لتعطيل محفوظات التشغيل عند الانتهاء، قم إما بتعيين الخاصية
Workflows.<workflow-name>.OperationOptions
إلىNone
، أو احذف الخاصية وقيمتها.
إضافة البيانات الاصطناعية والتبعيات إلى مشروعك
في سيناريوهات معينة، قد يتضمن سير العمل عمليات تتطلب تبعيات مثل التجميعات أو البيانات الاصطناعية مثل الخرائط أو المخططات أو القواعد. في Visual Studio Code، يمكنك إضافة هذه العناصر إلى المجلدات المقابلة في مشروعك، على سبيل المثال:
بند | نوع الملف | الوصف |
---|---|---|
الخرائط | .xslt | لمزيد من المعلومات، راجع إضافة خرائط للتحويلات في مهام سير العمل. |
المخططات | .xsd | لمزيد من المعلومات، راجع إضافة مخططات للتحقق من الصحة. |
القواعد | .xml | لمزيد من المعلومات، راجع إنشاء مشروع Azure Logic Apps Rules Engine. |
التجميعات |
-
.dll (.NET Framework أو .NET 8) - .jar (Java) |
يمكن لمورد تطبيق المنطق القياسي استخدام أنواع معينة من التجميعات أو الرجوع إليها، والتي يمكنك تحميلها إلى مشروعك في Visual Studio Code. ومع ذلك، يجب إضافتها إلى مجلدات مشروع معينة. لمزيد من المعلومات، راجع إضافة تجميعات مرجعية. ملاحظة: إذا كان لديك مشروع تطبيق منطقي (.NET) مستند إلى حزمة NuGet قبل أن يصبح دعم التجميعات متوفرا، فشاهد ترحيل المشاريع المستندة إلى حزمة NuGet لاستخدام التجميعات في مجلد lib. |
تحويل مشروعك إلى NuGet المستند إلى الحزمة (.NET)
بشكل افتراضي، ينشئ Visual Studio Code مشروع تطبيق المنطق الخاص بك كمشروع مستند إلى مجموعة الملحقات (Node.js). إذا كنت بحاجة إلى مشروع يستند إلى حزمة NuGet (.NET)، على سبيل المثال، لإنشاء موصلات مضمنة خاصة بك، يجب تحويل مشروعك الافتراضي إلى مشروع يستند إلى حزمة NuGet (.NET).
هام
يعد هذا الإجراء هو عملية أحادية الاتجاه لا يمكنك التراجع عنها.
في جزء Explorer، حرك مؤشر الماوس فوق أي منطقة فارغة أسفل مجلدات المشروع وملفاته، وافتح القائمة المختصرة، وحدد Convert to NuGet-based logic app project.
عندما تظهر المطالبة، أكد تحويل المشروع.
ترحيل المشاريع المستندة إلى حزمة NuGet لاستخدام التجميعات في المجلد "lib"
هام
هذه المهمة مطلوبة فقط لمشاريع التطبيق المنطقي (.NET) المستندة إلى حزمة NuGet التي تم إنشاؤها قبل توفر دعم التجميعات.
إذا قمت بإنشاء مشروع تطبيق المنطق الخاص بك عندما لم يكن دعم التجميعات متوفرا لسير عمل تطبيق المنطق القياسي، يمكنك إضافة الأسطر التالية إلى < للعمل مع المشاريع التي تستخدم التجميعات:
<ItemGroup>
<LibDirectory Include="$(MSBuildProjectDirectory)\lib\**\*"/>
</ItemGroup>
<Target Name="CopyDynamicLibraries" AfterTargets="_GenerateFunctionsExtensionsMetadataPostPublish">
<Copy SourceFiles="@(LibDirectory)" DestinationFiles="@(LibDirectory->'$(MSBuildProjectDirectory)\$(PublishUrl)\lib\%(RecursiveDir)%(Filename)%(Extension)')"/>
</Target>
هام
بالنسبة لمشروع يعمل على Linux أو macOS، تأكد من تحديث فاصل الدليل. على سبيل المثال، راجع الصورة التالية التي تعرض التعليمات البرمجية السابقة المضافة إلى < ملف project-name.csproj>:
فعل تأليف الموصل المدمج
يمكنك إنشاء موصلات مضمّنة خاصة بك لأي خدمة تحتاج إليها عن طريق استخدام إطار عمل قابلية توسعة Azure Logic Apps أحادي المستأجر. على غرار الموصلات المضمنة مثل Azure Service Bus و SQL Server، تتيح هذه الموصلات إنتاجية أعلى ومعدل نقل منخفض واتصال محلي وتعمل محليًا في نفس العملية مثل وقت تشغيل Azure Logic Apps للمستأجر الفردي.
تتوفر إمكانية التأليف حالياً فقط في Visual Studio Code، ولكن لا يتم تمكينها افتراضياً. لإنشاء هذه الموصلات، اتبع الخطوات التالية:
إذا لم تكن قد قمت بالفعل، فحول مشروعك المستند إلى مجموعة الملحقات (Node.js) إلى مشروع (.NET) مستند إلى حزمة NuGet.
راجع واتبع الخطوات الواردة في المقالة، Azure Logic Apps Running Anywhere - إمكانية توسعة الموصل المضمن.
تشغيل مهام سير العمل وتصحيحها واختبارها محليا
توضح الأقسام التالية كيف يمكنك تعيين نقاط التوقف وبدء جلسة تصحيح الأخطاء لتشغيل سير العمل واختباره محليا.
تعيين نقاط التوقف لتصحيح الأخطاء
قبل تشغيل سير عمل logic app واختباره عن طريق بدء جلسة تصحيح الأخطاء، يمكنك تعيين نقاط التوقف داخل ملف workflow.json لكل سير عمل. لا يلزم أي إعداد آخر.
نقاط التوقف مدعومة حاليا للإجراءات فقط، وليس للمشغلات. يحتوي كل تعريف إجراء على مواقع نقاط التوقف هذه:
اضبط نقطة البداية على السطر الذي يظهر اسم الإجراء. عندما تصل نقطة التوقف هذه أثناء جلسة التصحيح، بإمكانك مراجعة مدخلات الإجراء قبل تقييمها.
اضبط نقطة نهاية على السطر الذي يظهر قوس إغلاق متعرج للإجراء (}). عندما تصل نقطة التوقف هذه أثناء جلسة التصحيح، بإمكانك مراجعة نتائج الإجراء قبل انتهاء تشغيل الإجراء.
لإضافة نقطة توقف، اتبع الخطوات الموضحة أدناه:
افتح ملف workflow.json لسير العمل الذي ترغب في تصحيحه.
في السطر الذي تريد تعيين نقطة التوقف فيه، في العمود الأيسر، حدد داخل هذا العمود. لإزالة نقطة توقف، حدد نقطة التوقف هذه.
عند بدء جلسة التصحيح، تظهر طريقة العرض Run على الجانب الأيسر من نافذة التعليمات البرمجية، في حين يظهر شريط أدوات تتبع الأخطاء بالقرب من الجزء العلوي.
ملاحظة
في حالة عدم ظهور طريقة العرض Run تلقائيًا، فاضغط على Ctrl+Shift+D.
لمراجعة المعلومات المتاحة عند الوصول إلى نقطة توقف، في طريقة العرض تشغيل، افحص جزء Variables.
لمتابعة تنفيذ سير العمل، في شريط أدوات تتبع الأخطاء، حدد Continue (زر التشغيل).
بإمكانك إضافة وإزالة نقاط التوقف في أي وقت أثناء تشغيل سير العمل. ومع ذلك، في حالة تحديث ملف workflow.json بعد بدء التشغيل، فلن تحدث نقاط التوقف تلقائيا. لتحديث نقاط التوقف، أعد تشغيل logic app.
للحصول على معلومات عامة، راجع Breakpoints - Visual Studio Code.
تتبع أخطاء سير العمل واختباره
لاختبار سير العمل، اتبع هذه الخطوات لتشغيل جلسة تصحيح الأخطاء والعثور على عنوان URL لنقطة النهاية التي تم إنشاؤها بواسطة مشغل الطلب . أنت بحاجة إلى عنوان URL هذا بحيث يمكنك لاحقًا إرسال طلب إلى نقطة النهاية هذه.
إذا كان لديك سير عمل عديم الحالة، فقم بتمكين محفوظات التشغيل لسير العمل لتسهيل تصحيح الأخطاء.
من قائمة Run ، حدد Start Debugging (F5).
تفتح نافذة Terminal بحيث بإمكانك مراجعة جلسة تصحيح الأخطاء.
ملاحظة
في حالة تلقيك الخطأ، «يوجد خطأ بعد تشغيل preLaunchTask «generateDebugSymbols، راجع قسم استكشاف الأخطاء وإصلاحها، فشل بدء جلسة تصحيح الأخطاء.
الآن، ابحث عن عنوان URL لرد الاتصال لنقطة النهاية التي تم إنشاؤها بواسطة مشغل الطلب .
أعد فتح جزء المستكشف لعرض مشروعك.
من القائمة المختصرة لملفworkflow.json ، حدد نظرة عامة.
انسخ عنوان URL رد الاتصال واحفظه، والذي يبدو مشابها لعنون URL التالي لمشغل عند تلقي طلب HTTP في هذا المثال:
http://localhost:7071/api/<workflow-name>/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<shared-access-signature>
لاختبار عنوان URL لرد الاتصال وتشغيل سير العمل، أرسل طلب HTTP إلى عنوان URL، بما في ذلك الأسلوب الذي يتوقعه المشغل، باستخدام أداة طلب HTTP والتعليمات الخاصة به.
يستخدم هذا المثال أسلوب GET مع عنوان URL المنسخ، والذي يبدو مثل النموذج التالي:
GET http://localhost:7071/api/Stateful-Workflow/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<shared-access-signature>
عند تشغيل المشغل، يتم تشغيل سير عمل المثال وإرسال بريد إلكتروني يبدو مشابهًا لهذا المثال:
في Visual Studio Code، يمكنك الرجوع إلى صفحة نظرة عامة على سير العمل. ضمن سجل التشغيل، تحقق من حالة تشغيل سير العمل.
تلميح
إذا لم تظهر حالة التشغيل، فحاول تحديث صفحة النظرة العامة عن طريق تحديد Refresh. لا يحدث تشغيل لمشغل تم تخطيه بسبب معايير غير مستحقة أو العثور على أي بيانات.
يوضح الجدول التالي الحالات النهائية المحتملة التي يمكن أن تتضمنها كل عملية سير عمل وتظهر في Visual Studio Code:
حالة التشغيل الوصف متوقفة توقف التشغيل أو لم ينته بسبب مشاكل خارجية، على سبيل المثال، انقطاع النظام أو انتهاء اشتراك Azure. تم إلغاء شغل وبدأ في العمل ولكن تم تلقي طلب إلغاء. فشل فشل إجراء واحد على الأقل في التشغيل. لم يتم إعداد أي إجراءات لاحقة في سير العمل للتعامل مع الفشل. تشغيل تم تشغيل التشغيل وهو قيد التقدم، ولكن يمكن أن تظهر هذه الحالة أيضًا لتشغيل مقيد بسبب حدود الإجراء أو خطة التسعير الحالية.
تلميح: إذا قمت بإعداد تسجيل التشخيص، يمكنك الحصول على معلومات حول أي أحداث تقييد تحدث.نجاح نجح التشغيل. إذا فشل أي إجراء، فإن إجراء لاحق في سير العمل يعالج هذا الفشل. انتهت المهلة مهلة التشغيل لأن المدة الحالية تجاوزت حد مدة التشغيل، والذي يتم التحكم فيه بواسطة الإعداد المسمى الاحتفاظ بمحفوظات التشغيل بالأيام. يتم حساب مدة التشغيل باستخدام وقت البدء وحدود مدة التشغيل في وقت البدء هذا. ملاحظة: إذا تجاوزت مدة التشغيل أيضا حد استبقاء محفوظات التشغيل الحالي، والذي يتم التحكم فيه أيضا بواسطة إعداد الاحتفاظ بمحفوظات التشغيل بالأيام، يتم مسح التشغيل من محفوظات التشغيل بواسطة مهمة تنظيف يومية. سواء انتهت مهلة التشغيل أو اكتملت، يتم حساب فترة الاستبقاء دائمًا باستخدام وقت بدء التشغيل وحدود الاستبقاء الحالية. لذلك، إذا قمت بتقليل حد المدة للتشغيل أثناء الطيران، فإن مهلة التشغيل قد انتهت. ومع ذلك، يبقى التشغيل أو يتم مسحه من محفوظات التشغيل استنادا إلى ما إذا كانت مدة التشغيل قد تجاوزت حد الاستبقاء.
قيد الانتظار لم يبدأ التشغيل أو تم إيقافه مؤقتًا، على سبيل المثال، بسبب مثيل سير عمل سابق لا يزال قيد التشغيل. لعرض حالة كل خطوة ومدخلاتها ومخرجاتها لتشغيل سير عمل معين، اختر أي من الخطوتين:
في عمود المعرف ، حدد معرف تشغيل سير العمل.
إلى جانب عمود المدة ، افتح قائمة علامات الحذف (...) لتشغيل سير العمل، وحدد إظهار التشغيل، على سبيل المثال:
يفتح Visual Studio Code طريقة عرض تفاصيل التشغيل ويعرض حالة كل خطوة في تشغيل سير العمل.
ملاحظة
إذا فشل تشغيل وظهرت خطوة في طريقة عرض تفاصيل التشغيل الخطأ 400 طلب غير صالح ، فقد تنتج هذه المشكلة عن اسم مشغل أطول أو اسم إجراء يتسبب في تجاوز معرف المورد الموحد الأساسي (URI) حد الأحرف الافتراضي. للمزيد من المعلومات، راجع «400 Bad Request».
يوضح الجدول التالي الحالات المحتملة التي يمكن أن يكون لكل إجراء من إجراءات سير العمل ويظهر في Visual Studio Code:
حالة الإجراء الوصف متوقفة توقف الإجراء أو لم ينته بسبب مشاكل خارجية، على سبيل المثال، انقطاع النظام أو انتهاء اشتراك Azure. تم إلغاء كان الإجراء قيد التشغيل ولكن تلقى طلبًا للإلغاء. فشل فشل الإجراء. تشغيل الإجراء قيد التشغيل حاليًا. تخطي تم تخطي الإجراء بسبب فشل الإجراء السابق مباشرةً. يتضمن الإجراء على runAfter
شرط يتطلب انتهاء الإجراء السابق بنجاح قبل تشغيل الإجراء الحالي.نجاح نجح الإجراء. نجح مع إعادة المحاولة نجح الإجراء ولكن فقط بعد إعادة المحاولة مرة واحدة أو أكثر. لمراجعة محفوظات إعادة المحاولة، في طريقة عرض تفاصيل محفوظات التشغيل، حدد هذا الإجراء حتى تتمكن من عرض المدخلات والمخرجات. انتهت المهلة توقف الإجراء بسبب حد المهلة المحدد بواسطة إعدادات هذا الإجراء. قيد الانتظار ينطبق على إجراء الإخطار على الويب الذي ينتظر طلبًا واردًا من المتصل. لعرض المدخلات والمخرجات لكل خطوة، حدد الخطوة التي تريدها، على سبيل المثال:
لعرض المدخلات والمخرجات الأولية، حدد Show raw inputs أو Show raw outputs.
لإيقاف جلسة تصحيح الأخطاء، في القائمة Run، حدد إيقاف تصحيح الأخطاء (Shift + F5).
إرجاع استجابة
عندما يكون لديك سير عمل يبدأ بمشغل عند تلقي طلب HTTP، يمكن لسير العمل الخاص بك إرجاع استجابة إلى المتصل الذي أرسل الطلب الأولي باستخدام إجراء الطلب المسمى Response.
في مصمم سير العمل، ضمن إجراء إرسال بريد إلكتروني ، اتبع هذه الخطوات العامة لإضافة إجراء الطلب المسمى الاستجابة.
في جزء معلومات إجراء الاستجابة ، في علامة التبويب المعلمات ، قم بتوفير المعلومات المطلوبة للاستجابة للمتصل.
يقوم هذا المثال بإرجاع قيمة معلمة النص الأساسي ، وهي الإخراج من إجراء إرسال بريد إلكتروني .
بالنسبة إلى معلمة Body ، حدد داخل مربع التحرير، وحدد رمز البرق، الذي يفتح قائمة المحتوى الديناميكي. تعرض هذه القائمة قيم الإخراج المتوفرة من المشغل السابق والإجراءات في سير العمل.
في قائمة المحتوى الديناميكي، ضمن Send an email، حدد Body.
عند الانتهاء، يتم الآن تعيين الخاصية Body لإجراء الاستجابة إلى قيمة إخراج النص الأساسي لإجراء إرسال بريد إلكتروني، على سبيل المثال:
احفظ سير العمل الخاص بك.
إعادة اختبار سير العمل
لاختبار التحديثات، يمكنك إعادة تشغيل مصحح الأخطاء وإرسال طلب آخر يؤدي إلى تشغيل سير العمل، على غرار الخطوات الواردة في تشغيل مهام سير العمل وتصحيح الأخطاء واختبارها محليا.
على شريط أدوات Visual Studio Code، من قائمة Run ، وحدد Start Debugging (F5).
في الأداة الخاصة بك لإنشاء الطلبات وإرسالها، أرسل طلبا آخر لتشغيل سير العمل الخاص بك.
في صفحة نظرة عامة على سير العمل، ضمن محفوظات التشغيل، تحقق من حالة التشغيل الأحدث، وافتح طريقة عرض تفاصيل التشغيل.
على سبيل المثال، إليك الحالة خطوة بخطوة للتشغيل بعد تحديث سير العمل المثال مع إجراء الاستجابة .
لإيقاف جلسة تصحيح الأخطاء، في القائمة Run، حدد إيقاف تصحيح الأخطاء (Shift + F5).
الاستعداد للتوزيع
قبل نشر تطبيق المنطق القياسي إلى مدخل Microsoft Azure، راجع هذا القسم للحصول على أي إعداد قد تحتاج إلى القيام به.
إعداد الوصول إلى جدار الحماية
إذا كانت بيئتك تحتوي على متطلبات شبكة أو جدران حماية صارمة تحد من نسبة استخدام الشبكة، يجب عليك إعداد أذونات لأي اتصالات تم إنشاؤها بواسطة موصلات Azure المدارة والمستضافة والمشتركة والمستخدمة في سير العمل.
للعثور على أسماء المجالات المؤهلة بالكامل (FQDNs) للاتصالات، اتبع الخطوات التالية:
في مشروع تطبيق المنطق، افتح ملف local.settings.json .
لكل اتصال قمت بإنشائه، ابحث عن الخاصية المسماة
<connection-name>-ConnectionRuntimeUrl
، والتي تستخدم بناء الجملة التالي:"<connection-name>-ConnectionRuntimeUrl": <connection-runtime-URL>
على سبيل المثال، افترض أن لديك نموذج ملفlocal.settings.json يحتوي على هذه الاتصالات: اتصال Office 365 واتصال AS2. تستخدم هذه الاتصالات قيم العينة التالية ذات الصلة للخصائص
<connection-name>-ConnectionRuntimeUrl
:Office 365:
"office365-ConnectionRuntimeUrl": https://A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u.00.common.logic-<Azure-region>.azure-apihub.net/apim/office365/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
AS2:
"as2-ConnectionRuntimeUrl": https://A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u.00.common.logic-<Azure-region>.azure-apihub.net/apim/as2/b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2
يبدو نموذج ملف local.settings.json مشابها للإصدار التالي:
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "node", "APP_KIND": "workflowapp", "ProjectDirectoryPath": "c:\\Users\\<local-username>\\Desktop\\Visual Studio Code projects\\Azure Logic Apps\fabrikam-workflows\\Fabrikam-Workflows\\Fabrikam-Workflows", "WORKFLOWS_TENANT_ID": "<Microsoft-Entra-tenant-ID>", "WORKFLOWS_SUBSCRIPTION_ID": "<Azure-subscription-ID>", "WORKFLOWS_RESOURCE_GROUP_NAME": "Fabrikam-Workflows-RG", "WORKFLOWS_LOCATION_NAME": "westcentralus", "WORKFLOWS_MANAGEMENT_BASE_URI": "https://management.azure.com/", "as2-connectionKey": "<connection-key>", "as2-ConnectionRuntimeUrl": "https://A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u.00.common.logic-<Azure-region>.azure-apihub.net/apim/as2/b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2", "office365-connectionKey": "<connection-key>", "office365-ConnectionRuntimeUrl": "https://A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u.00.common.logic-<Azure-region>.azure-apihub.net/apim/office365/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1", } }
انسخ واحفظ عناوين URL لوقت تشغيل الاتصال هذه في مكان آمن بحيث يمكنك إعداد جدار الحماية باستخدام هذه المعلومات.
عندما تكون مستعدا، قم بإعداد جدار الحماية باستخدام عناوين URL المحفوظة. لمزيد من المعلومات، راجع الوثائق التالية:
نشر في Azure
لنشر تطبيق المنطق القياسي من Visual Studio Code، يمكنك نشر مشروعك مباشرة إلى Azure. يمكنك نشر تطبيق المنطق كمورد جديد، والذي ينشئ تلقائيا أي موارد مطلوبة، مثل حساب تخزين Azure، على غرار متطلبات تطبيق الوظائف. أو يمكنك نشر تطبيق المنطق الخاص بك إلى مورد تطبيق منطق قياسي تم نشره مسبقا، والذي يكتب فوق الإصدار المنشور.
يتطلب النشر لمورد تطبيق المنطق القياسي خطة استضافة وطبقة تسعير، والتي تحددها أثناء النشر. لمزيد من المعلومات، راجع خطط الاستضافة و مستويات التسعير.
النشر إلى مورد تطبيق منطق قياسي جديد
في جزء Explorer، حرك مؤشر الماوس فوق أي منطقة فارغة أسفل مجلدات المشروع وملفاته، وافتح القائمة المختصرة، وحدد Deploy to logic app.
على الرغم من أنك لا تحتاج إلى فتح أي ملفات لتوزيعها، تأكد من حفظ كل ما تخطط لنشره.
تتم مطالبتك بالخيارات التالية لمورد تطبيق المنطق القياسي الوجهة. يمكنك إنشاء تطبيق منطق قياسي جديد أو تحديد تطبيق منطق قياسي منشور موجود في Azure:
- أنشئ Logic App جديد (قياسي) في Azure (سريع)
- أنشئ تطبيق Logic جديد (قياسي) في Azure Advanced
- حدد من موارد تطبيق المنطق القياسي المنشورة مسبقا، إن وجدت.
بالنسبة لخيارات النشر، حدد ما إذا كنت تريد إنشاء مورد تطبيق منطق وجهة موجود أو استخدامه.
يستمر هذا المثال في أنشئ Logic App (قياسي) جديد في Azure Advanced.
اتبع هذه الخطوات لإنشاء مورد تطبيق منطق الوجهة الجديد:
أدخل اسما فريدا عالميا لتطبيق منطق الوجهة.
يستخدم هذا المثال Fabrikam-Workflows-App.
بالنسبة إلى الموقع الذي يجب نشره، حدد منطقة Azure.
يستخدم هذا المثال منطقة وسط غرب الولايات المتحدة الأمريكية.
بالنسبة لخطة الاستضافة، اختر من الخيارات التالية:
خطة الاستضافة الوصف سير العمل القياسي النشر كمورد تطبيق منطق قياسي جديد مستضاف في Azure Logic Apps أحادي المستأجر. هجين نشر كتطبيق منطق قياسي مستضاف على البنية الأساسية الخاصة بك.
ملاحظة: قبل تحديد هذا الخيار، تأكد من إعداد البنية الأساسية الضرورية. لمزيد من المعلومات، راجع إعداد البنية الأساسية الخاصة بك لتطبيقات المنطق القياسية باستخدام النشر المختلط.بالنسبة لخطة خدمة تطبيقات Windows، حدد أحد الخيارات التالية:
- إنشاء خطة جديدة لخدمة التطبيقات
- حدد من خطط App Service الموجودة في منطقة Azure المحددة (الخطط المستندة إلى Windows فقط)، إن وجدت.
يحدد هذا المثال إنشاء خطة App Service جديدة.
بالنسبة للخطة الجديدة، قم بتوفير اسم فريد عالميا، وحدد مستوى تسعير.
يستخدم هذا المثال Fabrikam-Workflows-App-Service-Plan، ويحدد المستوى القياسي لسير عمل WS1 .
لمزيد من المعلومات، راجع خطط الاستضافة و مستويات التسعير.
بالنسبة إلى مجموعة موارد Azure الوجهة، حدد نفس مجموعة الموارد مثل مشروعك للحصول على الأداء الأمثل.
يستخدم هذا المثال نفس المجموعة التي تم إنشاؤها مسبقا المسماة Fabrikam-Workflows-RG.
ملاحظة
على الرغم من أنه يمكنك إنشاء أو استخدام مجموعة موارد مختلفة، إلا أن القيام بذلك يمكن أن يؤثر على الأداء. إذا قمت بإنشاء أو اختيار مجموعة موارد مختلفة، ولكنك ألغيت بعد ظهور مطالبة التأكيد، فسيتم أيضاً إلغاء التوزيع الخاص بك.
لكي يستخدم حساب تخزين Azure مع مهام سير العمل التي تمكن حفظ معلومات محفوظات التشغيل، اختر من الخيارات التالية:
- إنشاء حساب تخزين جديد
- حدد من حسابات تخزين Azure الموجودة، إن وجدت.
يحدد هذا المثال إنشاء حساب تخزين جديد.
أدخل اسما فريدا عالميا لحساب التخزين. يمكنك استخدام الأحرف الصغيرة والأرقام فقط.
يستخدم هذا المثال رقم< fabrikamstorageaccount>.
للحصول على خيار استخدام تخزين SQL في هذا المثال، حدد لا.
إذا قمت بالفعل بإعداد قاعدة بيانات SQL لاستخدامها للتخزين باتباع إعداد تخزين قاعدة بيانات SQL لسير عمل تطبيق المنطق القياسي، يمكنك تحديد نعم.
بالنسبة لمورد Application Insights، الذي يمكن التسجيل التشخيصي والتتبع لتطبيق المنطق الخاص بك، اختر من الخيارات التالية:
- إنشاء مورد Application Insights جديد
- تخطي في الوقت الحالي. يمكنك إعداد Application Insights بعد التوزيع.
- حدد مورد Application Insights موجود، إن وجد.
يحدد هذا المثال تخطي في الوقت الحالي.
ملاحظة
إذا كان لديك مورد Application Insights تريد استخدامه، يمكنك تحديد هذا المورد.
لإنشاء مورد Application Insights جديد في هذا الوقت حتى تتمكن من تمكين تسجيل التشخيص والتتبع، راجع تمكين Application Insights أثناء النشر.
لمزيد من المعلومات حول Application Insights، راجع الوثائق التالية:
بعد تحديد Skip في الوقت الحالي أو مورد Application Insights موجود، يعرض Visual Studio Code رسالة تأكيد لبدء النشر. توصي الرسالة أيضا بوضع موارد الاتصال للعمليات المدارة في نفس مجموعة الموارد مثل مورد تطبيق المنطق وسير العمل للحصول على أفضل أداء. في Azure Logic Apps، توجد اتصالات العملية المدارة كموارد Azure فردية.
عندما تكون جاهزا للنشر، في رسالة التأكيد، حدد Deploy.
يبدأ Visual Studio Code في إنشاء الموارد الضرورية ونشرها لنشر تطبيق المنطق الخاص بك إلى Azure.
لعرض عملية النشر ومراقبتها، في القائمة عرض ، حدد الإخراج.
في شريط أدوات نافذة الإخراج ، من قائمة النطاق، حدد Azure Logic Apps (Standard).
عند انتهاء Visual Studio Code من نشر تطبيق المنطق الخاص بك إلى Azure، تظهر رسالة تفيد باكتمال إنشاء تطبيق المنطق بنجاح، على سبيل المثال:
أصبح مورد تطبيق المنطق وسير العمل الآن مباشرين وممكنين ويعملان في Azure.
تمكين Application Insights أثناء النشر
لتمكين تسجيل التشخيصات وتتبعها باستخدام Application Insights أثناء النشر لتطبيق المنطق الخاص بك، اتبع الخطوات التالية:
حدد إما مورد Application Insights موجود أو إنشاء مورد Application Insights جديد.
في مدخل Microsoft Azure، انتقل إلى مورد Application Insights.
في قائمة الموارد، حدد Overview. ابحث عن قيمة مفتاح تقرير عن حالة النظاموانسخها.
في Visual Studio Code، في المجلد الجذر المشروع الخاص بك، افتح الملف local.settings.json.
في
Values
الكائن، أضف الخاصيةAPPINSIGHTS_INSTRUMENTATIONKEY
، ثم عين القيمة إلى مفتاح الأجهزة، على سبيل المثال:{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "dotnet", "APPINSIGHTS_INSTRUMENTATIONKEY": <instrumentation-key> } }
تحقق مما إذا كان مشغل سير العمل وأسماء الإجراءات تظهر بشكل صحيح في مثيل Application Insights.
في مدخل Microsoft Azure، انتقل إلى مورد Application Insights.
في قائمة الموارد، ضمن Investigate، حدد Application map.
راجع أسماء العمليات التي تظهر في الخريطة.
يمكن أن تظهر بعض الطلبات الواردة من المشغلات المضمنة كتكرار في خريطة التطبيق. بدلاً من استخدام
WorkflowName.ActionName
التنسيق، تستخدم هذه التكرارات اسم سير العمل كاسم العملية وتنشأ من مضيف Azure Functions.
اضبط مستوى الخطورة بشكل اختياري لبيانات التتبع التي يجمعها تطبيق المنطق ويرسلها إلى مثيل Application Insights.
في كل مرة يحدث فيها حدث متعلق بسير العمل، مثل عند بدء سير عمل أو عند تشغيل إجراء ما، يصدر وقت التشغيل تتبعات مختلفة. تغطي هذه التتبع عمر سير العمل وتشمل، على سبيل المثال لا الحصر، أنواع الأحداث التالية:
- نشاط الخدمة، مثل البدء والإيقاف والأخطاء.
- وظائف ونشاط المرسل.
- نشاط سير العمل، مثل المشغل، والعمل، والتشغيل.
- نشاط طلب تخزين، مثل النجاح أو الفشل.
- نشاط طلب HTTP، مثل الوارد، والصادر، والنجاح، والفشل.
- أي تتبعات تطوير، مثل رسائل الخاصة بالتصحيح.
يعين كل نوع حدث على مستوى الخطورة. على سبيل المثال،
Trace
يلتقط المستوى الرسائل الأكثر تفصيلا، بينماInformation
يلتقط المستوى النشاط العام في سير العمل، مثل وقت بدء logic app وسير العمل والمشغل والإجراءات وإيقافها.يصف الجدول التالي مستويات الخطورة وأنواع التتبع الخاصة بها:
مستوى الخطورة نوع تتبع التكدس حرج السجلات التي تصف فشلا غير قابل للاسترداد في سير عمل تطبيق المنطق. تصحيح السجلات التي بإمكانك استخدامها للتحقيق أثناء التطوير، على سبيل المثال، مكالمات HTTP الواردة والصادرة. الخطأ السجلات التي تشير إلى فشل في تنفيذ سير العمل، ولكنها لا تشير إلى فشل عام في logic app. معلومات السجلات التي تتعقب النشاط العام في تطبيق المنطق أو سير العمل، على سبيل المثال:
- عندما يبدأ وينتهي المشغل أو الإجراء أو التشغيل.
- عندما يبدأ logic app الخاص بك أو ينتهي.أثر السجلات التي تحتوي على الرسائل الأكثر تفصيلاً، على سبيل المثال، طلبات التخزين أو نشاط المرسل، بالإضافة إلى جميع الرسائل المتعلقة بنشاط تنفيذ سير العمل. تحذير السجلات التي تبرز حالة غير طبيعية في logic app ولكنها لا تمنع تشغيلها. لتعيين مستوى الخطورة، على مستوى جذر المشروع، افتح ملف host.json، وابحث عن
logging
الكائن. يتحكم هذا الكائن في تصفية السجل لجميع مهام سير العمل في logic app الخاص بك ويتبع تخطيط ASP.NET Core لتصفية نوع السجل.{ "version": "2.0", "logging": { "applicationInsights": { "samplingExcludedTypes": "Request", "samplingSettings": { "isEnabled": true } } } }
إذا كان
logging
العنصر لا يحتوي علىlogLevel
عنصر يتضمن الخاصية، أضفHost.Triggers.Workflow
تلك العناصر. عين الخاصية إلى مستوى الخطورة لنوع التتبع الذي تريده، على سبيل المثال:{ "version": "2.0", "logging": { "applicationInsights": { "samplingExcludedTypes": "Request", "samplingSettings": { "isEnabled": true } }, "logLevel": { "Host.Triggers.Workflow": "Information" } } }
نشر مهام النشر
تصف الأقسام التالية المهام التي يجب تنفيذها بعد إكمال تطبيق المنطق للتوزيع.
تأكيد التوزيع في مدخل Microsoft Azure
بعد نشر تطبيق المنطق الخاص بك من Visual Studio Code إلى مدخل Microsoft Azure، تأكد من ظهور تطبيق المنطق في المدخل. يتم تنظيم موارد Azure وتجميعها في المدخل استنادا إلى نوع المورد الخاص بها. للعثور على تطبيقات المنطق القياسية، اتبع الخطوات التالية:
سجل الدخول إلى مدخل Microsoft Azure باستخدام حساب Azure الخاص بك.
في مربع البحث عن عنوان Azure، أدخل اسم تطبيق المنطق الخاص بك، والذي يجب أن يظهر كنتيجة في قسم الموارد . حدد تطبيق المنطق لفتح المورد.
في قائمة logic app، ضمن Workflows، حدد Workflows.
في صفحة Workflows ، حدد سير العمل الخاص بك.
في قائمة سير العمل، ضمن أدوات، حدد مصمم. تأكد من ظهور سير العمل كما هو متوقع.
بإمكانك الآن إجراء تغييرات على سير العمل هذا في مدخل Microsoft Azure.
تأكد من تمكين تجربة المراقبة لتطبيق المنطق المنشور حتى تتمكن من عرض محفوظات تشغيل سير العمل والمدخلات والمخرجات والمعلومات الأخرى ذات الصلة.
تمكين تجربة المراقبة لتطبيق المنطق المنشور
قبل أن تتمكن من مراجعة أي محفوظات تشغيل سير عمل ومدخلات ومخرجات ومعلومات ذات صلة لمورد تطبيق منطق قياسي تم توزيعه مع تجربة المراقبة في مدخل Microsoft Azure، يجب أولا تمكين هذه التجربة على مورد تطبيق المنطق.
في مدخل Microsoft Azure، افتح مورد تطبيق المنطق القياسي المنشور.
في قائمة الموارد، ضمن API، حدد CORS.
في جزء CORS، ضمن Allowed Origins، أضف حرف بدل (*).
عند الانتهاء، في شريط أدوات CORS، حدد حفظ.
تمكين Application Insights أو فتحه بعد التوزيع
أثناء تنفيذ سير العمل، يصدر سير عمل تطبيق المنطق بيانات تتبع الاستخدام جنبا إلى جنب مع أحداث أخرى. يمكنك استخدام بيانات تتبع الاستخدام هذه للحصول على رؤية أفضل لمدى تشغيل سير العمل وكيفية عمل وقت تشغيل Azure Logic Apps. يوفر Application Insights القدرة لك لتمكين تسجيل التشخيصات والتتبع والمراقبة لتطبيق المنطق الخاص بك باستخدام القياس عن بعد في الوقت الفعلي تقريبا (المقاييس المباشرة). تساعدك هذه الإمكانية على التحقق من حالات الفشل ومشاكل الأداء بسهولة أكبر عند استخدام بيانات تتبع الاستخدام لتشخيص المشكلات وإعداد التنبيهات وإنشاء المخططات.
إذا لم تقم مسبقا بإعداد Application Insights، يمكنك تمكين هذه الإمكانية في مدخل Microsoft Azure بعد نشر تطبيق المنطق من Visual Studio Code. تحتاج إلى مورد Application Insights في Azure، ولكن يمكنك إنشاء هذا المورد بشكل منفصل مقدما أو عند تمكين هذه الإمكانية بعد النشر.
إذا قمت مسبقا بإعداد Application Insights أثناء النشر من Visual Studio Code، يمكنك فقط فتح مورد Application Insights الخاص بك من تطبيق المنطق الخاص بك في مدخل Microsoft Azure.
تمكين Application Insights لتطبيق منطق منشور
في مدخل Microsoft Azure، ابحث عن تطبيق المنطق المنشور وافتحه.
في قائمة logic app، ضمن Monitoring، حدد Application Insights.
في صفحة Application Insights ، حدد تشغيل Application Insights.
بعد تحديث صفحة Application Insights ، في قسم تغيير المورد ، حدد من الخيارات التالية:
إنشاء مورد جديد
ينشئ Azure موارد ل Application Insights ومساحة عمل Log Analytics باستخدام الاشتراك الحالي ومجموعة الموارد. إذا كنت ترغب في استخدام اشتراك ومجموعة موارد مختلفة، فشاهد إنشاء مورد Application Insights جديد، ثم ارجع إلى هذه الصفحة.
الخاصية الوصف اسم المورد الجديد إما قبول الاسم الذي تم إنشاؤه أو توفير اسم آخر. مكان حدد منطقة Azure. مساحة عمل Log Analytics حدد مساحة عمل موجودة، إن وجدت. وإلا، يتم إنشاء مساحة عمل افتراضية لك. لمزيد من المعلومات، راجع نظرة عامة على مساحة عمل Log Analytics. حدد المورد الموجود:
حدد اشتراك Azure لمورد Application Insights.
حدد مورد Application Insights الخاص بك.
عند الانتهاء، في أسفل الصفحة، حدد تطبيق.
افتح Application Insights من تطبيق المنطق الخاص بك
في مدخل Microsoft Azure، ابحث عن تطبيق المنطق المنشور وافتحه.
في قائمة logic app، ضمن Monitoring، حدد Application Insights.
في صفحة Application Insights ، حدد الارتباط لمورد Application Insights.
بعد فتح Application Insights، يمكنك مراجعة مقاييس مختلفة لتطبيق المنطق الخاص بك. لمزيد من المعلومات، راجع هذه المقالات:
- تطبيقات Azure Logic التي تعمل في أي مكان - مراقبة باستخدام Application Insights - الجزء 1
- تطبيقات Azure Logic التي تعمل في أي مكان - مراقبة باستخدام Application Insights - الجزء 2
اكتشاف الأخطاء والمشاكل وإصلاحها
إخفاق المصمم في الفتح
عند محاولة فتح المصمم، يظهر لك هذا الخطأ، «تعذر بدء وقت تصميم Workflow». إذا حاولت مسبقا فتح المصمم، ولكنك أوقفت مشروعك أو حذفته، فقد لا يتم تنزيل مجموعة الملحقات بشكل صحيح. للتحقق مما إذا كان هذا السبب هو السبب، اتبع الخطوات التالية:
في Visual Studio Code، افتح نافذة الإخراج. من القائمة View، حدد Output.
من القائمة الموجودة في شريط عنوان نافذة الإخراج، حدد Azure Logic Apps (Standard) بحيث يمكنك مراجعة الإخراج من الملحق، على سبيل المثال:
تأكد من مراجعة الإخراج وتحقق مما إذا كانت رسالة الخطأ هذه تظهر:
A host error has occurred during startup operation '<operation-ID>'. System.Private.CoreLib: The file 'C:\Users\<user-name>\AppData\Local\Temp\Functions\ ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows\1.1.7\bin\ DurableTask.AzureStorage.dll' already exists. Value cannot be null. (Parameter 'provider') Application is shutting down... Initialization cancellation requested by runtime. Stopping host... Host shutdown completed.
لحل هذا الخطأ، احذف المجلد ExtensionBundles في هذا الموقع ...\Users\<user-name>\AppData\Local\Temp\Functions\ExtensionBundles، وأعد محاولة فتح ملف workflow.json في المصمم.
المشغلات والإجراءات الجديدة مفقودة من منتقي المصمم لسير العمل الذي تم إنشاؤه مسبقًا
يدعم Azure Logic Apps أحادي المستأجر الإجراءات المضمنة لعمليات وظائف Azure والعمليات السائلة وعمليات XML، مثل التحقق من صحة XMLوتحويل XML. ومع ذلك، بالنسبة للتطبيقات المنطقية التي أنشأت مسبقًا، يمكن أن لا تظهر هذه الإجراءات في منتقي المصمم لتحديد ما إذا كان Visual Studio Code يستخدم إصدارًا قديمًا من حزمة الملحقاتMicrosoft.Azure.Functions.ExtensionBundle.Workflows
.
أيضا، لا يظهر موصل Azure Function Operations والإجراءات في منتقي المصمم ما لم تمكن أو تحدد استخدام الموصلات من Azure عند إنشاء logic app الخاص بك. إذا لم تمكن الموصلات التي استخدمت في Azure في وقت إنشاء التطبيق، فيمكنك تمكينها من المشروع الخاص بك في Visual Studio Code. افتح القائمة المختصرة workflow.json، تأكد من تحديد Use Connectors من Azure.
لإصلاح الحزمة القديمة، اتبع هذه الخطوات لحذف الحزمة القديمة، مما يجعل Visual Studio Code يحدث حزمة الملحقات تلقائيًا إلى أحدث إصدار.
ملاحظة
ينطبق هذا الحل فقط على تطبيقات المنطق التي تقوم بإنشائها ونشرها باستخدام Visual Studio Code مع ملحق Azure Logic Apps (Standard)، وليس تطبيقات المنطق التي تقوم بإنشائها باستخدام مدخل Microsoft Azure. تأكد أن المشغلات والإجراءات المدعومة مفقودة من المصمم في مدخل Microsoft Azure.
احفظ أي عمل لا تريد فقدانه، وأغلق Visual Studio Code.
على جهاز الكمبيوتر الخاص بك، استعرض المجلد التالي، الذي يحتوي على مجلدات ذات إصدارات للحزمة الحالية:
...\Users\<user-name>\.azure-functions-core-tools\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows
احذف مجلد الإصدار للحزمة السابقة، على سبيل المثال، في حالة كان لديك مجلد للإصدار 1.1.3، فاحذف هذا المجلد.
الآن، استعرض للوصول إلى المجلد الموضح أدناه الذي يحتوي على مجلدات ذات إصدارات لحزمة NuGet المطلوبة:
...\Users\<user-name>\.nuget\packages\microsoft.azure.workflows.webjobs.extension
احذف مجلد الإصدار للحزمة السابقة.
أعد فتح Visual Studio Code والمشروع الخاص بك وملف workflow.json في المصمم.
تتضح المشغلات والإجراءات المفقودة الآن في المصمم.
يظهر «400 طلب غير صالح» على مشغل أو إجراء
في حالة فشل التشغيل، وفحص التشغيل في طريقة عرض المراقبة، فيمكن أن يظهر هذا الخطأ على مشغل أو إجراء له اسم أطول، مما يتسبب في تجاوز معرّف الموارد المنتظم (URI) الأساسي حد الأحرف الافتراضي.
لحل هذه المشكلة وضبط URI الأطول، قم بتحرير UrlSegmentMaxCount
مفتاحي التسجيل و UrlSegmentMaxLength
على الكمبيوتر باتباع الخطوات التالية. يتم وصف القيم الافتراضية لهذا المفتاح في هذه المقالة، Http.sys إعدادات التسجيل ل Windows.
هام
قبل أن تبدأ، تأكد من حفظ العمل الخاص بك. يتطلب هذا الحل إعادة تشغيل الكمبيوتر بعد الانتهاء حتى تسري التغييرات.
على الكمبيوتر الخاص بك، افتح نافذة Run، ثم شغل
regedit
الأمر الذي يفتح محرر التسجيل.في مربع التحكم في حساب المستخدم، حدد Yes للسماح بالتغييرات التي أجريتها على الكمبيوتر الخاص بك.
في الجزء الأيسر ضمن Computer، وسع العقد على طول المسار، HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters، ثم حدد Parameters.
في الجزء الأيمن، ابحث عن مفتاحي التسجيل
UrlSegmentMaxCount
وUrlSegmentMaxLength
.زود قيم المفاتيح هذه بشكل كافٍ حتى تتمكن URIs من استيعاب الأسماء التي تريد استخدامها. في حالة لم تكن هذه المفاتيح موجودة، أضفها إلى مجلد Parameters باتباع الخطوات الموضحة أدناه:
من القائمة المختصرة Parameters، حدد New>DWORD (32 بت) Value.
في مربع التحرير الذي يظهر، أدخل
UrlSegmentMaxCount
كاسم خاص بالمفتاح الجديد.افتح القائمة المختصرة للمفتاح الجديد، وحدد Modify.
في المربع Edit String الذي يظهر، أدخل قيمة مفتاح بيانات القيمة التي تريدها بتنسيق سداسي عشري أو عشري. على سبيل المثال،
400
فيما يتعلق بالرقم السداسي العشري يعادل1024
الرقم العشري.لإضافة
UrlSegmentMaxLength
قيمة المفتاح، تأكد من تكرار هذه الخطوات.
بعد زيادة هذه القيم الأساسية أو إضافتها، يشبه محرر التسجيل مثل هذا المثال:
عندما تكون جاهزًا، أعد تشغيل الكمبيوتر حتى تسري التغييرات.
فشل جلسة التصحيح في البدء
عند محاولة بدء جلسة تصحيح الأخطاء، تحصل على الخطأ، «يوجد خطأ بعد تشغيل preLaunchTask createDebugSymbols». لحل هذه المشكلة، حرر ملف tasks.json في المشروع الخاص بك لتخطي إنشاء الرموز.
في مشروعك، قم بتوسيع المجلد .vscode**، وافتح ملف tasks.json .
في المهمة الموضحة أدناه احذف السطر،
"dependsOn: "generateDebugSymbols"
، جنبا إلى جنب مع الفاصلة التي تنتهي السطر السابق، على سبيل المثال:قبل:
{ "type": "func", "command": "host start", "problemMatcher": "$func-watch", "isBackground": true, "dependsOn": "generateDebugSymbols" }
بعد:
{ "type": "func", "command": "host start", "problemMatcher": "$func-watch", "isBackground": true }