إنشاء سير عمل تكامل باستخدام تطبيقات Azure Logic Apps أحادية المستأجر (قياسي) في التعليمات البرمجية Visual Studio

توضح هذه المقالة كيفية إنشاء مثال على سير عمل التكامل التلقائي الذي يتم تشغيله في بيئة Azure Logic Apps أحادية المستأجر باستخدام التعليمات البرمجية Visual Studio مع ملحق Azure Logic Apps (قياسي). يستند التطبيق المنطقي الذي تقوم بإنشائه باستخدام هذا الملحق إلى نوع مورد تطبيق المنطق (قياسي)، والذي يوفر الإمكانات التالية:

  • يمكنك تشغيل مهام سير عمل التطبيق المنطقي واختبارها محليا في بيئة تطوير التعليمات البرمجية Visual Studio.

  • يمكن أن يتضمن تطبيقك المنطقي العديد من مهام سير العمل عديمة الحالة وعديمة الجنسية.

  • يتم تشغيل مهام سير العمل في نفس التطبيق المنطقي والمستأجر في نفس العملية مثل وقت تشغيل Azure Logic Apps، بحيث تشارك نفس الموارد وتوفر أداء أفضل.

  • يمكنك نشر نوع مورد Logic App (قياسي) مباشرة إلى بيئة Azure Logic Apps ذات المستأجر الواحد أو في أي مكان يمكن تشغيل Azure Functions، بما في ذلك الحاويات، بسبب وقت تشغيل Azure Logic Apps في حاويات.

لمزيد من المعلومات حول عرض Azure Logic Apps أحادي المستأجر، راجع بيئة خدمة المستأجر الواحد مقابل المستأجر المتعدد والتكامل.

على الرغم من أن مثال سير العمل يستند إلى السحابة ويحتوي على خطوتين فقط، يمكنك إنشاء مهام سير عمل من مئات العمليات التي يمكنها توصيل مجموعة واسعة من التطبيقات والبيانات والخدمات والأنظمة عبر السحابة والمحلية والبيئات المختلطة. يبدأ مثال سير العمل بمشغل الطلب المضمن ويتبع ذلك بإجراء Office 365 Outlook. ينشئ المشغل نقطة نهاية قابلة للاستدعاء لسير العمل وينتظر طلب HTTPS وارد من أي متصل. عندما يتلقى المشغل طلبا ويتم تشغيله ، يتم تشغيل الإجراء التالي عن طريق إرسال بريد إلكتروني إلى عنوان البريد الإلكتروني المحدد إلى جانب المخرجات المحددة من المشغل.

تلميح

إذا لم يكن لديك حساب Office 365، يمكنك استخدام أي إجراء آخر متاح يمكنه إرسال رسائل من حساب بريدك الإلكتروني، على سبيل المثال، Outlook.com.

لإنشاء سير عمل مثال هذا باستخدام مدخل Azure بدلا من ذلك، اتبع الخطوات الواردة في إنشاء مهام سير عمل تكامل باستخدام تطبيقات Azure Logic Apps أحادية المستأجر ومدخل Azure. يوفر كلا الخيارين القدرة على تطوير مهام سير عمل التطبيقات المنطقية وتشغيلها ونشرها في نفس أنواع البيئات. ومع ذلك، باستخدام Visual Studio Code، يمكنك تطوير مهام سير العمل واختبارها وتشغيلها محليا في بيئة التطوير الخاصة بك.

Screenshot that shows Visual Studio Code, logic app project, and workflow.

مع تقدمك، ستكمل هذه المهام عالية المستوى:

  • قم بإنشاء مشروع لتطبيقك المنطقي وسير عمل فارغ ذو حالة.
  • إضافة مشغل وإجراء.
  • تشغيل محفوظات التشغيل واختبارها وتصحيحها ومراجعتها محليا.
  • ابحث عن تفاصيل اسم النطاق للوصول إلى جدار الحماية.
  • النشر إلى Azure، والذي يتضمن تمكين التطبيق اختياريا Insights.
  • قم بإدارة تطبيقك المنطقي المنشور في Visual Studio Code ومدخل Azure.
  • تمكين محفوظات التشغيل لمهام سير العمل عديمة الجنسية.
  • تمكين التطبيق أو فتحه بعد Insights النشر.

المتطلبات الأساسية

الوصول والاتصال

  • الوصول إلى الإنترنت بحيث يمكنك تنزيل المتطلبات والاتصال من Visual Studio Code بحساب Azure الخاص بك والنشر من Visual Studio Code إلى Azure.

  • حساب واشتراك Azure. إذا لم يكن لديك اشتراك، فيجب التسجيل للحصول على حساب Azure مجاني.

  • لإنشاء سير عمل المثال نفسه في هذه المقالة، تحتاج إلى حساب بريد إلكتروني Office 365 Outlook يستخدم حساب عمل أو مؤسسة تعليمية من Microsoft لتسجيل الدخول.

    إذا اخترت موصل بريد إلكتروني مختلفا، مثل Outlook.com، فلا يزال بإمكانك اتباع المثال، وتكون الخطوات العامة العامة هي نفسها. ومع ذلك، قد تختلف خياراتك في بعض النواحي. على سبيل المثال، إذا كنت تستخدم موصل Outlook.com، فاستخدم حساب Microsoft الشخصي الخاص بك بدلا من ذلك لتسجيل الدخول.

متطلبات التخزين

للتطوير المحلي في Visual Studio Code، تحتاج إلى إعداد مخزن بيانات محلي لمشروع التطبيق المنطقي ومهام سير العمل لاستخدامها في التشغيل في بيئة التطوير المحلية. يمكنك استخدام محاكي تخزين Azurite وتشغيله كمخزن بيانات محلي.

  1. قم بتنزيل Azurite 3.12.0 وتثبيته أو إصدار أحدث.
  2. قبل تشغيل تطبيق المنطق، تأكد من بدء تشغيل المحاكي.

لمزيد من المعلومات، راجع وثائق Azurite.

الأدوات

  • رمز Visual Studio ، وهو مجاني. أيضا ، قم بتنزيل هذه الأدوات وتثبيتها ل Visual Studio Code ، إذا لم يكن لديك بالفعل:

    • ملحق حساب Azure، الذي يوفر تجربة تسجيل دخول وتصفية اشتراك Azure شائعة واحدة لجميع ملحقات Azure الأخرى في Visual Studio Code.

    • C # لملحق رمز Visual Studio ، والذي يمكن وظيفة F5 من تشغيل تطبيقك المنطقي.

    • Azure Functions Core Tools - الإصدار 3.x باستخدام إصدار Microsoft Installer (MSI) ، وهو func-cli-X.X.XXXX-x*.msi. لا تقم بتثبيت الإصدار 4.x، وهو غير مدعوم ولن يعمل.

      تتضمن هذه الأدوات إصدارا من نفس وقت التشغيل الذي يشغل وقت تشغيل Azure Functions، والذي يستخدمه ملحق Azure Logic Apps (Standard) في التعليمات البرمجية Visual Studio.

      هام

      إذا كان لديك تثبيت أقدم من هذه الإصدارات، فقم بإزالة تثبيت هذا الإصدار أولا، أو تأكد من أن متغير بيئة PATH يشير إلى الإصدار الذي تقوم بتنزيله وتثبيته.

    • ملحق Azure Logic Apps (قياسي) ل Visual Studio Code.

      هام

      لم تعد المشاريع التي تم إنشاؤها باستخدام ملحقات المعاينة السابقة تعمل. للمتابعة، قم بإزالة تثبيت أي إصدارات سابقة، وأعد إنشاء مشاريع التطبيقات المنطقية.

      لتثبيت ملحق Azure Logic Apps (قياسي)، اتبع الخطوات التالية:

      1. في رمز Visual Studio، على شريط الأدوات الأيمن، حدد ملحقات.

      2. في مربع البحث عن الملحقات، أدخل azure logic apps standard. من قائمة النتائج، حدد Azure Logic Apps (قياسي)>Install.

        بعد اكتمال التثبيت، يظهر الملحق في القائمة ملحقات: مثبتة .

        Screenshot showing Visual Studio Code with the Azure Logic Apps (Standard) extension installed

        تلميح

        إذا لم يظهر الملحق في القائمة المثبتة، فحاول إعادة تشغيل رمز Visual Studio.

      حاليا، يمكنك تثبيت كل من ملحقات الاستهلاك (متعدد المستأجرين) والقياسية (مستأجر واحد) في نفس الوقت. تختلف تجارب التطوير عن بعضها البعض في بعض النواحي، ولكن يمكن أن يتضمن اشتراكك في Azure كلا من أنواع التطبيقات القياسية ومنطق الاستهلاك. تعرض Visual Studio Code جميع التطبيقات المنطقية المنشورة في اشتراكك في Azure، ولكنها تنظم تطبيقاتك ضمن كل ملحق، تطبيقات Azure Logic (الاستهلاك) وتطبيقات Azure المنطقية (قياسية).

  • لاستخدام إجراء عمليات التعليمات البرمجية المضمنة الذي يقوم بتشغيل JavaScript، قم بتثبيتNode.js الإصدارات 12.x.x أو 14.x.x.

    تلميح

    للحصول على Windows، قم بتنزيل إصدار MSI. إذا كنت تستخدم إصدار ZIP بدلا من ذلك، فيجب عليك إتاحة Node.js يدويا باستخدام متغير بيئة PATH لنظام التشغيل الخاص بك.

  • لتشغيل المشغلات والإجراءات المستندة إلى webhook محليا، مثل مشغل HTTP Webhook المدمج، في Visual Studio Code، تحتاج إلى إعداد إعادة التوجيه لعنوان URL لمعاودة الاتصال.

  • لاختبار مثال سير العمل في هذه المقالة، تحتاج إلى أداة يمكنها إرسال المكالمات إلى نقطة النهاية التي تم إنشاؤها بواسطة مشغل الطلب. إذا لم يكن لديك مثل هذه الأداة ، فيمكنك تنزيل تطبيق Postman وتثبيته واستخدامه.

  • إذا قمت بإنشاء موارد التطبيق المنطقي باستخدام الإعدادات التي تدعم استخدام التطبيق Insights، فيمكنك اختياريا تمكين تسجيل التشخيصات وتتبعها لتطبيقك المنطقي. يمكنك القيام بذلك إما عند إنشاء تطبيق المنطق أو بعد النشر. يجب أن يكون لديك تطبيق Insights المثال، ولكن يمكنك إنشاء هذا المورد إما مقدما أو عند إنشاء تطبيق المنطق أو بعد النشر.

إعداد Visual Studio Code

  1. للتأكد من تثبيت كافة الملحقات بشكل صحيح، أعد تحميل التعليمات البرمجية Visual Studio أو أعد تشغيلها.

  2. تأكد من أن Visual Studio Code يعثر تلقائيا على تحديثات الإضافات ويثبتها حتى تحصل جميع الإضافات على آخر التحديثات. خلاف ذلك ، يجب عليك إلغاء تثبيت الإصدار القديم يدويا وتثبيت أحدث إصدار.

    1. من القائمة ملف، انتقل إلى تفضيلات>الإعدادات.

    2. في علامة التبويب المستخدم، انتقل إلى الميزاتالامتدادات>.

    3. تأكد من تحديد تحديثات التحقق التلقائيوالتحديث التلقائي .

بشكل افتراضي، يتم تمكين الإعدادات التالية وتعيينها لملحق Azure Logic Apps (قياسي):

  • Azure Logic Apps Standard: Project Runtime، والذي تم تعيينه على الإصدار ~ 3

    ملاحظة

    هذا الإصدار مطلوب لاستخدام إجراءات عمليات التعليمات البرمجية المضمنة.

  • Azure Logic Apps Standard: Experimental View Manager، الذي يمكن أحدث مصمم في التعليمات البرمجية Visual Studio. إذا واجهت مشكلات في المصمم، مثل سحب العناصر وإفلاتها، فقم بإيقاف تشغيل هذا الإعداد.

للبحث عن هذه الإعدادات وتأكيدها، اتبع الخطوات التالية:

  1. من القائمة ملف، انتقل إلى تفضيلات>الإعدادات.

  2. في علامة التبويب المستخدم، انتقل إلى >ملحقات>Azure Logic Apps (قياسي).

    على سبيل المثال، يمكنك العثور على إعداد Azure Logic Apps Standard: Project وقت التشغيل هنا أو استخدام مربع البحث للعثور على إعدادات أخرى:

    Screenshot that shows Visual Studio Code settings for

الاتصال بحساب Azure الخاص بك

  1. على شريط نشاط التعليمات البرمجية Visual Studio، حدد أيقونة Azure.

    Screenshot that shows Visual Studio Code Activity Bar and selected Azure icon.

  2. في جزء Azure، ضمن Azure : Logic Apps (قياسي)، حدد تسجيل الدخول إلى Azure. عند ظهور صفحة مصادقة رمز Visual Studio، سجل الدخول باستخدام حساب Azure الخاص بك.

    Screenshot that shows Azure pane and selected link for Azure sign in.

    بعد تسجيل الدخول، يعرض جزء Azure الاشتراكات في حساب Azure الخاص بك. إذا كان لديك أيضا الإضافة التي تم إصدارها بشكل عام، فيمكنك العثور على أي تطبيقات منطقية أنشأتها باستخدام هذه الإضافة في قسم التطبيقات المنطقية، وليس قسم التطبيقات المنطقية (القياسية).

    إذا لم تظهر الاشتراكات المتوقعة، أو كنت تريد أن يعرض الجزء اشتراكات محددة فقط، فاتبع الخطوات التالية:

    1. في قائمة الاشتراكات، حرك المؤشر بجوار الاشتراك الأول حتى يظهر الزر تحديد اشتراكات (أيقونة التصفية). حدد رمز الفلتر.

      Screenshot that shows Azure pane and selected filter icon.

      أو، في شريط معلومات رمز Visual Studio، حدد حساب Azure الخاص بك.

    2. عند ظهور قائمة اشتراكات أخرى، حدد الاشتراكات التي تريدها، ثم تأكد من تحديد موافق.

إنشاء مشروع محلي

قبل أن تتمكن من إنشاء تطبيقك المنطقي، أنشئ مشروعا محليا بحيث يمكنك إدارة تطبيقك المنطقي وتشغيله ونشره من Visual Studio Code. يشبه المشروع الأساسي مشروع Azure Functions، المعروف أيضا باسم مشروع تطبيق الوظائف. ومع ذلك، فإن أنواع المشاريع هذه منفصلة عن بعضها البعض، لذلك لا يمكن أن توجد التطبيقات المنطقية وتطبيقات الوظائف في نفس المشروع.

  1. على الكمبيوتر، قم بإنشاء مجلد محلي فارغ لاستخدامه للمشروع الذي ستقوم بإنشائه لاحقا في Visual Studio Code.

  2. في Visual Studio Code، أغلق كافة المجلدات المفتوحة.

  3. في جزء Azure، بجوار Azure: Logic Apps (قياسي)، حدد إنشاء Project جديد (أيقونة تعرض مجلدا وصاعقة).

    Screenshot that shows Azure pane toolbar with

  4. إذا Windows Defender Firewall يطالبك بمنح حق الوصول إلى الشبكة ل ، وهو رمز Visual Studio ، و ل Code.exefunc.exe، وهو أدوات Azure Functions الأساسية ، فحدد الشبكات الخاصة ، مثل شبكة> المنزل أو العملالسماح بالوصول.

  5. استعرض وصولا إلى الموقع الذي أنشأت فيه مجلد المشروع، وحدد هذا المجلد وتابع.

    Screenshot that shows

  6. من قائمة القوالب التي تظهر، حدد إما سير عمل الحالة أو سير عمل عديم الحالة. يحدد هذا المثال سير العمل الولائي.

    Screenshot that shows the workflow templates list with

  7. أدخل اسما لسير العمل واضغط على مفتاح الإدخال Enter. يستخدم Fabrikam-Stateful-Workflow هذا المثال كاسم.

    Screenshot that shows the

    ملاحظة

    قد تظهر لك رسالة خطأ باسم azureLogicAppsStandard.createNewProject مع ظهور رسالة الخطأ، غير قادر على الكتابة إلى Workspace الإعدادات لأن azureFunctions.suppressProject ليس تكوينا مسجلا. إذا قمت بذلك، فحاول تثبيت ملحق Azure Functions ل Visual Studio Code، إما مباشرة من Visual Studio Marketplace أو من داخل Visual Studio Code.

    ينتهي Visual Studio Code من إنشاء مشروعك، ويفتح ملف workflow.json لسير العمل في محرر التعليمات البرمجية.

    ملاحظة

    إذا تمت مطالبتك بتحديد كيفية فتح مشروعك، فحدد فتح في النافذة الحالية إذا كنت تريد فتح مشروعك في نافذة رمز Visual Studio الحالية. لفتح مثيل جديد للتعليمات البرمجية Visual Studio، حدد فتح في نافذة جديدة.

  8. من شريط أدوات Visual Studio، افتح جزء المستكشف، إن لم يكن مفتوحا بالفعل.

    يعرض جزء المستكشف مشروعك، والذي يتضمن الآن ملفات المشروع التي تم إنشاؤها تلقائيا. على سبيل المثال، يحتوي المشروع على مجلد يعرض اسم سير العمل. داخل هذا المجلد، يحتوي الملف workflow.json على تعريف JSON الأساسي لسير العمل.

    Screenshot that shows the Explorer pane with project folder, workflow folder, and

    في التعليمات البرمجية Visual Studio، يحتوي مشروع التطبيق المنطقي على أحد النوعين التاليين:

    • الإضافة المستندة إلى الحزمة (Node.js)، وهو النوع الافتراضي
    • NuGet المستندة إلى حزمة (.NET)، والتي يمكنك تحويلها من النوع الافتراضي

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

    بالنسبة للمشروع الافتراضي المستند إلى الحزمة، يحتوي المشروع على بنية مجلد وملف مشابهة للمثال التالي:

    MyBundleBasedLogicAppProjectName
    | .vscode
    | Artifacts
      || Maps 
         ||| MapName1
         ||| ...
      || Schemas
         ||| SchemaName1
         ||| ...
    | WorkflowName1
      || workflow.json
      || ...
    | WorkflowName2
      || workflow.json
      || ...
    | workflow-designtime
    | .funcignore
    | connections.json
    | host.json
    | local.settings.json
    

    على مستوى جذر مشروعك، يمكنك العثور على الملفات والمجلدات التالية مع عناصر أخرى:

    الاسم مجلد أو ملف الوصف
    .vscode المجلد يحتوي على Visual Studio ملفات الإعدادات المتعلقة بالتعليمات البرمجية، مثل ملفات extensions.json وlaunch.json وsettings.jsonوtasks.json.
    البيانات الاصطناعية المجلد يحتوي على عناصر حساب التكامل التي تقوم بتعريفها واستخدامها في مهام سير العمل التي تدعم سيناريوهات الأعمال التجارية (B2B). على سبيل المثال، تتضمن بنية المثال خرائط ومخططات لعمليات تحويل XML والتحقق من صحتها.
    <اسم سير العمل> المجلد لكل سير عمل، يتضمن المجلد WorkflowName> ملف workflow.json، < والذي يحتوي على تعريف JSON الأساسي لسير العمل.
    سير العمل-وقت التصميم المجلد يحتوي على ملفات الإعدادات المتعلقة ببيئة التطوير.
    .funcignore الملف يحتوي على معلومات تتعلق بأدوات Azure Functions الأساسية المثبتة.
    connections.json الملف يحتوي على بيانات التعريف ونقاط النهاية والمفاتيح لأي اتصالات مدارة ووظائف Azure التي تستخدمها مهام سير العمل.

    هام: لاستخدام اتصالات ووظائف مختلفة لكل بيئة، تأكد من وضع معلمة لملف connections.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 على أسرار، لذا تأكد أيضا من استبعاد هذا الملف من عنصر تحكم مصدر المشروع.

تمكين تأليف الموصل المضمن

يمكنك إنشاء موصلات مضمنة خاصة بك لأي خدمة تحتاجها باستخدام إطار عمل قابلية توسيع Azure Logic Apps أحادي المستأجر. على غرار الموصلات المضمنة مثل ناقل خدمة Azure و SQL Server، توفر هذه الموصلات إنتاجية أعلى وزمن انتقال منخفض واتصالا محليا وتعمل أصلا في نفس العملية مثل وقت تشغيل Azure Logic Apps أحادي المستأجر.

تتوفر إمكانية التأليف حاليا فقط في Visual Studio Code، ولكن لا يتم تمكينها افتراضيا. لإنشاء هذه الموصلات، تحتاج أولا إلى تحويل مشروعك من الملحق المستند إلى الحزمة (Node.js) إلى المستندة إلى حزمة NuGet (.NET).

هام

هذا الإجراء عبارة عن عملية أحادية الاتجاه لا يمكنك التراجع عنها.

  1. في جزء المستكشف، في جذر المشروع، حرك مؤشر الماوس فوق أي منطقة فارغة أسفل كافة الملفات والمجلدات الأخرى، وافتح القائمة المختصرة، وحدد تحويل إلى مشروع تطبيق منطقي يستند إلى Nuget.

    Screenshot that shows that shows Explorer pane with the project's shortcut menu opened from a blank area in the project window.

  2. عند ظهور المطالبة، قم بتأكيد تحويل المشروع.

  3. للمتابعة، راجع الخطوات الواردة في المقالة واتبع الخطوات الواردة فيها، Azure Logic Apps Running Anywhere - قابلية توسيع الموصل المضمنة.

فتح ملف تعريف سير العمل في المصمم

  1. تحقق من الإصدارات المثبتة على الكمبيوتر عن طريق تشغيل هذا الأمر:

    ..\Users\{yourUserName}\dotnet --list-sdks

    إذا كان لديك.NET Core SDK 5.x، فقد يمنعك هذا الإصدار من فتح تعريف سير العمل الأساسي للتطبيق المنطقي في المصمم. بدلا من إزالة تثبيت هذا الإصدار، في المجلد الجذر للمشروع، قم بإنشاء ملف global.json يشير إلى إصدار .NET Core runtime 3.x الذي لديك والذي يتأخر عن الإصدار 3.1.201، على سبيل المثال:

    {
       "sdk": {
          "version": "3.1.8",
          "rollForward": "disable"
       }
    }
    

    هام

    تأكد من إضافة الملف global.json صراحة في المجلد الجذر للمشروع من داخل التعليمات البرمجية Visual Studio. خلاف ذلك ، لن يفتح المصمم.

  2. قم بتوسيع مجلد المشروع لسير العمل الخاص بك. افتح القائمة المختصرة للملف workflow.json ، وحدد فتح في Designer.

    Screenshot that shows Explorer pane and shortcut window for the workflow.json file with

  3. من القائمة تمكين الموصلات في Azure، حدد استخدام الموصلات من Azure، والتي تنطبق على جميع الموصلات المدارة المتوفرة والمنشورة في Azure، وليس فقط الموصلات لخدمات Azure.

    Screenshot that shows Explorer pane with

    ملاحظة

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

  4. من القائمة تحديد اشتراك، حدد اشتراك Azure لاستخدامه في مشروع التطبيق المنطقي.

    Screenshot that shows Explorer pane with the

  5. من قائمة مجموعات الموارد، حدد إنشاء مجموعة موارد جديدة.

    Screenshot that shows Explorer pane with resource groups list and

  6. قم بتوفير اسم لمجموعة الموارد، ثم اضغط على مفتاح الإدخال Enter. يستخدم هذا المثال Fabrikam-Workflows-RG.

    Screenshot that shows Explorer pane and resource group name box.

  7. من قائمة المواقع، حدد منطقة Azure لاستخدامها عند إنشاء مجموعة الموارد والموارد. يستخدم هذا المثال غرب وسط الولايات المتحدة.

    Screenshot that shows Explorer pane with locations list and

    بعد تنفيذ هذه الخطوة، Visual Studio التعليمات البرمجية يفتح مصمم سير العمل.

    ملاحظة

    عند بدء تشغيل Visual Studio Code واجهة برمجة تطبيقات وقت تصميم سير العمل، قد تتلقى رسالة تفيد بأن بدء التشغيل قد يستغرق بضع ثوان. يمكنك تجاهل هذه الرسالة أو تحديد موافق.

    إذا لم يفتح المصمم، فراجع قسم استكشاف الأخطاء وإصلاحها، ويفشل المصمم في فتحها.

    بعد ظهور المصمم، تظهر مطالبة اختيار عملية على المصمم ويتم تحديدها افتراضيا، مما يعرض جزء الإجراءات إضافة إجراء .

    Screenshot that shows the workflow designer.

  8. بعد ذلك، أضف مشغل وإجراءات إلى سير العمل.

إضافة مشغل وإجراءات

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

يستخدم سير العمل في هذا المثال هذا المشغل والإجراءات التالية:

  • مشغل الطلب المضمن، عند استلام طلب HTTP، الذي يتلقى المكالمات أو الطلبات الواردة وينشئ نقطة نهاية يمكن للخدمات الأخرى أو التطبيقات المنطقية الاتصال بها.

  • الإجراء Office 365 Outlook ، إرسال بريد إلكتروني.

  • إجراء الاستجابة المضمن، الذي تستخدمه لإرسال رد وإرجاع البيانات مرة أخرى إلى المتصل.

إضافة مشغل الطلب

  1. بجوار المصمم، في جزء إضافة مشغل ، ضمن مربع البحث اختيار عملية ، تأكد من تحديد مضمن بحيث يمكنك تحديد مشغل يعمل أصلا.

  2. في مربع البحث اختيار عملية ، أدخل when a http request، وحدد مشغل الطلب المضمن المسمى عند استلام طلب HTTP.

    Screenshot that shows the workflow designer and Add a trigger pane with

    عندما يظهر المشغل على المصمم، يفتح جزء تفاصيل المشغل لإظهار خصائص المشغل وإعداداته وإجراءاته الأخرى.

    Screenshot that shows the workflow designer with the

    تلميح

    إذا لم يظهر جزء التفاصيل، فتأكد من تحديد المشغل على المصمم.

  3. إذا كنت بحاجة إلى حذف عنصر من المصمم، فاتبع الخطوات التالية لحذف العناصر من المصمم.

إضافة الإجراء Office 365 Outlook

  1. على المصمم، ضمن المشغل الذي أضفته، حدد علامة الجمع (+) >إضافة إجراء.

    تظهر مطالبة اختيار عملية على المصمم، ويعاد فتح جزء الإجراءات إضافة إجراء بحيث يمكنك تحديد الإجراء التالي.

  2. في جزء إضافة إجراء ، ضمن مربع البحث اختيار عملية ، حدد Azure بحيث يمكنك تحديد إجراء لموصل مدار تم نشره في Azure .

    يحدد هذا المثال الإجراء Office 365 Outlook، إرسال بريد إلكتروني (V2) ويستخدمه.

    Screenshot that shows the workflow designer and Add an action pane with Office 365 Outlook

  3. في جزء تفاصيل الإجراء، حدد تسجيل الدخول حتى تتمكن من إنشاء اتصال بحساب بريدك الإلكتروني.

    Screenshot that shows the workflow designer and Send an email (V2) pane with

  4. عندما يطالبك رمز Visual Studio بالموافقة على الوصول إلى حساب بريدك الإلكتروني، حدد فتح.

    Screenshot that shows the Visual Studio Code prompt to permit access.

    تلميح

    لمنع المطالبات المستقبلية، حدد تكوين المجالات الموثوق بها بحيث يمكنك إضافة صفحة المصادقة كمجال موثوق به.

  5. اتبع المطالبات اللاحقة لتسجيل الدخول والسماح بالوصول والسماح بالعودة إلى Visual Studio Code.

    ملاحظة

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

  6. عندما يطالبك ملحق Azure Logic Apps (قياسي) بالموافقة على الوصول إلى حساب بريدك الإلكتروني، حدد فتح. اتبع المطالبة التالية للسماح بالوصول.

    Screenshot that shows the extension prompt to permit access.

    تلميح

    لمنع المطالبات المستقبلية، حدد عدم طلب هذه الإضافة مرة أخرى.

    بعد Visual Studio Code بإنشاء اتصالك، تعرض بعض الموصلات الرسالة التي تفيد بأن The connection will be valid for {n} days only. ينطبق هذا الحد الزمني فقط على المدة التي تقوم فيها بتأليف تطبيقك المنطقي في Visual Studio Code. بعد النشر، لم يعد هذا الحد ينطبق لأن تطبيقك المنطقي يمكنه المصادقة في وقت التشغيل باستخدام هويته المدارة المعينة تلقائيا من قبل النظام. تختلف هذه الهوية المدارة عن بيانات اعتماد المصادقة أو سلسلة الاتصال التي تستخدمها عند إنشاء اتصال. إذا قمت بتعطيل هذه الهوية المدارة المعينة من قبل النظام، فلن تعمل الاتصالات في وقت التشغيل.

  7. على المصمم، إذا لم يظهر الإجراء إرسال بريد إلكتروني محددا، فحدد هذا الإجراء.

  8. في جزء تفاصيل الإجراء، ضمن علامة التبويب معلمات ، قم بتوفير المعلومات المطلوبة للإجراء، على سبيل المثال:

    Screenshot that shows the workflow designer with details for Office 365 Outlook

    الخاصية مطلوب القيمة الوصف
    لكي تتمكن من نعم <your-email-address> مستلم البريد الإلكتروني، والذي يمكن أن يكون عنوان بريدك الإلكتروني لأغراض الاختبار. يستخدم هذا المثال البريد الإلكتروني الوهمي ، sophiaowen@fabrikam.com.
    Subject نعم An email from your example workflow موضوع البريد الإلكتروني
    النص الأساسي نعم Hello from your example workflow! محتوى نص البريد الإلكتروني

    ملاحظة

    إذا كنت تريد إجراء أية تغييرات في جزء التفاصيل على علامة التبويب الإعدادات أو نتيجة ثابتة أو تشغيل بعد، فتأكد من تحديد تم لتنفيذ هذه التغييرات قبل تبديل علامات التبويب أو تغيير التركيز إلى المصمم. وإلا، فلن يحتفظ رمز Visual Studio بتغييراتك.

  9. على المصمم، حدد حفظ.

هام

لتشغيل سير عمل محليا يستخدم مشغل أو إجراءات تستند إلى webhook، مثل مشغل أو إجراء HTTP Webhook المضمن، يجب تمكين هذه الإمكانية عن طريق إعداد إعادة التوجيه لعنوان URL لمعاودة الاتصال ب webhook.

تمكين خطافات الويب قيد التشغيل محليا

عند استخدام مشغل أو إجراء يستند إلى webhook، مثل HTTP Webhook، مع تطبيق منطقي قيد التشغيل في Azure، يشترك وقت تشغيل Logic Apps في نقطة نهاية الخدمة عن طريق إنشاء عنوان URL لمعاودة الاتصال وتسجيله باستخدام نقطة النهاية هذه. ثم ينتظر المشغل أو الإجراء حتى تستدعي نقطة نهاية الخدمة عنوان URL. ومع ذلك، عندما تعمل في شفرة Visual Studio، يبدأ عنوان URL لمعاودة الاتصال الذي تم إنشاؤه ب http://localhost:7071/.... عنوان URL هذا مخصص لخادم المضيف المحلي، وهو خاص بحيث لا يمكن لنقطة نهاية الخدمة استدعاء عنوان URL هذا.

لتشغيل المشغلات والإجراءات المستندة إلى webhook محليا في Visual Studio Code، تحتاج إلى إعداد عنوان URL عام يعرض خادم المضيف المحلي ويعيد توجيه المكالمات بشكل آمن من نقطة نهاية الخدمة إلى عنوان URL لمعاودة الاتصال ب webhook. يمكنك استخدام خدمة وأداة إعادة توجيه مثل ngrok ، التي تفتح نفق HTTP إلى منفذ المضيف المحلي ، أو يمكنك استخدام الأداة المكافئة الخاصة بك.

إعداد إعادة توجيه المكالمات باستخدام ngrok

  1. قم بالتسجيل للحصول على حساب ngrok إذا لم يكن لديك حساب. وإلا، فقم بتسجيل الدخول إلى حسابك.

  2. احصل على رمز المصادقة الشخصية الخاص بك ، والذي يحتاجه عميل ngrok للاتصال ومصادقة الوصول إلى حسابك.

    1. للعثور على صفحة الرمز المميز للمصادقة، في قائمة لوحة معلومات حسابك، قم بتوسيع المصادقة، وحدد Authtoken الخاص بك.

    2. من مربع Authtoken الخاص بك ، انسخ الرمز المميز إلى موقع آمن.

  3. من صفحة تنزيل ngrok أو لوحة معلومات حسابك، قم بتنزيل إصدار ngrok الذي تريده، واستخرج ملف .zip. لمزيد من المعلومات، راجع الخطوة 1: فك الضغط للتثبيت.

  4. على جهاز الكمبيوتر الخاص بك، افتح أداة موجه الأوامر. استعرض للوصول إلى الموقع الذي يوجد به ملف ngrok.exe .

  5. الاتصال عميل ngrok إلى حساب ngrok الخاص بك عن طريق تشغيل الأمر التالي. لمزيد من المعلومات، راجع الخطوة 2: الاتصال حسابك.

    ngrok authtoken <your_auth_token>

  6. افتح نفق HTTP إلى منفذ المضيف المحلي 7071 عن طريق تشغيل الأمر التالي. لمزيد من المعلومات، راجع الخطوة 3: تشغيله.

    ngrok http 7071

  7. من الإخراج، ابحث عن السطر التالي:

    http://<domain>.ngrok.io -> http://localhost:7071

  8. انسخ عنوان URL الذي يحتوي على هذا التنسيق واحفظه: http://<domain>.ngrok.io

إعداد عنوان URL لإعادة التوجيه في إعدادات التطبيق

  1. في Visual Studio Code ، على المصمم ، أضف مشغل أو إجراء HTTP + Webhook.

  2. عند ظهور المطالبة بموقع نقطة نهاية المضيف، أدخل عنوان URL لإعادة التوجيه (إعادة التوجيه) الذي أنشأته مسبقا.

    ملاحظة

    يؤدي تجاهل المطالبة إلى ظهور تحذير بأنه يجب عليك توفير عنوان URL لإعادة التوجيه، لذا حدد ضبط، وأدخل عنوان URL. بعد الانتهاء من هذه الخطوة، لن تظهر المطالبة مرة أخرى لمشغلات webhook اللاحقة أو الإجراءات التي قد تضيفها.

    لجعل المطالبة تظهر مرة أخرى، على مستوى الجذر لمشروعك، افتح القائمة المختصرة للملف local.settings.json ، وحدد تكوين نقطة نهاية إعادة توجيه Webhook. تظهر المطالبة الآن حتى تتمكن من توفير عنوان URL لإعادة التوجيه.

    يضيف رمز Visual Studio عنوان URL لإعادة التوجيه إلى الملف local.settings.json في المجلد الجذر لمشروعك. Values في الكائن، تظهر الخاصية المسماة Workflows.WebhookRedirectHostUri الآن ويتم تعيينها إلى عنوان URL لإعادة التوجيه، على سبيل المثال:

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "UseDevelopmentStorage=true",
          "FUNCTIONS_WORKER_RUNTIME": "node",
          "FUNCTIONS_V2_COMPATIBILITY_MODE": "true",
          <...>
          "Workflows.WebhookRedirectHostUri": "http://xxxXXXXxxxXXX.ngrok.io",
          <...>
       }
    }
    

في المرة الأولى التي تبدأ فيها جلسة عمل تصحيح أخطاء محلية أو تقوم بتشغيل سير العمل بدون تصحيح، يقوم وقت تشغيل Logic Apps بتسجيل سير العمل مع نقطة نهاية الخدمة والاشتراك في نقطة النهاية هذه لإعلام عمليات webhook. في المرة التالية التي يتم فيها تشغيل سير العمل، لن يتم تسجيل وقت التشغيل أو إعادة الاشتراك لأن تسجيل الاشتراك موجود بالفعل في وحدة التخزين المحلية.

عند إيقاف جلسة عمل تصحيح الأخطاء لتشغيل سير عمل يستخدم مشغلات أو إجراءات مستندة إلى webhook يتم تشغيلها محليا، لا يتم حذف تسجيلات الاشتراك الموجودة. لإلغاء التسجيل ، يجب عليك إزالة تسجيلات الاشتراك أو حذفها يدويا.

ملاحظة

بعد بدء تشغيل سير العمل، قد تعرض نافذة المحطة الطرفية أخطاء مثل هذا المثال:

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"

إدارة نقاط التوقف لتصحيح الأخطاء

قبل تشغيل سير عمل تطبيق المنطق واختباره عن طريق بدء جلسة عمل تصحيح الأخطاء، يمكنك تعيين نقاط التوقف داخل ملف workflow.json لكل سير عمل. لا يلزم إجراء أي إعداد آخر.

في هذا الوقت ، يتم دعم نقاط التوقف فقط للإجراءات ، وليس المشغلات. يحتوي كل تعريف إجراء على مواقع نقاط التوقف التالية:

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

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

لإضافة نقطة توقف، اتبع الخطوات التالية:

  1. افتح الملف workflow.json لسير العمل الذي تريد تصحيحه.

  2. على السطر الذي تريد تعيين نقطة التوقف فيه، في العمود الأيمن، حدد داخل هذا العمود. لإزالة نقطة التوقف، حدد نقطة التوقف هذه.

    عند بدء جلسة عمل تصحيح الأخطاء، تظهر طريقة العرض "تشغيل" على الجانب الأيمن من نافذة التعليمات البرمجية، بينما يظهر شريط أدوات تصحيح الأخطاء بالقرب من الجزء العلوي.

    ملاحظة

    إذا لم تظهر طريقة العرض "تشغيل" تلقائيا، فاضغط على Ctrl+Shift+D.

  3. لمراجعة المعلومات المتوفرة عند حدوث نقطة توقف، في طريقة العرض تشغيل، افحص جزء المتغيرات .

  4. لمتابعة تنفيذ سير العمل، على شريط أدوات تصحيح الأخطاء، حدد متابعة (زر التشغيل).

يمكنك إضافة نقاط توقف وإزالتها في أي وقت أثناء تشغيل سير العمل. ومع ذلك، إذا قمت بتحديث الملف workflow.json بعد بدء التشغيل، فلن يتم تحديث نقاط التوقف تلقائيا. لتحديث نقاط التوقف، أعد تشغيل تطبيق المنطق.

للحصول على معلومات عامة، راجع نقاط التوقف - رمز Visual Studio.

التشغيل والاختبار والتصحيح محليا

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

  1. لتصحيح أخطاء سير عمل عديم الجنسية بسهولة أكبر، يمكنك تمكين محفوظات التشغيل لسير العمل هذا.

  2. على شريط نشاط التعليمات البرمجية Visual Studio، افتح القائمة تشغيل، وحدد بدء تصحيح الأخطاء (F5).

    يتم فتح نافذة المحطة الطرفية بحيث يمكنك مراجعة جلسة تصحيح الأخطاء.

    ملاحظة

    إذا تلقيت الخطأ، "يوجد خطأ بعد تشغيل preLaunchTask 'generateDebugSymbols"، راجع قسم استكشاف الأخطاء وإصلاحها، فشل بدء تشغيل جلسة تصحيح الأخطاء.

  3. الآن ، ابحث عن عنوان URL لمعاودة الاتصال لنقطة النهاية على مشغل الطلب.

    1. أعد فتح جزء "المستكشف" بحيث يمكنك عرض المشروع.

    2. من القائمة المختصرة لملف workflow.json ، حدد نظرة عامة.

      Screenshot that shows the Explorer pane and shortcut window for the workflow.json file with

    3. ابحث عن قيمة عنوان URL لمعاودة الاتصال ، والتي تبدو مشابهة لعنوان URL هذا لمشغل الطلب على سبيل المثال:

      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>

      Screenshot that shows your workflow's overview page with callback URL

  4. لاختبار عنوان URL لمعاودة الاتصال عن طريق تشغيل سير عمل التطبيق المنطقي، افتح ساعي البريد أو الأداة المفضلة لديك لإنشاء الطلبات وإرسالها.

    يستمر هذا المثال باستخدام ساعي البريد. لمزيد من المعلومات، راجع ساعي البريد البدء.

    1. على شريط أدوات ساعي البريد، حدد جديد.

      Screenshot that shows Postman with New button selected

    2. في الجزء إنشاء جديد ، ضمن كتل الإنشاء،حدد طلب.

    3. في النافذة حفظ الطلب ، ضمن اسم الطلب، قم بتوفير اسم للطلب، على سبيل المثال، Test workflow trigger.

    4. ضمن تحديد مجموعة أو مجلد للحفظ فيه، حدد إنشاء مجموعة.

    5. ضمن كافة المجموعات، قم بتوفير اسم للمجموعة لإنشائها لتنظيم طلباتك، واضغط على مفتاح الإدخال Enter، وحدد حفظ في <اسم> المجموعة. يستخدم Logic Apps requests هذا المثال كاسم المجموعة.

      في ساعي البريد، يتم فتح جزء الطلب بحيث يمكنك إرسال طلب إلى عنوان URL لمعاودة الاتصال لمشغل الطلب.

      Screenshot that shows Postman with the opened request pane

    6. عد إلى Visual Studio Code. من صفحة نظرة عامة على سير العمل، انسخ قيمة خاصية عنوان URL لمعاودة الاتصال .

    7. العودة إلى ساعي البريد. في جزء الطلب، بجوار قائمة الأساليب، التي تعرض حاليا GET كطريقة طلب افتراضية، الصق عنوان URL لمعاودة الاتصال الذي نسخته مسبقا في مربع العنوان، وحدد إرسال.

      Screenshot that shows Postman and callback URL in the address box with Send button selected

      يرسل مثال سير عمل التطبيق المنطقي رسالة بريد إلكتروني تظهر مشابهة لهذا المثال:

      Screenshot that shows Outlook email as described in the example

  5. في Visual Studio Code، ارجع إلى صفحة نظرة عامة على سير العمل.

    إذا قمت بإنشاء سير عمل ذي حالة، فبعد أن يؤدي الطلب الذي أرسلته إلى تشغيل سير العمل، تعرض صفحة النظرة العامة حالة تشغيل سير العمل ومحفوظاته.

    تلميح

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

    Screenshot that shows the workflow's overview page with run status and history

    يوضح الجدول التالي الحالات النهائية المحتملة التي يمكن أن يكون لكل سير عمل يتم تشغيله وتظهر في التعليمات البرمجية Visual Studio:

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

    نصيحة: إذا قمت بإعداد تسجيل التشخيصات، يمكنك الحصول على معلومات حول أي أحداث خنق تحدث.

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

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

    في الانتظار لم يبدأ التشغيل أو تم إيقافه مؤقتا، على سبيل المثال، بسبب مثيل سير عمل سابق لا يزال قيد التشغيل.
  6. لمراجعة الحالات لكل خطوة في تشغيل معين ومدخلات الخطوة ومخرجاتها، حدد زر علامات الحذف (...) لهذا التشغيل، وحدد إظهار التشغيل.

    Screenshot that shows your workflow's run history row with ellipses button and

    يفتح Visual Studio Code طريقة عرض المراقبة ويعرض حالة كل خطوة في التشغيل.

    Screenshot that shows each step in the workflow run and their status

    ملاحظة

    في حالة فشل تشغيل وتظهر 400 Bad Request خطوة في طريقة عرض المراقبة الخطأ، قد تنتج هذه المشكلة عن اسم مشغل أطول أو اسم إجراء يؤدي إلى تجاوز معرف الموارد الموحد الأساسي (URI) الحد الأقصى للأحرف الافتراضي. لمزيد من المعلومات، راجع "400 طلب غير صحيح".

    يوضح الجدول التالي الحالات المحتملة التي يمكن أن يكون لكل إجراء سير عمل وتظهر في التعليمات البرمجية Visual Studio:

    حالة الإجراء الوصف
    احباط توقف الإجراء أو لم ينته بسبب مشاكل خارجية، على سبيل المثال، انقطاع النظام أو انتهاء اشتراك Azure.
    الغاء كان الإجراء قيد التشغيل ولكنه تلقى طلبا بالإلغاء.
    فشل فشل الإجراء.
    قيد التشغيل الإجراء قيد التشغيل حاليا.
    Skipped تم تخطي الإجراء بسبب فشل الإجراء السابق مباشرة. يحتوي الإجراء على runAfter شرط يتطلب انتهاء الإجراء السابق بنجاح قبل تشغيل الإجراء الحالي.
    Succeeded نجح العمل.
    نجحت مع إعادة المحاولات نجح الإجراء ولكن فقط بعد واحد أو أكثر من عمليات إعادة الاعتقال. لمراجعة محفوظات إعادة المحاولة، في طريقة عرض تفاصيل محفوظات التشغيل، حدد هذا الإجراء بحيث يمكنك عرض المدخلات والمخرجات.
    انتهت مهله توقف الإجراء بسبب حد المهلة المحدد بواسطة إعدادات هذا الإجراء.
    في الانتظار ينطبق على إجراء webhook ينتظر طلبا واردا من المتصل.
  7. لمراجعة المدخلات والمخرجات لكل خطوة، حدد الخطوة التي تريد فحصها.

    Screenshot that shows the status for each step in the workflow plus the inputs and outputs in the expanded

  8. لمزيد من المراجعة للمدخلات والمخرجات الخام لهذه الخطوة، حدد إظهار المدخلات الخام أو إظهار المخرجات الخام.

  9. لإيقاف جلسة عمل تصحيح الأخطاء، من القائمة تشغيل ، حدد إيقاف تصحيح الأخطاء (Shift + F5).

إرجاع استجابة

لإرجاع استجابة إلى المتصل الذي أرسل طلبا إلى تطبيقك المنطقي، يمكنك استخدام إجراء الاستجابة المضمن لسير عمل يبدأ بمشغل الطلب.

  1. على مصمم سير العمل، ضمن الإجراء إرسال بريد إلكتروني ، حدد علامة الجمع (+) >إضافة إجراء.

    تظهر مطالبة اختيار عملية على المصمم، ويعاد فتح جزء الإجراءات إضافة إجراء بحيث يمكنك تحديد الإجراء التالي.

  2. في جزء إضافة إجراء، ضمن مربع البحث اختيار إجراء ، تأكد من تحديد مضمن . في مربع البحث، أدخل response، وحدد الإجراء استجابة .

    Screenshot that shows the workflow designer with the Response action selected.

    عندما يظهر إجراء الاستجابة على المصمم، يتم فتح جزء تفاصيل الإجراء تلقائيا.

    Screenshot that shows the workflow designer with the

  3. في علامة التبويب معلمات ، قم بتوفير المعلومات المطلوبة للوظيفة التي تريد الاتصال بها.

    يرجع هذا المثال قيمة خاصية النص الأساسي التي تم إخراجها من الإجراء إرسال بريد إلكتروني .

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

      Screenshot that shows the

    2. في قائمة المحتوى الديناميكي، ضمن إرسال بريد إلكتروني، حدد النص الأساسي.

      Screenshot that shows the open dynamic content list. In the list, under the

      عند الانتهاء، يتم الآن تعيين خاصية النص الأساسي لإجراء الاستجابة إلى قيمة إخراج النص الأساسي لإجراء إرسال بريد إلكتروني.

      Screenshot that shows the status for each step in the workflow plus the inputs and outputs in the expanded

  4. على المصمم، حدد حفظ.

إعادة اختبار تطبيقك المنطقي

بعد إجراء تحديثات على تطبيق المنطق، يمكنك تشغيل اختبار آخر عن طريق إعادة تشغيل مصحح الأخطاء في Visual Studio وإرسال طلب آخر لتشغيل تطبيق المنطق المحدث، على غرار الخطوات الواردة في تشغيل واختبار وتصحيح الأخطاء محليا.

  1. على شريط نشاط التعليمات البرمجية Visual Studio، افتح القائمة تشغيل، وحدد بدء تصحيح الأخطاء (F5).

  2. في ساعي البريد أو أداتك لإنشاء الطلبات وإرسالها، أرسل طلبا آخر لتشغيل سير العمل.

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

    على سبيل المثال، إليك الحالة خطوة بخطوة للتشغيل بعد تحديث نموذج سير العمل باستخدام الإجراء استجابة.

    Screenshot that shows the status for each step in the updated workflow plus the inputs and outputs in the expanded

  4. لإيقاف جلسة عمل تصحيح الأخطاء، من القائمة تشغيل ، حدد إيقاف تصحيح الأخطاء (Shift + F5).

البحث عن أسماء النطاقات للوصول إلى جدار الحماية

قبل نشر سير عمل التطبيق المنطقي وتشغيله في مدخل Azure، إذا كانت بيئتك تحتوي على متطلبات شبكة صارمة أو جدران حماية تحد من حركة المرور، فيجب عليك إعداد أذونات لأي اتصالات مشغل أو إجراء موجودة في سير عملك.

للبحث عن أسماء المجالات المؤهلة بالكامل (FQDNs) لهذه الاتصالات، اتبع الخطوات التالية:

  1. في مشروع التطبيق المنطقي، افتح ملف connections.json ، الذي يتم إنشاؤه بعد إضافة المشغل أو الإجراء الأول المستند إلى الاتصال إلى سير العمل، وابحث عن managedApiConnections الكائن.

  2. لكل اتصال قمت بإنشائه، انسخ قيمة الخاصية واحفظها في connectionRuntimeUrl مكان آمن بحيث يمكنك إعداد جدار الحماية باستخدام هذه المعلومات.

    يحتوي هذا المثال على ملف connections.json على اتصالين، اتصال AS2 واتصال Office 365 بهذه connectionRuntimeUrl القيم:

    • AS2: "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba

    • Office 365:"connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f

    {
       "managedApiConnections": {
          "as2": {
             "api": {
                "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/as2"
             },
             "connection": {
                "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}"
             },
             "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba,
             "authentication": {
                "type":"ManagedServiceIdentity"
             }
          },
          "office365": {
             "api": {
                "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/office365"
             },
             "connection": {
                "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}"
             },
             "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f,
             "authentication": {
                "type":"ManagedServiceIdentity"
             }
          }
       }
    }
    

نشر في Azure

من Visual Studio Code، يمكنك نشر مشروعك مباشرة إلى Azure، الذي ينشر تطبيقك المنطقي باستخدام نوع مورد Logic App (قياسي). يمكنك نشر تطبيقك المنطقي كمورد جديد، والذي يقوم تلقائيا بإنشاء أي موارد ضرورية، مثل حساب Azure Storage، على غرار متطلبات تطبيق الوظيفة. أو يمكنك نشر تطبيقك المنطقي على مورد تطبيق منطقي (قياسي) تم نشره مسبقا، والذي يقوم بالكتابة فوق هذا التطبيق المنطقي.

يتطلب النشر لنوع مورد Logic App (قياسي) خطة استضافة وطبقة تسعير، والتي تحددها أثناء النشر. لمزيد من المعلومات، راجع خطط الاستضافة ومستويات التسعير.

النشر إلى مورد جديد لتطبيق المنطق (قياسي)

  1. على شريط نشاط التعليمات البرمجية Visual Studio، حدد أيقونة Azure.

  2. على شريط أدوات جزء Azure: Logic Apps (قياسي)،حدد نشر إلى تطبيق Logic App.

    Screenshot that shows the

  3. إذا طلب منك ذلك، فحدد اشتراك Azure لاستخدامه في نشر تطبيقك المنطقي.

  4. من القائمة التي يفتحها رمز Visual Studio، حدد من الخيارات التالية:

    • إنشاء تطبيق منطقي جديد (قياسي) في Azure (سريع)
    • إنشاء تطبيق منطقي جديد (قياسي) في Azure Advanced
    • مورد تطبيق منطقي (قياسي) تم نشره مسبقا، إن وجد

    يستمر هذا المثال مع إنشاء تطبيق منطقي جديد (قياسي) في Azure Advanced.

    Screenshot that shows the

  5. لإنشاء مورد تطبيق Logic الجديد (قياسي)، اتبع الخطوات التالية:

    1. قم بتوفير اسم فريد عالميا لتطبيقك المنطقي الجديد، وهو الاسم الذي يجب استخدامه لمورد تطبيق Logic App (القياسي ). يستخدم هذا المثال Fabrikam-Workflows-App.

      Screenshot that shows the

    2. حدد خطة استضافة لتطبيقك المنطقي الجديد. يمكنك إما إنشاء اسم لخطتك، أو تحديد خطة موجودة. يحدد هذا المثال إنشاء خطة خدمة تطبيق جديدة.

      Screenshot that shows the

    3. أدخل اسما لخطة الاستضافة الخاصة بك، ثم حدد طبقة تسعير للخطة التي اخترتها.

      لمزيد من المعلومات، راجع خطط الاستضافة ومستويات التسعير.

    4. للحصول على الأداء الأمثل، حدد نفس مجموعة الموارد مثل مشروعك للنشر.

      ملاحظة

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

    5. بالنسبة لمهام سير العمل ذات الحالة، حدد إنشاء حساب تخزين جديد أو حساب تخزين موجود.

      Screenshot that shows the

    6. إذا كانت إعدادات إنشاء التطبيق المنطقي ونشره تدعم استخدام التطبيق Insights، فيمكنك اختياريا تمكين تسجيل التشخيصات وتتبعها لتطبيقك المنطقي. يمكنك القيام بذلك إما عند نشر تطبيقك المنطقي من التعليمات البرمجية Visual Studio أو بعد النشر. يجب أن يكون لديك تطبيق Insights المثال، ولكن يمكنك إنشاء هذا المورد إما مقدما أو عند نشر تطبيقك المنطقي أو بعد النشر.

      لتمكين التسجيل والتتبع الآن، اتبع الخطوات التالية:

      1. حدد إما موردا Insights تطبيق موجودا أو إنشاء تطبيق جديد Insights مورد.

      2. في مدخل Azure، انتقل إلى مورد Insights التطبيق.

      3. من قائمة الموارد، حدد نظرة عامة. ابحث عن قيمة مفتاح الأجهزة وانسخها.

      4. في التعليمات البرمجية Visual Studio، في المجلد الجذر للمشروع، افتح الملف local.settings.json.

      5. Values في الكائن، أضف الخاصيةAPPINSIGHTS_INSTRUMENTATIONKEY، وقم بتعيين القيمة إلى مفتاح الجهاز، على سبيل المثال:

        {
           "IsEncrypted": false,
           "Values": {
              "AzureWebJobsStorage": "UseDevelopmentStorage=true",
              "FUNCTIONS_WORKER_RUNTIME": "dotnet",
              "APPINSIGHTS_INSTRUMENTATIONKEY": <instrumentation-key>
           }
        }
        

        تلميح

        يمكنك التحقق مما إذا كانت أسماء المشغلات والإجراءات تظهر بشكل صحيح في التطبيق الخاص بك Insights المثال.

        1. في مدخل Azure، انتقل إلى مورد Insights التطبيق.

        2. في قائمة مورد الموارد، ضمن تحقيق، حددخريطة التطبيق.

        3. راجع أسماء العمليات التي تظهر في الخريطة.

        قد تظهر بعض الطلبات الواردة من المشغلات المضمنة كتكرارات في خريطة التطبيق. بدلا من استخدام التنسيق WorkflowName.ActionName ، تستخدم هذه التكرارات اسم سير العمل كاسم العملية وتنشأ من مضيف Azure Functions.

      6. بعد ذلك، يمكنك اختياريا ضبط مستوى الخطورة لبيانات التتبع التي يجمعها تطبيقك المنطقي ويرسلها إلى التطبيق Insights المثال.

        في كل مرة يحدث فيها حدث متعلق بسير العمل، مثل عند تشغيل سير عمل أو عند تشغيل إجراء، يصدر وقت التشغيل آثارا مختلفة. تغطي عمليات التتبع هذه عمر سير العمل وتشمل، على سبيل المثال لا الحصر، أنواع الأحداث التالية:

        • نشاط الخدمة، مثل البدء والإيقاف والأخطاء.
        • الوظائف ونشاط المرسل.
        • نشاط سير العمل، مثل المشغل والإجراء والتشغيل.
        • نشاط طلب التخزين، مثل النجاح أو الفشل.
        • نشاط طلب HTTP، مثل الوارد والصادر والنجاح والفشل.
        • أي آثار تطوير، مثل رسائل تصحيح الأخطاء.

        يتم تعيين كل نوع حدث إلى مستوى خطورة. على سبيل المثال، يلتقط المستوى الرسائل الأكثر تفصيلا، بينما Information يلتقط المستوى النشاط العام في سير العمل، Trace مثل وقت بدء تشغيل تطبيق المنطق وسير العمل والمشغل والإجراءات وإيقافها. يصف هذا الجدول مستويات الخطورة وأنواع التتبع الخاصة بها:

        مستوى الخطورة نوع التتبع
        هام السجلات التي تصف فشلا غير قابل للاسترداد في تطبيق المنطق الخاص بك.
        تصحيح السجلات التي يمكنك استخدامها للتحقيق أثناء التطوير، على سبيل المثال، مكالمات HTTP الواردة والصادرة.
        خطأ السجلات التي تشير إلى فشل في تنفيذ سير العمل، ولكن ليس إلى فشل عام في تطبيق المنطق الخاص بك.
        المعلومات السجلات التي تتعقب النشاط العام في تطبيقك المنطقي أو سير العمل، على سبيل المثال:

        - عندما يبدأ الزناد أو الإجراء أو التشغيل وينتهي.
        - عندما يبدأ التطبيق المنطقي الخاص بك أو ينتهي.

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

        لتعيين مستوى الخطورة، على مستوى جذر المشروع، افتح ملف host.json ، وابحث عن logging الكائن. يتحكم هذا الكائن في تصفية السجل لكافة مهام سير العمل في تطبيقك المنطقي ويتبع تخطيط ASP.NET Core لتصفية نوع السجل.

        {
           "version": "2.0",
           "logging": {
              "applicationInsights": {
                 "samplingExcludedTypes": "Request",
                 "samplingSettings": {
                    "isEnabled": true
                 }
              }
           }
        }
        

        إذا كان الكائن لا يحتوي على logLevel كائن يتضمن الخاصية، فأضف هذه العناصر.loggingHost.Triggers.Workflow قم بتعيين الخاصية إلى مستوى الخطورة لنوع التتبع الذي تريده، على سبيل المثال:

        {
           "version": "2.0",
           "logging": {
              "applicationInsights": {
                 "samplingExcludedTypes": "Request",
                 "samplingSettings": {
                    "isEnabled": true
                 }
              },
              "logLevel": {
                 "Host.Triggers.Workflow": "Information"
              }
           }
        }
        

    عند الانتهاء من خطوات النشر، يبدأ Visual Studio Code في إنشاء الموارد اللازمة لنشر تطبيقك المنطقي ونشرها.

  6. لمراجعة عملية النشر ومراقبتها، من القائمة عرض ، حدد الإخراج. من قائمة شريط أدوات نافذة الإخراج، حدد Azure Logic Apps.

    Screenshot that shows the Output window with the

    عند انتهاء Visual Studio Code من نشر تطبيقك المنطقي إلى Azure، تظهر الرسالة التالية:

    Screenshot that shows a message that deployment to Azure successfully completed.

    تهانينا، تطبيقك المنطقي موجود الآن في Azure ويتم تمكينه افتراضيا.

بعد ذلك ، يمكنك معرفة كيفية تنفيذ هذه المهام:

إضافة سير عمل فارغ إلى المشروع

يمكنك الحصول على مهام سير عمل متعددة في مشروع التطبيق المنطقي. لإضافة سير عمل فارغ إلى المشروع، اتبع الخطوات التالية:

  1. على شريط نشاط التعليمات البرمجية Visual Studio، حدد أيقونة Azure.

  2. في جزء Azure، بجوار Azure : Logic Apps (قياسي)، حدد إنشاء سير عمل (أيقونة لتطبيقات Azure المنطقية).

  3. حدد نوع سير العمل الذي تريد إضافته: حالة أو عديم الجنسية

  4. أدخل اسما لسير العمل.

عند الانتهاء، يظهر مجلد سير عمل جديد في مشروعك مع ملف workflow.json لتعريف سير العمل.

إدارة التطبيقات المنطقية المنشورة في التعليمات البرمجية Visual Studio

في Visual Studio Code، يمكنك عرض جميع التطبيقات المنطقية المنشورة في اشتراكك في Azure، سواء كانت التطبيقات المنطقية الأصلية أو نوع مورد التطبيق المنطقي (القياسي)، وتحديد المهام التي تساعدك على إدارة هذه التطبيقات المنطقية. ومع ذلك، للوصول إلى كلا النوعين من الموارد، تحتاج إلى كل من تطبيقات Azure Logic وملحقات Azure Logic Apps (القياسية) ل Visual Studio Code.

  1. على شريط الأدوات الأيمن، حدد أيقونة Azure. في جزء Azure: Logic Apps (قياسي)، قم بتوسيع اشتراكك، الذي يعرض جميع التطبيقات المنطقية المنشورة لهذا الاشتراك.

  2. افتح تطبيق المنطق الذي تريد إدارته. من القائمة المختصرة لتطبيق المنطق، حدد المهمة التي تريد تنفيذها.

    على سبيل المثال، يمكنك تحديد مهام مثل إيقاف تطبيق المنطق المنشور أو بدء تشغيله أو إعادة تشغيله أو حذفه. يمكنك تعطيل سير عمل أو تمكينه باستخدام مدخل Azure.

    ملاحظة

    يؤثر تطبيق "منطق التوقف" و"حذف عمليات التطبيق المنطقي" على مثيلات سير العمل بطرق مختلفة. لمزيد من المعلومات، راجع اعتبارات إيقاف التطبيقات المنطقيةواعتبارات حذف التطبيقات المنطقية.

    Screenshot that shows Visual Studio Code with the opened

  3. لعرض كافة مهام سير العمل في تطبيق المنطق، قم بتوسيع التطبيق المنطقي، ثم قم بتوسيع عقدة مهام سير العمل .

  4. لعرض سير عمل معين، افتح القائمة المختصرة لسير العمل، وحدد فتح في Designer، الذي يفتح سير العمل في وضع القراءة فقط.

    لتحرير سير العمل، تتوفر لديك الخيارات التالية:

    • في التعليمات البرمجية Visual Studio، افتح ملف workflow.json الخاص بمشروعك في مصمم سير العمل، وقم بإجراء التعديلات، ثم أعد نشر تطبيقك المنطقي إلى Azure.

    • في مدخل Azure، افتح تطبيق المنطق. يمكنك بعد ذلك فتح سير العمل وتحريره وحفظه.

  5. لفتح التطبيق المنطقي المنشور في مدخل Azure، افتح القائمة المختصرة للتطبيق المنطقي، وحدد فتح في البوابة الإلكترونية.

    تفتح بوابة Azure الإلكترونية في المستعرض، وتسجل دخولك إلى البوابة الإلكترونية تلقائيا إذا قمت بتسجيل الدخول إلى التعليمات البرمجية Visual Studio، وتعرض تطبيقك المنطقي.

    Screenshot that shows the Azure portal page for your logic app in Visual Studio Code.

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

    Screenshot that shows the Azure portal and the search bar with search results for deployed logic app, which appears selected.

اعتبارات لإيقاف التطبيقات المنطقية

يؤثر إيقاف تطبيق منطقي على مثيلات سير العمل بالطرق التالية:

  • تلغي Azure Logic Apps جميع عمليات التشغيل قيد التنفيذ والمعلقة على الفور.

  • لا تقوم Azure Logic Apps بإنشاء مثيلات سير عمل جديدة أو تشغيلها.

  • لن يتم إطلاق المشغلات في المرة القادمة التي يتم فيها استيفاء شروطها. ومع ذلك، تتذكر حالات التشغيل النقاط التي تم فيها إيقاف تطبيق المنطق. لذلك ، إذا قمت بإعادة تشغيل تطبيق المنطق ، تشغيل المشغلات لجميع العناصر غير المعالجة منذ التشغيل الأخير.

    لإيقاف تشغيل مشغل على العناصر غير المعالجة منذ آخر تشغيل، قم بمسح حالة المشغل قبل إعادة تشغيل تطبيق المنطق:

    1. في Visual Studio Code، على شريط الأدوات الأيمن، حدد أيقونة Azure.
    2. في جزء Azure: Logic Apps (قياسي)، قم بتوسيع اشتراكك، الذي يعرض جميع التطبيقات المنطقية المنشورة لهذا الاشتراك.
    3. قم بتوسيع تطبيق المنطق الخاص بك، ثم قم بتوسيع العقدة التي تسمى مهام سير العمل.
    4. افتح سير عمل، وقم بتحرير أي جزء من مشغل سير العمل هذا.
    5. حفظ التغييرات. تقوم هذه الخطوة بإعادة تعيين الحالة الحالية للمشغل.
    6. كرر ذلك لكل سير عمل.
    7. عند الانتهاء، أعد تشغيل تطبيق المنطق.

اعتبارات لحذف التطبيقات المنطقية

يؤثر حذف تطبيق منطق على مثيلات سير العمل بالطرق التالية:

  • تقوم Azure Logic Apps بإلغاء عمليات التشغيل قيد التقدم والتشغيل المعلقة على الفور، ولكنها لا تقوم بتشغيل مهام التنظيف على مساحة التخزين التي يستخدمها التطبيق.

  • لا تقوم Azure Logic Apps بإنشاء مثيلات سير عمل جديدة أو تشغيلها.

  • إذا قمت بحذف سير عمل ثم أعدت إنشاء نفس سير العمل، فلن يكون لسير العمل المعاد إنشاؤه نفس بيانات التعريف مثل سير العمل المحذوف. لتحديث بيانات التعريف، يجب عليك إعادة حفظ أي سير عمل يسمى سير العمل المحذوف. بهذه الطريقة، يحصل المتصل على المعلومات الصحيحة لسير العمل المعاد إنشاؤه. وإلا، تتعذر الاستدعاءات لسير العمل المعاد إنشاؤه مع وجود خطأ Unauthorized. ينطبق هذا السلوك أيضًا على مهام سير العمل التي تستخدم النتائج الواردة في حسابات التكامل وسير العمل التي تستدعي وظائف Azure.

إدارة التطبيقات المنطقية المنشورة في البوابة الإلكترونية

بعد نشر تطبيق منطقي على مدخل Azure من Visual Studio Code، يمكنك عرض كافة التطبيقات المنطقية المنشورة الموجودة في اشتراكك في Azure، سواء كانت نوع مورد Logic Apps الأصلي أو نوع مورد Logic App (قياسي). حاليا، يتم تنظيم كل نوع من أنواع الموارد وإدارتها كفئات منفصلة في Azure. للبحث عن التطبيقات المنطقية التي تحتوي على نوع مورد التطبيق المنطقي (قياسي)، اتبع الخطوات التالية:

  1. في مربع البحث في مدخل Azure، أدخل logic apps. عند ظهور قائمة النتائج، ضمن الخدمات، حدد التطبيقات المنطقية.

    Screenshot that shows the Azure portal search box with the

  2. في جزء تطبيق المنطق (قياسي)، حدد التطبيق المنطقي الذي قمت بنشره من Visual Studio Code.

    Screenshot that shows the Azure portal and the Logic App (Standard) resources deployed in Azure.

    تفتح بوابة Azure صفحة الموارد الفردية لتطبيق المنطق المحدد.

    Screenshot that shows your logic app workflow's resource page in the Azure portal.

  3. لعرض مهام سير العمل في هذا التطبيق المنطقي، من قائمة التطبيق المنطقي، حدد مهام سير العمل.

    يعرض جزء مهام سير العمل كافة مهام سير العمل في تطبيق المنطق الحالي. يوضح هذا المثال سير العمل الذي قمت بإنشائه في التعليمات البرمجية Visual Studio.

    Screenshot that shows a

  4. لعرض سير عمل، في جزء مهام سير العمل، حدد سير العمل هذا.

    يفتح جزء سير العمل ويعرض المزيد من المعلومات والمهام التي يمكنك تنفيذها على سير العمل هذا.

    على سبيل المثال، لعرض الخطوات في سير العمل، حدد مصمم.

    Screenshot that shows the selected workflow's

    يفتح مصمم سير العمل ويعرض سير العمل الذي قمت بإنشائه Visual Studio Code. يمكنك الآن إجراء تغييرات على سير العمل هذا في مدخل Azure.

    Screenshot that shows the workflow designer and workflow deployed from Visual Studio Code.

إضافة سير عمل آخر في البوابة الإلكترونية

من خلال مدخل Azure، يمكنك إضافة مهام سير عمل فارغة إلى مورد تطبيق منطقي (قياسي) قمت بنشره من التعليمات البرمجية Visual Studio وإنشاء مهام سير العمل هذه في مدخل Azure.

  1. في مدخل Azure، حدد مورد تطبيق المنطق (القياسي) الذي تم نشره .

  2. من قائمة التطبيق المنطقي، حدد مهام سير العمل. في جزء مهام سير العمل ، حدد إضافة.

    Screenshot that shows the selected logic app's

  3. في جزء سير عمل جديد ، قم بتوفير اسم سير العمل. حدد إما الدولة أو عديميالجنسيةإنشاء>.

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

    Screenshot that shows the selected workflow with management and review options.

    على سبيل المثال، يؤدي فتح المصمم لسير عمل جديد إلى إظهار لوحة قماشية فارغة. يمكنك الآن إنشاء سير العمل هذا في مدخل Azure.

    Screenshot that shows the workflow designer and a blank workflow.

تمكين محفوظات التشغيل لمهام سير العمل عديمة الجنسية

لتصحيح أخطاء سير عمل عديم الجنسية بسهولة أكبر، يمكنك تمكين محفوظات التشغيل لسير العمل هذا، ثم تعطيل محفوظات التشغيل عند الانتهاء. اتبع هذه الخطوات للحصول على التعليمات البرمجية Visual Studio، أو إذا كنت تعمل في مدخل Azure، فراجع إنشاء مهام سير عمل مستندة إلى مستأجر واحد في مدخل Azure.

  1. في مشروع التعليمات البرمجية Visual Studio، قم بتوسيع المجلد المسمى وقت تصميم سير العمل، وافتح الملف local.settings.json.

  2. أضف الخاصية Workflows.{yourWorkflowName}.operationOptions وقم بتعيين القيمة إلى WithStatelessRunHistory، على سبيل المثال:

    Windows

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "UseDevelopmentStorage=true",
          "FUNCTIONS_WORKER_RUNTIME": "dotnet",
          "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory"
       }
    }
    

    macOS أو Linux

    {
       "IsEncrypted": false,
       "Values": {
          "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=fabrikamstorageacct; \
              AccountKey=<access-key>;EndpointSuffix=core.windows.net",
          "FUNCTIONS_WORKER_RUNTIME": "dotnet",
          "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory"
       }
    }
    
  3. لتعطيل محفوظات التشغيل عند الانتهاء، قم إما بتعيين Workflows.{yourWorkflowName}.OperationOptionsالخاصية إلى None، أو احذف الخاصية وقيمتها.

تمكين طريقة عرض المراقبة في مدخل Azure

بعد نشر مورد تطبيق منطقي (قياسي) من Visual Studio Code إلى Azure، يمكنك مراجعة أي محفوظات تشغيل متوفرة وتفاصيل لسير عمل في هذا المورد باستخدام مدخل Azure وتجربة "مراقبة" لسير العمل هذا. ومع ذلك ، يجب عليك أولا تمكين إمكانية عرض الشاشة على مورد التطبيق المنطقي هذا.

  1. في مدخل Azure، حدد مورد تطبيق المنطق (القياسي) المنشور .

  2. في قائمة هذا المورد، ضمن واجهة برمجة التطبيقات، حدد CORS.

  3. في جزء CORS ، ضمن الأصول المسموح بها، أضف حرف البدل (*).

  4. عند الانتهاء، على شريط أدوات CORS ، حدد حفظ.

    Screenshot that shows the Azure portal with a deployed Logic App (Standard) resource. On the resource menu,

تمكين Insights التطبيق أو فتحها بعد النشر

أثناء تنفيذ سير العمل، يصدر تطبيقك المنطقي القياس عن بعد إلى جانب الأحداث الأخرى. يمكنك استخدام هذا القياس عن بعد للحصول على رؤية أفضل لمدى جودة سير العمل وكيفية عمل وقت تشغيل التطبيقات المنطقية بطرق مختلفة. يمكنك مراقبة سير العمل باستخدام Insights التطبيق، الذي يوفر القياس عن بعد في الوقت الفعلي تقريبا (المقاييس المباشرة). يمكن أن تساعدك هذه الإمكانية في التحقيق في حالات الفشل ومشاكل الأداء بسهولة أكبر عند استخدام هذه البيانات لتشخيص المشكلات وإعداد التنبيهات وإنشاء المخططات.

إذا كانت إعدادات إنشاء التطبيق المنطقي ونشره تدعم استخدام التطبيق Insights، فيمكنك اختياريا تمكين تسجيل التشخيصات وتتبعها لتطبيقك المنطقي. يمكنك القيام بذلك إما عند نشر تطبيقك المنطقي من التعليمات البرمجية Visual Studio أو بعد النشر. يجب أن يكون لديك تطبيق Insights المثال، ولكن يمكنك إنشاء هذا المورد إما مقدما أو عند نشر تطبيقك المنطقي أو بعد النشر.

لتمكين Insights التطبيق على تطبيق منطقي تم نشره أو لمراجعة بيانات Insights التطبيق عند تمكينه بالفعل، اتبع الخطوات التالية:

  1. في مدخل Azure، ابحث عن تطبيق المنطق المنشور.

  2. من القائمة تطبيق المنطق، ضمن الإعدادات، حدد التطبيق Insights.

  3. إذا لم يتم تمكين Insights التطبيق، في جزء Insights التطبيق، حدد تشغيل التطبيق Insights. بعد تحديثات الجزء، في الأسفل، حدد تطبيق.

    إذا تم تمكين Insights التطبيق، في جزء Insights التطبيق، حدد عرض بيانات Insights التطبيق.

بعد فتح Insights التطبيق، يمكنك مراجعة مقاييس مختلفة لتطبيقك المنطقي. لمزيد من المعلومات، راجع هذه الموضوعات:

حذف العناصر من المصمم

لحذف عنصر في سير العمل من المصمم، اتبع أي من الخطوات التالية:

  • حدد العنصر، وافتح القائمة المختصرة للعنصر (Shift+F10)، وحدد حذف. للتأكيد، حدد «OK».

  • حدد العنصر، ثم اضغط على مفتاح الحذف. للتأكيد، حدد «OK».

  • حدد العنصر بحيث يتم فتح جزء التفاصيل لهذا العنصر. في الزاوية العلوية اليسرى من الجزء، افتح قائمة علامات الحذف (...وحدد حذف. للتأكيد، حدد «OK».

    Screenshot that shows a selected item on designer with the opened details pane plus the selected ellipses button and

    تلميح

    إذا لم تكن قائمة علامات الحذف مرئية، فقم بتوسيع نافذة التعليمات البرمجية Visual Studio بعرض كاف بحيث يعرض جزء التفاصيل زر علامات الحذف (...) في الزاوية العلوية اليسرى.

استكشاف الأخطاء والمشاكل وإصلاحها

فشل المصمم في الفتح

عند محاولة فتح المصمم، تحصل على هذا الخطأ، "تعذر بدء تشغيل وقت تصميم سير العمل". إذا حاولت مسبقا فتح المصمم، ثم أوقفت مشروعك أو حذفته، فقد لا يتم تنزيل حزمة الملحقات بشكل صحيح. للتحقق مما إذا كان هذا السبب هو المشكلة، اتبع الخطوات التالية:

  1. في Visual Studio Code، افتح نافذة الإخراج. من القائمة عرض ، حدد الإخراج.

  2. من القائمة الموجودة في شريط عنوان نافذة الإخراج، حدد Azure Logic Apps (قياسي) بحيث يمكنك مراجعة المخرجات من الملحق، على سبيل المثال:

    Screenshot that shows the Output window with

  3. راجع الإخراج وتحقق مما إذا كانت رسالة الخطأ هذه تظهر أم لا:

    A host error has occurred during startup operation '{operationID}'.
    System.Private.CoreLib: The file 'C:\Users\{userName}\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{your-username}\AppData\Local\Temp\Functions\ExtensionBundles، ثم أعد محاولة فتح الملف workflow.json في المصمم.

المشغلات والإجراءات الجديدة مفقودة من منتقي المصمم لمهام سير العمل التي تم إنشاؤها مسبقا

تدعم تطبيقات Azure Logic ذات المستأجر الواحد الإجراءات المضمنة لعمليات وظائف Azure والعمليات السائلة وعمليات XML، مثل التحقق من صحة XML وتحويل XML. ومع ذلك، بالنسبة للتطبيقات المنطقية التي تم إنشاؤها مسبقا، قد لا تظهر هذه الإجراءات في منتقي المصمم لتتمكن من تحديد ما إذا كان Visual Studio Code يستخدم إصدارا قديما من حزمة الملحقات، Microsoft.Azure.Functions.ExtensionBundle.Workflows.

أيضا، لا يظهر موصل عمليات وظائف Azure والإجراءات في منتقي المصمم إلا إذا قمت بتمكين أو تحديد استخدام الموصلات من Azure عند إنشاء تطبيقك المنطقي. إذا لم تقم بتمكين الموصلات التي تم نشرها بواسطة Azure في وقت إنشاء التطبيق، فيمكنك تمكينها من مشروعك في Visual Studio Code. افتح القائمة المختصرة workflow.json ، وحدد استخدام الموصلات من Azure.

لإصلاح الحزمة القديمة، اتبع هذه الخطوات لحذف الحزمة القديمة، مما يجعل رمز Visual Studio يقوم تلقائيا بتحديث حزمة الإضافة إلى أحدث إصدار.

ملاحظة

ينطبق هذا الحل فقط على التطبيقات المنطقية التي تقوم بإنشائها ونشرها باستخدام التعليمات البرمجية Visual Studio باستخدام ملحق Azure Logic Apps (قياسي)، وليس التطبيقات المنطقية التي قمت بإنشائها باستخدام مدخل Azure. راجع المشغلات والإجراءات المدعومة مفقودة من المصمم في مدخل Azure.

  1. احفظ أي عمل لا تريد أن تخسره، وأغلق Visual Studio.

  2. على جهاز الكمبيوتر الخاص بك، استعرض وصولا إلى المجلد التالي، الذي يحتوي على مجلدات تم إصدار إصدارها للحزمة الموجودة:

    ...\Users\{your-username}\.azure-functions-core-tools\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows

  3. احذف مجلد الإصدار للحزمة السابقة، على سبيل المثال، إذا كان لديك مجلد للإصدار 1.1.3، فاحذف هذا المجلد.

  4. الآن ، استعرض للوصول إلى المجلد التالي ، والذي يحتوي على مجلدات تم إصدارها لحزمة NuGet المطلوبة:

    ...\Users\{your-username}\.nuget\packages\microsoft.azure.workflows.webjobs.extension

  5. حذف مجلد الإصدار للحزمة السابقة.

  6. أعد فتح Visual Studio التعليمات البرمجية ومشروعك وملف workflow.json في المصمم.

تظهر المشغلات والإجراءات المفقودة الآن في المصمم.

يظهر "400 طلب غير صالح" على مشغل أو إجراء

عند فشل تشغيل، وفحص التشغيل في طريقة عرض المراقبة، قد يظهر هذا الخطأ على مشغل أو إجراء له اسم أطول، مما يؤدي إلى تجاوز معرف الموارد الموحد الأساسي (URI) الحد الافتراضي للأحرف.

لحل هذه المشكلة وضبط عنوان URI الأطول، قم بتحرير UrlSegmentMaxCount المفاتيح ومفاتيح UrlSegmentMaxLength التسجيل على جهاز الكمبيوتر الخاص بك باتباع الخطوات أدناه. يتم وصف القيم الافتراضية لهذا المفتاح في هذا الموضوع، Http.sys إعدادات التسجيل Windows.

هام

قبل البدء، تأكد من حفظ عملك. يتطلب منك هذا الحل إعادة تشغيل الكمبيوتر بعد الانتهاء من ذلك حتى تصبح التغييرات سارية المفعول.

  1. على جهاز الكمبيوتر الخاص بك، افتح النافذة تشغيل ، وقم بتشغيل regedit الأمر، الذي يفتح محرر التسجيل.

  2. في المربع التحكم في حساب المستخدم ، حدد نعم للسماح بإجراء تغييرات على الكمبيوتر.

  3. في الجزء الأيمن، ضمن الكمبيوتر، قم بتوسيع العقد على طول المسار، HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters، ثم حدد المعلمات.

  4. في الجزء الأيسر، ابحث عن UrlSegmentMaxCount مفاتيح التسجيل ومفتاحيها UrlSegmentMaxLength .

  5. قم بزيادة هذه القيم الأساسية بما فيه الكفاية بحيث يمكن لعناوين URI استيعاب الأسماء التي تريد استخدامها. في حالة عدم وجود هذه المفاتيح، قم بإضافتها إلى مجلد " المعلمات" باتباع الخطوات التالية:

    1. من القائمة المختصرة المعلمات، حدد قيمة NewDWORD>(32 بت).

    2. في مربع التحرير الذي يظهر، أدخل UrlSegmentMaxCount كاسم المفتاح الجديد.

    3. افتح القائمة المختصرة للمفتاح الجديد، وحدد تعديل.

    4. في المربع تحرير سلسلة الذي يظهر، أدخل قيمة مفتاح بيانات القيمة التي تريدها بتنسيق سداسي عشري أو عشري. على سبيل المثال ، 400 في السداسي عشري يعادل 1024 في عشري.

    5. لإضافة قيمة المفتاح، كرر هذه الخطوات UrlSegmentMaxLength .

    بعد زيادة أو إضافة هذه القيم الرئيسية، يبدو محرر التسجيل مثل هذا المثال:

    Screenshot that shows the registry editor.

  6. عندما تكون مستعدا، أعد تشغيل الكمبيوتر حتى تصبح التغييرات سارية المفعول.

فشل بدء جلسة تصحيح الأخطاء

عند محاولة بدء جلسة عمل تصحيح الأخطاء، تحصل على الخطأ، "خطأ موجود بعد تشغيل preLaunchTask 'generateDebugSymbols'". لحل هذه المشكلة، قم بتحرير الملف tasks.json في المشروع لتخطي إنشاء الرموز.

  1. في مشروعك، قم بتوسيع المجلد المسمى .vscode، وافتح الملف tasks.json.

  2. في المهمة التالية، احذف السطر، "dependsOn: "generateDebugSymbols"إلى جانب الفاصلة التي تنهي السطر السابق، على سبيل المثال:

    ‏‏قبل:

     {
       "type": "func",
       "command": "host start",
       "problemMatcher": "$func-watch",
       "isBackground": true,
       "dependsOn": "generateDebugSymbols"
     }
    

    بعد:

     {
       "type": "func",
       "command": "host start",
       "problemMatcher": "$func-watch",
       "isBackground": true
     }
    

الخطوات التالية

نود أن نسمع منك عن تجاربك مع ملحق Azure Logic Apps (قياسي)!