جدولة وتشغيل مهام سير العمل المتكررة باستخدام مشغل التكرار في Azure Logic Apps
ينطبق على: Azure Logic Apps (الاستهلاك + قياسي)
لبدء سير العمل وتشغيله على جدول زمني، يمكنك استخدام مشغل التكرار العام كخطوة أولى. يمكنك تعيين تاريخ ووقت ومنطقة زمنية لبدء سير العمل وتكرار لتكرار سير العمل هذا. تتضمن القائمة التالية بعض الأنماط التي يدعمها هذا المشغل جنبا إلى جنب مع التكرارات الأكثر تقدما والجدول الزمني المعقد:
قم بتشغيل في تاريخ ووقت محددين، ثم كرر كل عدد n من الثوان أو الدقائق أو الساعات أو الأيام أو الأسابيع أو الأشهر.
قم بتشغيل فورا وكرر كل عدد n من الثوان أو الدقائق أو الساعات أو الأيام أو الأسابيع أو الأشهر.
قم بتشغيل فورا وكرر يوميا في مرة واحدة أو أكثر من الأوقات المحددة، مثل 8:00 صباحا و5:00 مساء.
قم بتشغيل فورا وكرر العمل أسبوعيا في أيام محددة، مثل السبت والأحد.
قم بتشغيل فورا وكرر العمل أسبوعيا في أيام وأوقات محددة، مثل الاثنين إلى الجمعة في الساعة 8:00 صباحا و5:00 مساء.
إشعار
تتوفر خيارات الجدولة المتقدمة، مثل في هذه الساعات وفي هذه الأيام، وتعمل فقط مع مشغلات الاستقصاء المضمنة، مثل مشغلات التكرار والنافذة المنزلقة، والتي تعمل مباشرة مع وقت تشغيل Azure Logic Apps. بالنسبة للموصلات التي تديرها Microsoft وتستضيفها وتشغلها في Azure، تحسب مشغلات الاستقصاء التكرار التالي باستخدام قيم الفاصل الزمني والتكرار فقط، وليس خيارات الجدولة المتقدمة.
لا يرتبط مشغل التكرار بأي خدمة معينة، لذلك يمكنك استخدام المشغل مع أي سير عمل تقريبا، مثل مهام سير عمل تطبيق منطق الاستهلاك ومهام سير العمل ذات الحالة لتطبيق المنطق القياسي. هذا المشغل غير متوفر حاليا لسير عمل تطبيق المنطق القياسي عديم الحالة.
مشغل التكرار هو جزء من موصل الجدول المضمن ويعمل أصلا في وقت تشغيل Azure Logic Apps. لمزيد من المعلومات حول مشغلات وإجراءات الجدول المضمنة، راجع جدولة وتشغيل المهام ومهام سير العمل التلقائية المتكررة مع Azure Logic Apps.
المتطلبات الأساسية
حساب واشتراك Azure. إذا لم يكن لديك اشتراك، فيجب التسجيل للحصول على حساب Azure مجاني.
مورد Consumption أو Standard logic app مع سير عمل فارغ.
إشعار
إذا قمت بإنشاء سير عمل تطبيق منطقي قياسي، فتأكد من إنشاء سير عمل ذي حالة. مشغل التكرار غير متوفر حاليا لسير العمل عديم الحالة.
إضافة مشغل التكرار
استنادا إلى ما إذا كان سير العمل الخاص بك هو Consumption أو Standard، اتبع الخطوات المقابلة:
في مدخل Microsoft Azure، افتح مورد تطبيق المنطق وسير العمل الفارغ.
اتبع هذه الخطوات العامة لإضافة مشغل الجدولة المضمن المسمى التكرار.
تعيين الفاصل الزمني والتكرار للتكرار. في هذا المثال، قم بتعيين هذه الخصائص لتشغيل سير العمل كل أسبوع، على سبيل المثال:
الخاصية اسم JSON المطلوب نوع الوصف الفترة interval
نعم رقم صحيح عدد صحيح موجب يصف عدد مرات تشغيل سير العمل استنادا إلى التردد. فيما يلي الحد الأدنى والحد الأقصى للفواصل الزمنية:
- الشهر: 1-16 شهرا
- الأسبوع: 1-71 أسبوعا
- اليوم: 1-500 يوم
- الساعة: 1-12,000 ساعة
- دقيقة: 1-72000 دقيقة
- الثانية: 1-9999999 ثانية
على سبيل المثال، إذا كان الفاصل الزمني هو 6، والتكرار هو "شهر"، فإن التكرار يكون كل 6 أشهر.التردد frequency
نعم السلسلة وحدة وقت التكرار: الثانية أو الدقيقة أو الساعة أو اليوم أو الأسبوع أو الشهر
هام: إذا حددت تكرار اليوم أو الأسبوع أو الشهر، وقمت بتحديد تاريخ ووقت بدء مستقبلي، فتأكد من إعداد التكرار مسبقا. وإلا، فقد يتخطى سير العمل التكرار الأول.
- Day: قم بإعداد التكرار اليومي قبل 24 ساعة على الأقل.
- Week: قم بإعداد التكرار الأسبوعي قبل 7 أيام على الأقل.
- Month: قم بإعداد التكرار الشهري قبل شهر واحد على الأقل.راجع الاعتبارات التالية عند استخدام مشغل التكرار :
إذا لم تحدد تاريخ بدء ووقتا محددين، يتم تشغيل التكرار الأول على الفور عند حفظ سير العمل أو نشر مورد تطبيق المنطق، على الرغم من إعداد تكرار المشغل. لتجنب هذا السلوك، قم بتوفير تاريخ ووقت بدء التشغيل للوقت الذي تريد تشغيل التكرار الأول فيه.
إذا لم تحدد أي خيارات جدولة متقدمة أخرى، مثل أوقات محددة لتشغيل التكرارات المستقبلية، فإن هذه التكرارات تستند إلى وقت التشغيل الأخير. ونتيجة لذلك، قد تنجرف أوقات بدء تلك التكرارات بسبب عوامل مثل زمن الانتقال أثناء استدعاءات التخزين.
للتأكد من أن سير العمل الخاص بك لا يفوته تكرار، خاصة عندما يكون التكرار في أيام أو أكثر، جرب الخيارات التالية:
توفير تاريخ ووقت بدء التكرار والأوقات المحددة لتشغيل التكرارات اللاحقة. يمكنك استخدام الخصائص المسماة في هذه الساعات وفي هذه الدقائق، والتي تتوفر فقط لترددات اليوم والأسبوع.
بالنسبة إلى مهام سير عمل تطبيق منطق الاستهلاك، استخدم مشغل النافذة المنزلقة، بدلا من مشغل التكرار .
إذا قمت بنشر سير عمل استهلاك معطل يحتوي على مشغل تكرار باستخدام قالب ARM، يتم تشغيل المشغل على الفور عند تمكين سير العمل ما لم تقم بتعيين معلمة وقت البدء قبل النشر.
لتعيين خيارات الجدولة المتقدمة، افتح قائمة إضافة معلمات جديدة. تظهر أي خيارات تحددها على المشغل بعد التحديد.
الخاصية اسم JSON المطلوب نوع الوصف المنطقة الزمنية timeZone
لا السلسلة يسري فقط عندما تحدد وقت بدء لأن هذا المشغل لا يقبل تعويض التوقيت العالمي المتفق عليه. حدد المنطقة الزمنية التي تريد تطبيقها. لمزيد من المعلومات، راجع المناطق الزمنية الافتراضية. وقت البدء 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 مساءً.
ملاحظة: في بعض الأحيان، قد يختلف الطابع الزمني للتشغيل المشغل لمدة تصل إلى دقيقة واحدة من الوقت المجدول. إذا كنت بحاجة إلى تمرير الطابع الزمني تماما كما هو مجدول للإجراءات اللاحقة، يمكنك استخدام تعبيرات القالب لتغيير الطابع الزمني وفقا لذلك. لمزيد من المعلومات، راجع دالات التاريخ والوقت للتعبيرات.على سبيل المثال، افترض أن اليوم هو الجمعة، 4 سبتمبر 2020. لا يتم تشغيل مشغل التكرار التالي في وقت أقرب من تاريخ ووقت البدء المحددين، وهو الجمعة 18 سبتمبر 2020 في الساعة 8:00 صباحا بتوقيت المحيط الهادئ. ومع ذلك، يتم تعيين جدول التكرار للساعة 10:30 صباحا و12:30 مساء و2:30 مساء يوم الاثنين فقط. في المرة الأولى التي يتم فيها تشغيل المشغل وإنشاء مثيل سير عمل في يوم الاثنين الساعة 10:30 صباحا. لمعرفة المزيد حول كيفية عمل أوقات البدء، راجع أمثلة وقت البدء هذه.
تحدث عمليات التشغيل المستقبلية في الساعة 12:30 مساء و2:30 مساء في نفس اليوم. ينشئ كل تكرار مثيل سير العمل الخاص به. بعد ذلك، يتكرر الجدول الزمني بأكمله مرة أخرى يوم الاثنين القادم. ما هي بعض الأمثلة الأخرى على التكرارات؟
إشعار
يعرض المشغل معاينة للتكرار المحدد فقط عند تحديد اليوم أو الأسبوع كتكرار.
الآن تابع إنشاء سير العمل الخاص بك مع إجراءات أخرى.
تعريف سير العمل - التكرار
يمكنك عرض كيفية ظهور تعريف مشغل التكرار مع الخيارات التي اخترتها من خلال مراجعة تعريف JSON الأساسي لسير العمل الخاص بك في تطبيقات منطق الاستهلاك وتطبيقات المنطق القياسية (ذات الحالة فقط).
استنادا إلى ما إذا كان تطبيق المنطق الخاص بك هو Consumption أو Standard، اختر أحد الخيارات التالية:
الاستهلاك: في شريط أدوات المصمم، حدد طريقة عرض التعليمات البرمجية. للعودة إلى المصمم، في شريط أدوات محرر عرض التعليمات البرمجية، حدد Designer.
قياسي: في قائمة سير العمل، حدد طريقة عرض التعليمات البرمجية. للعودة إلى المصمم، في قائمة سير العمل، حدد Designer.
يوضح المثال التالي كيف قد يظهر تعريف مشغل التكرار في تعريف 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"
}
}
}
إشعار
في تعريف مشغل التكرار، evaluatedRecurrence
تظهر الخاصية مع الخاصية recurrence
عند ظهور أي تعبير أو مرجع معلمة في معايير التكرار. تمثل هذه evaluatedRecurrence
الخاصية القيم التي تم تقييمها من التعبير أو مرجع المعلمة. إذا لم تحدد معايير التكرار أي تعبيرات أو مراجع معلمات، evaluatedRecurrence
فإن الخاصيتين و recurrence
متماثلتين.
يوضح المثال التالي كيفية تحديث تعريف المشغل بحيث يتم تشغيل المشغل مرة واحدة فقط في اليوم الأخير من كل شهر:
"triggers": {
"Recurrence": {
"recurrence": {
"frequency": "Month",
"interval": 1,
"schedule": {
"monthDays": [-1]
}
},
"type": "Recurrence"
}
}
تشغيل مرة واحدة فقط
لتشغيل سير العمل الخاص بك في وقت واحد فقط في المستقبل، يمكنك تطبيق Scheduler: تشغيل قالب سير عمل المهام مرة واحدة، والذي يتوفر فقط لسير عمل تطبيق منطق الاستهلاك. يستخدم هذا القالب مشغل الطلب وإجراء HTTP ، بدلا من مشغل التكرار ، الذي لا يدعم نمط التكرار هذا.
في المصمم، افتح سير العمل الفارغ. في شريط أدوات المصمم، حدد Enable Legacy Designer.
في شريط أدوات المصمم، حدد Templates.
في الصفحة التي يتم فتحها، قم بالتمرير بعد الفيديو إلى قسم Templates.
من قائمة Category، حدد Schedule، ثم حدد القالب التالي:
في شريط أدوات المصمم، حدد مصمم متوفر بشكل عام.
اتبع هذه الخطوات العامة لإضافة الإجراء Schedule المسمى Delay until، وتوفير الوقت لوقت بدء تشغيل الإجراء التالي.
أو يمكنك بدء سير العمل باستخدام مشغل الطلب المسمى عند تلقي طلب HTTP، وتمرير وقت البدء كمعلمة للمشغل.
تشغيل مرة واحدة في اليوم الأخير من الشهر
لهذه المهمة، يجب تحرير مشغل التكرار في تعريف JSON الأساسي لسير العمل باستخدام طريقة عرض التعليمات البرمجية، وليس المصمم، باستخدام المثال التالي:
"triggers": {
"Recurrence": {
"recurrence": {
"frequency": "Month",
"interval": 1,
"schedule": {
"monthDays": [-1]
}
},
"type": "Recurrence"
}
}
تشغيل إزاحة التكرار والانحراف (التوقيت الصيفي)
لجدولة المهام، تضع Azure Logic Apps الرسالة للمعالجة في قائمة الانتظار وتحدد وقت توفر هذه الرسالة، استناداً إلى وقت UTC عند تشغيل الوظيفة الأخيرة ووقت UTC عند جدولة المهمة التالية للتشغيل. إذا قمت بتحديد وقت بدء بالتكرار، فتأكد من تحديد منطقة زمنية حتى يتم تشغيل سير عمل التطبيق المنطقي في وقت البدء المحدد. بهذه الطريقة، يتغير التوقيت العالمي المتفق عليه (UTC) لتطبيقك المنطقي أيضاً لمواجهة التغيير الموسمي للوقت. تحترم المشغلات المتكررة الجدول الذي تحدده، بما في ذلك أي منطقة زمنية تحددها.
وإلا، إذا لم تحدد منطقة زمنية، فقد تؤثر أحداث التوقيت الصيفي (DST) عند تشغيل المشغلات. على سبيل المثال، يتحول وقت البدء ساعة واحدة للأمام عندما يبدأ التوقيت الصيفي وساعة واحدة للخلف عندما ينتهي التوقيت الصيفي. ومع ذلك، قد تتسبب بعض نوافذ الوقت في حدوث مشاكل عند تحول الوقت. لمزيد من المعلومات والأمثلة، راجع تكرار التوقيت الصيفي والوقت القياسي.