إنشاء المهام ومهام سير العمل المتكررة وجدولتها وتشغيلها باستخدام مشغل التكرار في تطبيقات Azure Logic

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

فيما يلي بعض الأنماط التي يدعمها هذا المشغل إلى جانب التكرارات الأكثر تقدما والجداول الزمنية المعقدة:

  • اركض على الفور وكرر كل عدد n من الثواني أو الدقائق أو الساعات أو الأيام أو الأسابيع أو الشهور.

  • ابدأ في تاريخ ووقت محددين، ثم قم بالتشغيل والتكرار كل عدد n من الثواني أو الدقائق أو الساعات أو الأيام أو الأسابيع أو الشهور.

  • قم بالجري والتكرار مرة واحدة أو أكثر كل يوم ، على سبيل المثال ، في الساعة 8:00 صباحا و 5:00 مساء.

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

  • قم بالجري والتكرار كل أسبوع ، ولكن فقط لأيام وأوقات محددة ، مثل من الاثنين إلى الجمعة في الساعة 8:00 صباحا و 5:00 مساء.

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

تلميح

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

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

إضافة مشغل التكرار

  1. تسجيل الدخول إلى ⁧مدخل Microsoft Azure⁧. قم بإنشاء تطبيق Logic فارغ.

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

    Select

  3. اضبط الفاصل الزمني والتردد للتكرار. في هذا المثال، قم بتعيين هذه الخصائص لتشغيل سير العمل كل أسبوع.

    Set interval and frequency

    الخاصية اسم JSON مطلوب النوع الوصف
    الفاصل interval نعم عدد صحيح عدد صحيح موجب يصف عدد مرات تشغيل سير العمل استنادا إلى التردد. فيما يلي الحد الأدنى والحد الأقصى للفواصل الزمنية:

    - الشهر: 1-16 شهرا
    - الأسبوع: 1-71 أسابيع
    - اليوم: 1-500 يوم
    - الساعات: 1-12,000 ساعة
    - الدقيقة: 1-72,000 دقيقة
    - الثانية: 1-9,999,999 ثانية

    على سبيل المثال ، إذا كان الفاصل الزمني هو 6 ، وكان التردد هو "شهر" ، فإن التكرار يكون كل 6 أشهر.

    التكرار frequency نعم سلسلة وحدة الوقت للتكرار: الثانية أو الدقيقة أو الساعة أواليوم أو الأسبوعأوالشهر

    هام

    إذا كنت تستخدم تكرار اليوم أو الأسبوع وتحدد تاريخا ووقتا مستقبليين، فتأكد من إعداد التكرار مسبقا:

    • اليوم: قم بإعداد التكرار اليومي قبل 24 ساعة على الأقل.

    • الأسبوع: قم بإعداد التكرار الأسبوعي قبل 7 أيام على الأقل.

    وإلا، فقد يتخطى سير العمل التكرار الأول.

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

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

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

    • استخدم مشغل النافذة المنزلقة، بدلا من مشغل التكرار.

  4. لتعيين خيارات جدولة متقدمة، افتح القائمة إضافة معلمات جديدة . تظهر أي خيارات تحددها على المشغل بعد التحديد.

    Advanced scheduling options

    الخاصية اسم JSON مطلوب النوع الوصف
    المنطقة الزمنية timeZone لا سلسلة ينطبق فقط عند تحديد وقت بدء لأن هذا المشغل لا يقبل إزاحة UTC. حدد المنطقة الزمنية التي تريد تطبيقها.
    وقت البدء startTime لا سلسلة قم بتوفير تاريخ ووقت البدء، الذي يبلغ الحد الأقصى 49 عاما في المستقبل ويجب أن يتبع مواصفات وقت التاريخ ISO 8601بتنسيق وقت تاريخ UTC، ولكن بدون إزاحة UTC:

    YYYY-MM-DDThh:mm:ss إذا قمت بتحديد منطقة زمنية

    -أو-

    YYYY-MM-DDThh:mm:ssZ إذا لم تحدد منطقة زمنية

    لذلك ، على سبيل المثال ، إذا كنت تريد 18 سبتمبر 2020 في الساعة 2:00 مساء ، فحدد "2020-09-18T14:00:00" وحدد منطقة زمنية مثل توقيت المحيط الهادئ الرسمي. أو حدد "2020-09-18T14:00:00Z" بدون منطقة زمنية.

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

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

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

    على سبيل المثال، إذا قمت بتحديد "10" و"12" و"14"، فستحصل على 10 صباحا و12 ظهرا و2 ظهرا لساعات اليوم، ولكن يتم حساب دقائق اليوم بناء على وقت بدء التكرار. لتعيين دقائق معينة من اليوم، على سبيل المثال، 10:00 صباحا و12:00 ظهرا و2:00 مساء، حدد هذه القيم باستخدام الخاصية المسماة في هذه الدقائق.

    في هذه الدقائق minutes لا صفيف عدد صحيح أو عدد صحيح إذا قمت بتحديد "يوم" أو "أسبوع"، فيمكنك تحديد عدد صحيح واحد أو أكثر من 0 إلى 59 كدقائق الساعة عندما تريد تشغيل سير العمل.

    على سبيل المثال، يمكنك تحديد "30" كعلامة دقيقة واستخدام المثال السابق لساعات اليوم، تحصل على 10:30 صباحا و 12:30 ظهرا و 2:30 مساء.

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

    على سبيل المثال ، لنفترض أن اليوم هو الجمعة 4 سبتمبر 2020. لا يتم تشغيل مشغل التكرار التالي في وقت أقرب من تاريخ ووقت البدء ، وهو الجمعة 18 سبتمبر 2020 في الساعة 8:00 صباحا بتوقيت المحيط الهادي. ومع ذلك ، يتم تعيين جدول التكرار في الساعة 10:30 صباحا و 12:30 ظهرا و 2:30 مساء يوم الاثنين فقط. لذا فإن المرة الأولى التي يتم فيها تشغيل المشغل وإنشاء مثيل سير عمل تطبيق منطقي هي يوم الاثنين في الساعة 10:30 صباحا. لمعرفة المزيد حول كيفية عمل أوقات البدء، راجع أمثلة وقت البدء هذه.

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

    Advanced scheduling example

    ملاحظة

    يعرض المشغل معاينة للتكرار المحدد فقط عند تحديد "يوم" أو "أسبوع" كتردد.

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

تعريف سير العمل - التكرار

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

يوضح هذا المثال كيف قد يبدو تعريف مشغل التكرار في تعريف سير عمل أساسي:

"triggers": {
   "Recurrence": {
      "type": "Recurrence",
      "recurrence": {
         "frequency": "Week",
         "interval": 1,
         "schedule": {
            "hours": [
               10,
               12,
               14
            ],
            "minutes": [
               30
            ],
            "weekDays": [
               "Monday"
            ]
         },
         "startTime": "2020-09-07T14:00:00Z",
         "timeZone": "Pacific Standard Time"
      }
   }
}

يوضح المثال التالي كيفية تحديث تعريف المشغل بحيث يتم تشغيل المشغل مرة واحدة فقط في اليوم الأخير من كل شهر:

"triggers": {
    "Recurrence": {
        "recurrence": {
            "frequency": "Month",
            "interval": 1,
            "schedule": {
                "monthDays": [-1]
            }
        },
        "type": "Recurrence"
    }
}

تحول تكرار الزناد والانجراف (التوقيت الصيفي)

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

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

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