Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Planlanmış işlere genel bakış
Para kazanma, bir iş planlayıcı ve belirlenen zamanlarda çalıştırılmak üzere önceden planlanmış bir dizi iş sağlar.
Aşağıdaki tabloda, para kazanma özelliği tarafından sağlanan önceden planlanmış işler ve bu işlerin planlandığı saatler listelenmektedir (listelenen tüm saatler UTC saat dilimindedir). Her iş için tetikleyici de listelenmiştir.
İş | Açıklama | Plan (UTC) | Tetikleyici |
---|---|---|---|
Aylık Geliştirici Vergisi Oranı | Her geliştiricinin vergi motorundan vergi oranını alır ve geliştirici tüzel kişisini düzeltilmiş vergi oranıyla günceller. | Her ayın ilk günü saat 05:45'te | MINT.MONTHLY_DEV_TAXRATE@@@ |
Aboneliği yenileyin | Geçerli gün başlayan etkin ücret planları için yinelenen ücretler veya gelecekteki ücret planları için yeni ücretler uygular. | Her gün gece yarısından sonraki 5. saniyede | MINT.RENEW_SUBSCRIPTIONS@@@ |
XeFeed Güncelleyici | Desteklenen her para birimi için ABD doları cinsinden döviz kurunu alır. | Her gün gece yarısından sonraki 1. saniyede | MINT.XEFEED@@@ |
Geliştirici Ücret Planını Yenile | Ücret planı için yenileme tarihleri üzerine aktarılır ve erken fesih ücretlerini hesaplar. | Her gün saat 02:20'de | MINT.RENEW_DEV_RATEPLAN@@@ |
İşlem Geçişini Yeniden Deneme | Not: Bu işin desteği sonlandırılmıştır ve para kazanma üzerinde herhangi bir etkisi yoktur. | Her gün saat 04:30'da | MINT.RETRY_TX_RELAY@@@ |
İşlem Temizleyici | Not: Bu işin desteği sonlandırılmıştır ve para kazanma üzerinde herhangi bir etkisi yoktur. | Her gün saat 05:30'da | MINT.TX_CLEANSER@@@ |
Geliştirici Bakiyesi Denetimi | Geliştirici hesabı bakiyesini denetler. Mevcut kullanımı ve ön ödeme bakiyesi/faturalı kredi limitini bir denetim tablosuna kopyalar, ardından geçerli kullanımı geliştirici hesabından düşerek kullanım bakiyesini sıfıra döndürür. | Her ayın ilk günü gece yarısından sonra 5. saniye | MINT.DEVELOPER_BALANCE_AUDIT@@@ |
Aylık Faturalandırma Belgeleri | Faturalandırma belgeleri oluşturur. Not: Apigee, artık Apigee Edge Monetization'dan faturalandırma belgeleri oluşturmayı desteklememektedir. Emeklilik hükümlerini inceleyin. |
Her ayın 11. günü, gece yarısından sonraki 1. dakika | MINT.MONTLY_BILLING_DOCS@@@ |
Geliştirici Ücret Planı Sayacı | Not: Bu işin desteği sonlandırılmıştır ve para kazanma üzerinde herhangi bir etkisi yoktur. | Her gün gece yarısından sonraki 3. saniyede | MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@ |
Günlük Ücretler | Tüm saatlik işlem toplamlarını yeniden hesaplar ve önceki günün günlük toplamlarını hesaplamak için bunları kullanır. | Her gün saat 01:20'de | MINT.CHARGE_DAILY@@@ |
Saatlik Ücretler | Bir saatin her çeyreği için tüm işlem toplamlarını hesaplar. | Bir saatin her çeyreği 1 dakika geçiyor | MINT.CHARGE_HOURLY@@@ |
Bildirim yapılandırmasını yenile | Tüm bildirim koşullarını yeniden dizine ekler. | Her 5 dakikada bir | MINT.REFRESH_NOTIFICATION_CONFIG@@@ |
E-posta bildirimleri gönder | Toplanmış e-posta bildirimlerini gönderir | Saatte bir | MINT.EMAIL_NOTIFICATION@@@ |
Yenileme Sınırı | Not: Bu işin desteği sonlandırılmıştır ve para kazanma üzerinde herhangi bir etkisi yoktur. | Yok (Hiçbir zaman yürütülmez) | MINT.REFRESH_LIMIT@@@ |
Yukarıda listelenen işlerin yanı sıra, aşağıdaki tabloda listelendiği gibi etkinlik bildirimleri aracılığıyla etkinleştirebileceğiniz işler de vardır. Daha fazla bilgi için Bildirimleri ayarlama başlıklı makaleyi inceleyin.
İş | Açıklama | Planla | Tetikleyici |
---|---|---|---|
Yeni Paket Bildirimi | Tüm geliştiricilere, yeni bir API paketinin kullanıma sunulduğuna dair bildirim gönderir. |
Bir kez çalıştırılır; işin etkinleştirildiği gün saat 21:00'de
Not: İşin birden fazla kez yürütülmesiyle sonuçlanan bir |
MINT.NEW_PACKAGE_NOTIFY@@@ |
Yeni Anlık Bildirim | Yeni API ürünlerinin belirli coğrafi pazarlarda kullanıma sunulduğuna dair tüm geliştiricilere bildirim gönderir. |
Bir kez çalıştırılır; işin etkinleştirildiği gün saat 21:00'de
Not: İşin birden fazla kez yürütülmesiyle sonuçlanan bir |
MINT.ADHOC_NOTIFY@@@ |
Yeni Ürün Bildirimi | Tüm geliştiricilere, yeni bir API ürününün kullanıma sunulduğuna dair bildirim gönderir. |
Bir kez çalıştırılır; işin etkinleştirildiği gün saat 21:00'de
Not: İşin birden fazla kez yürütülmesiyle sonuçlanan bir |
MINT.NEW_PRODUCT_NOTIFY@@@ |
Yeni Ücret Planı Bildirimi |
Etkilenen geliştiricilere yeni bir ücret planının mevcut olduğuna dair bir bildirim gönderir. Üst ücret planına abone olan tüm geliştiriciler, yeni bir ücret planının etkin olduğu konusunda bilgilendirilir. Ayrıca:
|
Yeni ücret planının başlangıç tarihinde saat 04:30'da çalışır. | MINT.NEW_RATEPLAN_NOTIFY@@@ |
Yeni Tran | Etkilenen geliştiricilere, yeni veya düzeltilmiş Hükümler ve Koşullar'ın yayınlandığı (ve geliştiricinin bunları henüz kabul etmediği) konusunda bir bildirim gönderir. | Yeni veya düzeltilmiş Hükümler ve Koşullar'ın başlangıç tarihinden 30, 7 ve 1 gün önce saat 21:00'de yürürlüğe girer. | MINT.TNC_ACCEPTANCE_NOTIFY@@@ |
Süresi dolmak üzere olan ücret planı | Etkilenen geliştiricilere, bir ücret planının süresinin dolacağına dair ön uyarı gönderir. | Ücret planının sona ermesinden 30, 7 ve 1 gün önce saat 21:00'de çalışır. | MINT.EXPIRING_RATE_PLAN_NOTIFY@@@ |
API'yi kullanarak para kazanma işi programını yönetme
Aşağıdaki bölümlerde, API kullanılarak para kazanma işi takviminin nasıl yönetileceği açıklanmaktadır:
- Tetikleyicileri yapılandırma
- Cron ifadeleri oluşturma
- API'yi kullanarak planlanmış işleri görüntüleme
- Planlanmış işleri API'yi kullanarak güncelleme
- API'yi kullanarak planlanmış bir işi devre dışı bırakma ve yeniden etkinleştirme
Bu bölümde açıklanan API'ler hakkında daha fazla bilgi için API referansındaki Planlanmış işler bölümüne bakın.
Tetikleyicileri yapılandırma
Planlayıcı, işleri yürütmek için tetikleyicilerden yararlanır. Planlanmış bir iş, ilişkili tetikleyicisi yürütüldüğünde yürütülür. Tetikleyicinin özellikleri, işin yürütülmesini yapılandırır. Bu özelliklerin değerini ayarlayarak iş yürütmenin özelliklerini, işin ne zaman yürütüldüğü ve ne sıklıkta yürütüldüğü gibi kontrol edebilirsiniz.
En yaygın iki tetikleyici türü, cron tetikleyicileri ve basit tetikleyicilerdir. Cron tetikleyicisinin yürütme planı belirten bir cronExpression
özelliği vardır. Basit bir tetikleyicinin bir cronExpression
özelliği yoktur. Tetikleyicinin ne zaman geçerli olacağını belirtmek için startTime
ve isteğe bağlı olarak endTime
belirtirsiniz.
Tetikleyici özellikleri aşağıdaki gibidir (listelenen tüm zamanlar UTC saat dilimindedir):
Özellik | Açıklama |
---|---|
cronExpression |
Tetikleyici için bir yürütme planı oluşturmak üzere Cron ifadesi, örneğin: "Her pazartesiden cumaya 08:00'de
veya "Her ayın son cuma günü 01:30'da". Daha fazla ayrıntı için cron ifadeleri oluşturma bölümüne bakın.
Bu özelliğin belirtilmesi, tetikleyiciyi bir cron tetikleyicisi olarak tanımlar. Not: Hem |
enabled |
Tetikleyicinin yürütülecek şekilde etkin olup olmadığını gösteren işaret. Değer şunlardan biri olabilir:
|
endTime |
Tetikleyici programının artık geçerli olmadığı dönem biçiminde zaman. |
group |
Tetikleyicinin yürütüleceği sunucunun türü. Örneğin, tetikleyicinin bir yönetim sunucusunda yürütülmesi gerekiyorsa değer management-server olarak ayarlanmalıdır. Tetikleyicinin bir mesaj işleme sunucusunda yürütülmesi gerekiyorsa değer message-processor olarak ayarlanmalıdır. |
id |
Tetikleyicinin tanımlanması. |
jobId |
Yürütülecek işin tanımı. |
name |
Tetikleyiciyi tanımlamak için kullanılan benzersiz ad. |
priority |
Birden fazla tetikleyici aynı anda yürütülecek şekilde planlandıysa tetikleyicilerin göreli yürütme önceliği. Değer ne kadar düşük olursa öncelik o kadar yüksektir. Örneğin, iki tetikleyici aynı anda yürütülecek şekilde programlanmışsa ve bir tetikleyicinin önceliği 1, diğerinin önceliği 2 ise ilk olarak önceliği 1 olan tetikleyici yürütülür.
Bu özellik yalnızca birden fazla tetikleyici tam olarak aynı yürütme süresine sahip olduğunda geçerlidir. |
startTime |
Yalnızca basit tetikleyiciler için geçerlidir.
Tetikleyici planının geçerli olduğu dönem biçiminde zaman. Not: Hem |
suiteId |
Sistem düzeyinde veya varsayılan düzeydeki bildirim paketinin bildirim kısmını belirten işarettir. Geçerli değerler DEFAULT veya SYSTEM 'dir ya da kendi benzersiz paket adınızı belirtebilirsiniz. |
triggerDataMap |
Birden fazla sunucunun aynı işi aynı anda yürütmesini engelleyen kilit anahtarı (custom_lock_key ). |
Cron ifadeleri oluşturma
Cron ifadesi, boşlukla ayrılmış altı veya yedi alandan oluşan bir dizedir. İfade, normalde bir rutini yürütme programı olarak bir zaman kümesini temsil eder. Tetikleyicinin cronExpression
özelliğinde belirtilen cron ifadeleri, tetikleyicinin yürütülmesini planlamak için kullanılır.
s
m h dm m dw y
Burada:
Alan | Açıklama | Gerekli | İzin verilen değerler | İzin Verilen Özel Karakterler |
---|---|---|---|---|
s |
Saniye | Evet | 0-59 | , - * / |
m |
Dakikalar | Evet | 0-59 | , - * / |
h |
Saat | Evet | 0-23 | , - * / |
dm |
Ayın günü | Evet | 0-31 | , - * ? / D |
m |
Ay | Evet | 1-12 veya OCAK-ARALIK | , - * / |
dw |
Haftanın günü | Evet | 1-7 veya PAZ-CUMARTESİ | , - * ? / MD # |
y |
Yıl | Hayır | Boş veya 1970-2099 | , - * / |
Özel karakterler şu şekilde tanımlanır:
Özel karakter | Açıklama |
---|---|
* | Bir alandaki tüm değerleri seçmek için kullanılır. Örneğin, dakika alanındaki * işareti her dakika anlamına gelir. |
? | Karaktere izin verilen iki alandan birinde bir öğeyi belirtmek için kullanılır, ancak diğerinde bunu belirtmez. Örneğin, tetikleyicinin ayın belirli bir gününde (örneğin 10. günü) çalışmasını istiyorsanız, ancak haftanın hangi günü sizin için önemli değilse ayın günü alanına 10 değerini ve ? girin. |
- | Aralıkları belirtmek için kullanılır. Örneğin, saat alanındaki 10-12, 10, 11 ve 12 saat anlamına gelir. |
, | Ek değerleri belirtmek için kullanılır. Örneğin, haftanın günü alanındaki PZT,Çarşamba,Cuma, Pazartesi, Çarşamba ve Cuma günleri anlamına gelir. |
/ | Artımları belirtmek için kullanılır. Örneğin, saniye alanındaki 0/15 değeri, 0, 15, 30 ve 45 saniye anlamına gelir. Saniye alanındaki 5/15 ise 5, 20, 35 ve 50 saniye anlamına gelir. " karakterinden sonra / karakterini de belirtebilirsiniz. Bu işlem, / karakterinden önce 0'ın bulunmasıyla eşdeğerdir. Ayın günü alanında 1/3 değerinin belirtilmesi, ayın ilk gününden başlayarak 3 günde bir yürütme anlamına gelir. |
L | İzin verilen iki alanın her biri için farklı anlamlara sahiptir. Ayın günü alanı, ayın son günü, yani Ocak için 31. gün veya artık olmayan yıllar için Şubat için 28. gün anlamına gelir. Haftanın günü alanında L, haftanın son günü, yani 7 veya SAT anlamına gelir. Ancak, haftanın günü alanında başka bir değerden sonra kullanılırsa ayın son xxx günü anlamına gelir. Örneğin, 6L, ayın son cuma günü anlamına gelir. |
W | Belirli bir güne en yakın hafta içi (Pazartesi-Cuma) gününü belirtmek için kullanılır. Örneğin, ayın günü alanında 15 W belirtirseniz ayın 15'ine en yakın hafta içi günü anlamına gelir. Yani ayın 15'i cumartesi günüyse tetikleyici ayın 14'ü cuma günü yürütülür. Ayın 15'i pazar günüyse tetikleyici ayın 16'sı pazartesi günü yürütülür. Ayın 15'i Salı günüyse uygulama ayın 15'i Salı günü yürütülür. Bununla birlikte, ayın günü için 1 W olarak belirlerseniz ve 1. gün Cumartesi ise tetikleyici bir ayın günlerinin sınırını aşmayacağı için ayın 3'ü Pazartesi günü yürütülür. W karakteri yalnızca ayın günü tek bir gün olduğunda belirtilebilir (bir aralık veya gün listesi olamaz). |
# | Ayın n. XXX gününü belirtmek için kullanılır. Örneğin, haftanın günü alanındaki 6#3 değeri ayın üçüncü cuma günü anlamına gelir (6. gün = Cuma ve 3. gün = ayın 3. günü). Diğer örnekler: 2#1 = ayın ilk pazartesi günü, 4#5 = ayın beşinci çarşamba günü. |
Cron ifadeleriyle ilgili bazı örnekleri burada bulabilirsiniz (listelenen tüm zamanlar UTC saat dilimindedir):
Cron ifadesi | Yürütme programı |
---|---|
0 0 12 * * ? | 12:00 (öğle). |
0 15 10 * * ? 2013 | 2013 yılı boyunca her gün saat 10:15. |
0 10,44 14 ? 3 ÇAR | Mart ayında her çarşamba 14:10 ve 14:44. |
0 15 10 * 6 Yaş 2013-2015 | 2013, 2014 ve 2015 yıllarında her ayın son Cuma günü 10:15. |
0 15 10 * 3. | her ayın üçüncü cuma günü saat 10:15. |
API'yi kullanarak planlanmış işleri görüntüleme
/triggers?orgid={org_name}
için bir GET isteği göndererek şu anda planlanmış tüm işleri görüntüleyebilirsiniz.
Örneğin:
$ curl -H "Accept:application/json" -X GET \ "http://localhost:8080/v1/mint/triggers?orgid={org_name}" \ -u email:password
Aşağıda yanıtla ilgili bir örnek yer almaktadır:
[ { "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 }, ... ]
Ayrıca, planlanan belirli bir işi /triggers/{trig_id}
için bir GET isteği göndererek de görüntüleyebilirsiniz. Burada {trig_id}
, Planlanmış işlere genel bakış bölümünde açıklandığı gibi iş tetikleyicisinin tanımıdır. Örneğin:
$ curl -X GET \ "http://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT" \ -u email:password
Aşağıda yanıtla ilgili bir örnek yer almaktadır:
{ "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 }
Planlanmış işleri API'yi kullanarak güncelleme
Planlanmış bir işi, tetikleyicisinin özelliklerini değiştirerek güncelleyebilirsiniz. Örneğin, tetikleyicinin yürütme programını değiştirmeniz gerekebilir.
Cron tetikleyici işleri (yani, cron ifadesi değeri içeren işler) için yalnızca cronExpression
değerlerini ve etkinleştirilen özellikleri değiştirebilirsiniz. Diğer değişiklikler yok sayılır. Cron ifade değeri belirtmeyen işler için startTime
veya priority
gibi diğer özellikleri değiştirebilirsiniz.
Planlanmış bir işi güncellemek için /triggers/{trig_id}
adresine bir PUT isteği gönderin. Burada {trig_id}
, Planlanmış işlere genel bakış bölümünde açıklandığı gibi iş tetikleyicisinin tanımıdır. Güncellemeyi yaparken, istek gövdesinde güncellenen ayarları ve tetikleyicinin kimliğini belirtmeniz gerekir.
Örneğin, aşağıdaki istek Yeni Geliştirici Ücret Planı Yenileme işinin cron ifadesini her gün saat 05:00'te (UTC) çalışacak şekilde günceller:
$ 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'yi kullanarak planlanmış bir işi devre dışı bırakma ve yeniden etkinleştirme
Planlanmış bir işi devre dışı bırakmak için tetikleyicisinin enabled
özellik değerini false olarak ayarlayın. Örneğin:
$ 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
Devre dışı bırakılan bir işi yeniden etkinleştirmek için tetikleyicisinin enabled
özellik değerini true olarak ayarlayın.
Sonraki adımlar
Kuruluşunuzun ve Edge API Hizmetleri'ni kullanarak oluşturduğunuz geliştirici, uygulama ve ürünlerin para kazanma özelliğiyle düzenli aralıklarla yeniden senkronizasyon yapmanız önerilir. Apigee Edge verilerini para kazanmayla senkronize etme bölümünden nasıl yapılacağını öğrenin.