מוצג המסמך של Apigee Edge.
עוברים אל
מסמכי תיעוד של Apigee X. מידע
סקירה כללית של משימות מתוזמנות
המונטיזציה מספקת מתזמן משימות וסדרה של משרות שמתוזמנות מראש לפעול ב בזמנים ספציפיים.
בטבלה הבאה מפורטות המשימות המתוזמנות מראש שמסופקות על ידי המונטיזציה ומועדי הביצוע מתוזמנת להופיע (כל השעות המפורטות הן לפי שעון UTC). יופיע גם הטריגר של כל משימה.
משימה | תיאור | לוח זמנים (UTC) | Trigger |
---|---|---|---|
שיעור מס המפתחים החודשי | אחזור של שיעור המס ממנוע המס לכל מפתח ועדכון של המפתח ישות עם שיעור המס המתוקן. | ביום הראשון בכל חודש בשעה 5:45 בבוקר | MINT.MONTHLY_DEV_TAXRATE@@@ |
חידוש המינוי | חלה עמלות חוזרות על תוכניות תעריפים פעילות או עמלות חדשות על תוכניות עתידיות של תעריפים מתחיל ביום הנוכחי. | כל יום ב-5 שניות אחרי חצות | MINT.RENEW_SUBSCRIPTIONS@@@ |
מעדכן XeFeed | מקבל את שער החליפין בדולר ארה"ב לכל מטבע נתמך. | כל יום בשנייה אחרי חצות | MINT.XEFEED@@@ |
חידוש תוכנית המחירים למפתחים | גוללים את תאריכי החידוש של תוכנית תעריפים ומחשבים את עמלות הסיום המוקדם. | כל יום בשעה 2:20 | MINT.RENEW_DEV_RATEPLAN@@@ |
ניסיון חוזר של שרת ממסר העסקה | הערה: המשימה הזו הוצאה משימוש ואין לה השפעה על מונטיזציה. | כל יום בשעה 4:30 | MINT.RETRY_TX_RELAY@@@ |
ניקוי נתונים לעסקאות | הערה: המשימה הזו הוצאה משימוש ואין לה השפעה על מונטיזציה. | כל יום בשעה 5:30 | MINT.TX_CLEANSER@@@ |
בדיקת היתרה למפתחים | בדיקת היתרה בחשבון הפיתוח. העתקת השימוש הנוכחי והתשלום מראש מגבלת אשראי/תשלום לאחר השימוש (postpay) לטבלת ביקורת, ואז מנכה את השימוש הנוכחי חשבון הפיתוח ומחזירה את יתרת השימוש לאפס. | היום הראשון בכל חודש ב-5 שניות אחרי חצות | MINT.DEVELOPER_BALANCE_AUDIT@@@ |
מסמכי חיוב חודשי | יוצר מסמכי חיוב. הערה: ב-Apigee אין יותר תמיכה ביצירת מסמכי חיוב מהמונטיזציה ב-Apigee Edge. כדאי לעיין במאמר פרישה לגמלאות. |
היום ה-11 בכל חודש בדקה אחת אחרי חצות | MINT.MONTLY_BILLING_DOCS@@@ |
מונה של תוכנית תעריפים למפתחים | הערה: המשימה הזו הוצאה משימוש ואין לה השפעה על מונטיזציה. | כל יום בשעה 3 שניות אחרי חצות | MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@ |
חיובים יומיים | מחשבת מחדש את כל הסכומים הכוללים של העסקאות השעתיים, ומשתמשת בהם כדי לחשב את הסכומים הכוללים היומיים. אתמול. | כל יום בשעה 1:20 | MINT.CHARGE_DAILY@@@ |
חיובים לפי שעה | מחשבת את כל סכומי העסקאות בכל רבעון של שעה. | דקה אחת אחרי כל רבע שעה | MINT.CHARGE_HOURLY@@@ |
רענון ההגדרה של ההתראה | הוספה מחדש של כל תנאי ההתראות לאינדקס. | כל 5 דקות | MINT.REFRESH_NOTIFICATION_CONFIG@@@ |
שליחת התראות באימייל | שולח התראות אימייל שהצטברו | כל שעה | MINT.EMAIL_NOTIFICATION@@@ |
רענון המגבלה | הערה: המשימה הזו הוצאה משימוש ואין לה השפעה על מונטיזציה. | לא רלוונטי (אף פעם לא מופעל) | MINT.REFRESH_LIMIT@@@ |
בנוסף למשימות שצוינו למעלה, יש משימות שאפשר להפעיל דרך האירוע התראות, כמפורט בטבלה הבאה. מידע נוסף זמין במאמר הגדרת התראות.
משרה | תיאור | תזמון | Trigger |
---|---|---|---|
הודעה על חבילה חדשה | שולחת הודעה לכל המפתחים על כך שחבילת API חדשה זמינה. |
פועלת פעם אחת — ביום שבו המשימה מופעלת בשעה 21:00.
הערה: ההתראות נשלחות רק פעם אחת, לא משנה אם
להגדיר |
MINT.NEW_PACKAGE_NOTIFY@@@ |
התראת אד-הוק חדשה | שולחת הודעה לכל המפתחים על כך שמוצרי API חדשים זמינים באופן ספציפי לשווקים גיאוגרפיים. |
פועלת פעם אחת — ביום שבו המשימה מופעלת בשעה 21:00.
הערה: ההתראות נשלחות רק פעם אחת, לא משנה אם
להגדיר |
MINT.ADHOC_NOTIFY@@@ |
התראה על מוצר חדש | התכונה שולחת הודעה לכל המפתחים על כך שיש מוצר API חדש זמין. |
פועלת פעם אחת — ביום שבו המשימה מופעלת בשעה 21:00.
הערה: ההתראות נשלחות רק פעם אחת, לא משנה אם
להגדיר |
MINT.NEW_PRODUCT_NOTIFY@@@ |
הודעה על תוכנית תעריפים חדשה |
התכונה שולחת הודעה למפתחים המושפעים על כך שיש תוכנית תמחור ותשלומים חדשה. הכול מפתחים שנרשמו לתוכנית התמחור והתשלומים החדשה מקבלים הודעה על כך שתוכנית תמחור ותשלומים חדשה פעיל. כמו כן:
|
יפעל בתאריך ההתחלה של תוכנית התעריפים החדשה, בשעה 04:30 (ארה"ב). | MINT.NEW_RATEPLAN_NOTIFY@@@ |
Tnc חדש | שולחת הודעה למפתחים המושפעים על כך שתנאים והגבלות חדשים או מתוקנים פורסמו (והמפתח עדיין לא אישר אותן). | פועל 30, 7 ויום אחד לפני תאריך ההתחלה של התנאים וההגבלות החדשים או המעודכנים, בשעה 21:00. | MINT.TNC_ACCEPTANCE_NOTIFY@@@ |
תוכנית תעריפים שתוקפם עומד לפוג | שולחת הודעה למפתחים המושפעים כדי לספק אזהרה מראש על כך שתוכנית תמחור ותשלומים עומד לפוג. | פועל ב-30, ב-7 וביום אחד לפני התפוגה של תוכנית התמחור והתשלומים, בשעה 21:00. | MINT.EXPIRING_RATE_PLAN_NOTIFY@@@ |
ניהול לוח הזמנים של משימות המונטיזציה באמצעות ה-API
בקטעים הבאים מוסבר איך לנהל את לוח הזמנים של המשימה למונטיזציה באמצעות ה-API:
- הגדרת טריגרים
- יצירת ביטויי cron
- צפייה במשימות מתוזמנות באמצעות ה-API
- עדכון משימות מתוזמנות באמצעות ה-API
- השבתה והפעלה מחדש של משימה מתוזמנת באמצעות API
מידע נוסף על ממשקי ה-API שמתוארים בקטע הזה זמין במאמר משימות מתוזמנות ב-API. הפניה.
הגדרת טריגרים
המתזמן מסתמך על טריגרים כדי לבצע משימות. משימה מתוזמנת מתבצעת כשהמשימה משויכת מפעיל. המאפיינים של טריגר מגדירים את ביצוע המשימה, ועל ידי הגדרת בערך של המאפיינים האלה אפשר לשלוט במאפיינים של ביצוע המשימה, כמו למשל מתי משימה ובאיזו תדירות.
שני הסוגים הנפוצים ביותר של טריגרים הם טריגרים מסוג cron וטריגרים פשוטים
טריגרים. טריגר cron כולל מאפיין cronExpression
שמציין
לוח זמנים לביצוע. לטריגר פשוט אין מאפיין cronExpression
; עבורך
ולציין את ה-startTime
כדי לציין מתי הטריגר נכנס לתוקף,
אופציונלי, endTime
.
אלו הם מאפייני הטריגר (כל הזמנים הרשומים הם לפי שעון UTC):
נכס | תיאור |
---|---|
cronExpression |
ביטוי cron כדי ליצור לוח זמנים לביצוע של הטריגר, למשל: "At 8:00 A.M.
כל יום שני עד שישי" או "ב-1:30 בבוקר. בכל יום שישי האחרון של החודש". צפייה
יצירת ביטויי cron לפרטים נוספים.
ציון המאפיין הזה מגדיר את הטריגר כטריגר cron. הערה: אם גם |
enabled |
סימון שמציין אם הטריגר מופעל להפעלה. הערך יכול להיות אחד מ-
הבאים:
|
endTime |
הזמן בפורמט של תקופה של זמן מערכת (epoch) שבו לוח הזמנים של הטריגר כבר לא בתוקף. |
group |
סוג השרת שבו יופעל הטריגר. לדוגמה, אם הטריגר הוא
אמור לפעול בשרת ניהול, הערך צריך להיות מוגדר
management-server אם הטריגר אמור לפעול בהודעה
שרת העיבוד, הערך צריך להיות message-processor . |
id |
זיהוי הטריגר. |
jobId |
זיהוי המשימה לביצוע. |
name |
השם הייחודי שמשמש לזיהוי הטריגר. |
priority |
עדיפות הביצוע היחסית של הטריגרים אם כמה טריגרים מתוזמנים להפעלה
כמעט זהה. ככל שהערך נמוך יותר, כך העדיפות גבוהה יותר. לדוגמה, אם שני טריגרים
תוזמנו לפעול בו-זמנית, ואם לטריגר אחד יש עדיפות של 1
אחר בעדיפות 2, הטריגר עם עדיפות 1 מופעל ראשון.
המאפיין הזה רלוונטי רק אם לכמה טריגרים יש אותה הפעלה בדיוק בזמן האימון. |
startTime |
רלוונטי רק לטריגרים פשוטים.
הזמן בפורמט של תקופה של זמן מערכת (epoch) שבו לוח הזמנים של הטריגר נכנס לתוקף. הערה: אם
גם |
suiteId |
סימון שמציין אם החלק של ההתראה ברמת המערכת או ברמת ברירת המחדל
של הודעות. הערכים החוקיים הם DEFAULT או SYSTEM , או
אפשר לציין שם ייחודי משלכם לחבילה. |
triggerDataMap |
המפתח לנעילת המכשיר, custom_lock_key , שמונע ממספר שרתים לפעול
. |
בניית ביטויי cron
ביטוי cron הוא מחרוזת שמורכבת מ-6 או 7 שדות שמופרדים באמצעות רווח לבן.
מייצג קבוצה של זמנים, בדרך כלל כלוח זמנים להפעלת תרחיש. cron
בביטויים המפורטים במאפיין cronExpression
של טריגר נעשה שימוש
כדי לתזמן את הביצוע של הטריגר הזה.
s
m h dm m dw y
כאשר:
שדה | תיאור | חובה | ערכים מותרים | תווים מיוחדים מותרים |
---|---|---|---|---|
s |
שניות | כן | 0-59 | , - * / |
m |
דקות | כן | 0-59 | , - * / |
h |
שעות | כן | 0-23 | , - * / |
dm |
היום בחודש | כן | 0-31 | , - * ? L/W |
m |
חודש | כן | 1-12 או 1-12 בדצמבר | , - * / |
dw |
יום בשבוע | כן | 1-7 או SUN-SAT | , - * ? / L # |
y |
שנה | לא | ריק או 1970-2099 | , - * / |
התווים המיוחדים מוגדרים כך:
תו מיוחד | תיאור |
---|---|
* | משמשת לבחירת כל הערכים בשדה מסוים. לדוגמה, * בשדה הדקות הוא בכל דקה. |
? | משמש לציון משהו באחד משני השדות שבהם התו מותר, אבל לא לצד השני. לדוגמה, אם רוצים שהטריגר יופעל ביום מסוים בחודש (למשל, ה-10 בחודש), אבל לא חשוב לכם באיזה יום בשבוע, ציינו 10 ביום השדה month וגם ? בשדה של היום בשבוע. |
- | משמש לציון טווחים. לדוגמה, 10-12 בשדה השעה פירושו שהשעות 10, 11 12. |
, | משמש לציון ערכים נוספים. לדוגמה, א', ב', ד', ו' בשדה של היום בשבוע כלומר, הימים שני, רביעי, ושישי. |
/ | משמש לציון מדרגות. לדוגמה, 0/15 בשדה השניות מייצג את הערך 0 עבור השניות, 15, 30 ו-45. ו-5/15 בשדה השניות הן ה-5, 20, 35 ו-50 השניות. אפשר לציין גם / אחרי " . הפעולה הזו שוות ערך ל-0 לפני ה-/. אם מציינים 1/3 בשדה של היום בחודש, המערכת מפעילה כל 3 ימים החל מהיום הראשון. היום בחודש. |
L | בעל משמעות שונה בכל אחד משני השדות שבהם היא מותרת. L ביום השדה 'חודש' הוא היום האחרון בחודש, כלומר 31 בינואר או יום 28 עבור בשנים לא מעוברות. בשדה של היום בשבוע, L הוא היום האחרון בשבוע, כלומר 7 או SAT. אבל אם משתמשים בו בשדה של היום בשבוע אחרי ערך אחר, פירוש הדבר הוא ביום xxx האחרון בחודש. לדוגמה, 6L פירושו יום שישי האחרון של החודש. |
W | משמש לציון יום השבוע (שני-שישי) הקרוב ביותר ליום הנתון. לדוגמה, אם לציין 15W בשדה של היום בחודש, פירוש הדבר הוא שיום השבוע הקרוב ביותר עד ה-15 בחודש. כלומר, אם היום ה-15 הוא יום שבת, הטריגר יופעל ביום שישי 14 בחודש. אם 15 הוא יום ראשון, הטריגר יתבצע ביום שני 16 בחודש. אם ה-15 הוא יום שלישי, אז היא תבוצע ביום שלישי, 15 בחודש. לעומת זאת, אם מציינים 1W ליום בחודש, וה-1 הוא יום שבת, הטריגר יתבצע ביום שני ה-3 כי הוא לא 'דילוג' מעבר לגבולות הימים של החודש. ניתן לציין את התו W רק כאשר היום בחודש הוא יום אחד, ולא טווח או רשימת ימים. |
# | משמש לציון היום ה-n XXX בחודש. לדוגמה, הערך 6#3 ביום השדה 'שבוע' הוא יום שישי השלישי בחודש (יום 6 = שישי ו-#3 = היום השלישי ב בחודש). דוגמאות אחרות: 2#1 = יום שני הראשון של החודש, 4#5 = היום החמישי יום רביעי של החודש. |
הנה כמה דוגמאות לביטויי cron (כל הזמנים מפורטים לפי שעון UTC):
ביטוי cron | לוח זמנים לביצוע |
---|---|
0 0 12 * * ? | 12:00 (בצהריים) מדי יום. |
0 15 10 * * ? 2013 | 10:15 מדי יום במהלך שנת 2013. |
0 10,44 14 ? 3 ד' | 14:10. וב-14:44 בכל יום רביעי בחודש מרץ. |
0 15 10 ? * 6L 2013-2015 | 10:15 ביום שישי האחרון של כל חודש במהלך השנים 2013, 2014, 2015. |
0 15 10 ? * 6#3 | 10:15 ביום שישי השלישי של כל חודש. |
צפייה במשימות מתוזמנות באמצעות ה-API
כדי להציג את כל המשימות המתוזמנות כרגע, צריך לשלוח בקשת GET אל
/triggers?orgid={org_name}
לדוגמה:
$ curl -H "Accept:application/json" -X GET \ "http://localhost:8080/v1/mint/triggers?orgid={org_name}" \ -u email:password
הדוגמה הבאה ממחישה את התשובה:
[ { "createdDate" : 1457924378176, "cronExpression" : "3 0 0 * * ?", "enabled" : true, "group" : "management-server", "id" : "MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@management-server", "name" : "MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@management-server@@@DEFAULT", "priority" : "1", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.resetdeveloperrateplancounter@@@management" }, "updatedDate" : 1457924378176 }, { "createdDate" : 1457924378014, "cronExpression" : "", "enabled" : true, "group" : "management-server", "id" : "MINT.ADHOC_NOTIFY@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.ADHOC_NOTIFY@@@management-server", "name" : "MINT.ADHOC_NOTIFY@@@management-server@@@DEFAULT", "priority" : "4", "startTime" : "1372916749000", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.adhocnotify@@@management" }, "updatedDate" : 1457924378014 }, { "createdDate" : 1457924377877, "cronExpression" : "0 20 1 * * ?", "enabled" : true, "group" : "management-server", "id" : "MINT.CHARGE_DAILY@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.CHARGE_DAILY@@@management-server", "name" : "MINT.CHARGE_DAILY@@@management-server@@@DEFAULT", "priority" : "1", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.chargedaily@@@management" }, "updatedDate" : 1457924377877 }, ... ]
אפשר גם לצפות במשימה מתוזמנת ספציפית על ידי שליחת בקשת GET
/triggers/{trig_id}
, כאשר {trig_id}
הוא מזהה המשרה
הפעלה, כמו שמתואר בסקירה כללית של משימות מתוזמנות. לדוגמה:
$ curl -X GET \ "http://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT" \ -u email:password
הדוגמה הבאה ממחישה את התשובה:
{ "createdDate" : 1457924377925, "cronExpression" : "0 20 2 * * ?", "enabled" : true, "group" : "management-server", "id" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.RENEW_DEV_RATEPLAN@@@management-server", "name" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT", "priority" : "1", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.renewydevrateplan@@@management" }, "updatedDate" : 1457924377925 }
עדכון משימות מתוזמנות באמצעות ה-API
כדי לעדכן משימה מתוזמנת, אפשר לשנות את המאפיינים של הטריגר שלה. לדוגמה, אולי יצטרך לשנות את לוח הזמנים של הביצוע של הטריגר.
במשימות טריגר cron (כלומר, משימות שכוללות ערך של ביטוי cron), תוכלו רק
לשנות את הערכים של cronExpression
ושל המאפיינים המופעלים. שינויים אחרים הם
המערכת מתעלמת ממנו. במשימות שלא מציינות ערך של ביטוי cron, אפשר לשנות מאפיינים אחרים
כמו startTime
או priority
.
כדי לעדכן משימה מתוזמנת, צריך לשלוח בקשת PUT אל /triggers/{trig_id}
, כאשר
{trig_id}
הוא הזיהוי של טריגר המשימה, כפי שמתואר במאמר סקירה כללית של משימות מתוזמנות. כשתבצעו את העדכון, עליכם לציין
גוף הבקשה, ההגדרות המעודכנות והמזהה של הטריגר.
לדוגמה, הבקשה הבאה מעדכנת את ביטוי ה-cron של 'תוכנית תעריפים חדשה למפתחים' משימת החידוש תפעל מדי יום בשעה 5:00. זמן UTC:
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "cronExpression" : "0 0 5 * * ?", "enabled" : true, "group" : "management-server", "id" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.RENEW_DEV_RATEPLAN@@@management-server", "name" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT", "priority" : "1", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.renewydevrateplan@@@management" }, }' \ https://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT \ -u email:password
השבתה והפעלה מחדש של משימות מתוזמנות באמצעות ה-API
כדי להשבית משימה מתוזמנת, צריך להגדיר את ערך המאפיין enabled
של הטריגר שלה כ-
לא נכון. לדוגמה:
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "cronExpression" : "0 0 5 * * ?", "enabled" : false, "group" : "management-server", "id" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT", "jobId" : "MINT.RENEW_DEV_RATEPLAN@@@management-server", "name" : "MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT", "priority" : "1", "suiteId" : "DEFAULT", "triggerDataMap" : { "custom_lock_key" : "mint.scheduler.__ORG_ID__.renewydevrateplan@@@management" }, }' \ https://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT \ -u email:password
כדי להפעיל מחדש משימה מושבתת, צריך להגדיר את ערך המאפיין enabled
של הטריגר שלה כ-
נכון.
השלבים הבאים
מומלץ לבצע מדי פעם סנכרון מחדש עם המונטיזציה בארגון שלך מפתחים, אפליקציות ומוצרים שיצרת באמצעות שירותי Edge API. איך עושים את זה? סנכרון נתוני Apigee Edge עם מונטיזציה.