Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Ringkasan tugas terjadwal
Monetisasi menyediakan penjadwal tugas dan serangkaian tugas yang telah dijadwalkan untuk dijalankan waktu yang ditentukan.
Tabel di bawah ini mencantumkan pekerjaan terjadwal yang disediakan oleh monetisasi dan waktunya dijadwalkan untuk berjalan (semua waktu yang tercantum dalam UTC). Tercantum juga pemicu untuk setiap tugas.
Tugas | Deskripsi | Jadwal (UTC) | Pemicu |
---|---|---|---|
Tarif Pajak Developer Bulanan | Mengambil tarif pajak dari mesin pajak untuk setiap developer, dan memperbarui developer entitas dengan tarif pajak yang direvisi. | Hari pertama setiap bulan pukul 05.45 | MINT.MONTHLY_DEV_TAXRATE@@@ |
Memperpanjang Langganan | Menerapkan biaya berulang untuk paket tarif aktif atau biaya baru untuk paket tarif mendatang yang dimulai pada hari ini. | Setiap hari pada 5 detik lewat tengah malam | MINT.RENEW_SUBSCRIPTIONS@@@ |
Updater XeFeed | Mendapatkan nilai tukar dalam dolar AS untuk setiap mata uang yang didukung. | Setiap hari pada 1 detik lewat tengah malam | MINT.XEFEED@@@ |
Perpanjang Paket Tarif Developer | Menggulir tanggal perpanjangan untuk paket tarif dan menghitung biaya penghentian awal. | Setiap hari jam 2.20 pagi | MINT.RENEW_DEV_RATEPLAN@@@ |
Mencoba Ulang Relai Transaksi | Catatan: Tugas ini tidak digunakan lagi dan tidak berdampak pada monetisasi. | Setiap hari jam 4.30 pagi | MINT.RETRY_TX_RELAY@@@ |
Pembersih Transaksi | Catatan: Tugas ini tidak digunakan lagi dan tidak berdampak pada monetisasi. | Setiap hari jam 5.30 pagi | MINT.TX_CLEANSER@@@ |
Audit Saldo Developer | Mengaudit saldo akun developer. Menyalin penggunaan saat ini dan prabayar batas kredit saldo/pascabayar ke tabel audit, lalu memotong penggunaan saat ini dari akun developer Anda dan mengembalikan saldo penggunaan ke nol. | Hari pertama setiap bulan pada 5 detik lewat tengah malam | MINT.DEVELOPER_BALANCE_AUDIT@@@ |
Dokumen Penagihan Bulanan | Membuat dokumen penagihan. Catatan: Apigee tidak lagi mendukung pembuatan dokumen penagihan dari Monetisasi Edge Apigee. Lihat Penghentian. |
Hari ke-11 setiap bulan pada 1 menit setelah tengah malam | MINT.MONTLY_BILLING_DOCS@@@ |
Penghitung Paket Tarif Developer | Catatan: Tugas ini tidak digunakan lagi dan tidak berdampak pada monetisasi. | Setiap hari pada 3 detik lewat tengah malam | MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@ |
Tagihan Harian | Menghitung ulang semua total transaksi per jam dan menggunakannya untuk menghitung total harian pada hari sebelumnya. | Setiap hari jam 1.20 pagi | MINT.CHARGE_DAILY@@@ |
Tagihan Per Jam | Menghitung semua total transaksi untuk setiap kuartal dalam satu jam. | 1 menit setelah setiap seperempat jam | MINT.CHARGE_HOURLY@@@ |
Muat ulang konfigurasi notifikasi | Mengindeks ulang semua kondisi notifikasi. | Setiap 5 menit | MINT.REFRESH_NOTIFICATION_CONFIG@@@ |
Kirim notifikasi email | Mengirim akumulasi notifikasi email | Setiap jam | MINT.EMAIL_NOTIFICATION@@@ |
Batas Muat Ulang | Catatan: Tugas ini tidak digunakan lagi dan tidak berdampak pada monetisasi. | T/A (Tidak pernah dijalankan) | MINT.REFRESH_LIMIT@@@ |
Selain lowongan yang tercantum di atas, ada tugas yang dapat Anda aktifkan melalui peristiwa notifikasi, seperti yang tercantum dalam tabel berikut. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan notifikasi.
Tugas | Deskripsi | Jadwal | Pemicu |
---|---|---|---|
Notifikasi Paket Baru | Mengirimkan notifikasi ke semua developer bahwa paket API baru telah tersedia. |
Berjalan sekali — pada hari saat tugas diaktifkan pada pukul 21.00.
Catatan: Notifikasi hanya dikirim sekali, terlepas dari apakah Anda
mengonfigurasi |
MINT.NEW_PACKAGE_NOTIFY@@@ |
Notifikasi Ad Hoc Baru | Mengirimkan notifikasi ke semua developer bahwa produk API baru tersedia di di pasar geografis. |
Berjalan sekali — pada hari saat tugas diaktifkan pada pukul 21.00.
Catatan: Notifikasi hanya dikirim sekali, terlepas dari apakah Anda
mengonfigurasi |
MINT.ADHOC_NOTIFY@@@ |
Notifikasi Produk Baru | Mengirimkan notifikasi ke semua developer bahwa produk API baru tersedia. |
Berjalan sekali — pada hari saat tugas diaktifkan pada pukul 21.00.
Catatan: Notifikasi hanya dikirim sekali, terlepas dari apakah Anda
mengonfigurasi |
MINT.NEW_PRODUCT_NOTIFY@@@ |
Notifikasi Paket Tarif Baru |
Mengirimkan notifikasi kepada developer yang terpengaruh bahwa paket tarif baru tersedia. Semua developer yang berlangganan paket tarif induk akan diberi tahu bahwa paket tarif baru aktif. Selain itu:
|
Berjalan pada tanggal mulai paket tarif baru, pukul 04.30. | MINT.NEW_RATEPLAN_NOTIFY@@@ |
Tnc Baru | Mengirimkan notifikasi kepada developer yang terpengaruh bahwa Persyaratan dan Ketentuan yang baru atau direvisi telah dipublikasikan (dan developer belum menyetujuinya). | Berjalan 30, 7, dan 1 hari sebelum tanggal mulai Syarat dan Ketentuan yang baru atau direvisi, pada pukul 21.00. | MINT.TNC_ACCEPTANCE_NOTIFY@@@ |
Paket tarif akan habis masa berlakunya | Mengirim notifikasi kepada developer yang terpengaruh untuk memberikan peringatan awal bahwa paket tarif akan kedaluwarsa. | Berjalan 30, 7, dan 1 hari sebelum masa berlaku paket tarif berakhir, pada pukul 21.00. | MINT.EXPIRING_RATE_PLAN_NOTIFY@@@ |
Mengelola jadwal tugas monetisasi menggunakan API
Bagian berikut menjelaskan cara mengelola jadwal tugas monetisasi menggunakan API:
- Mengonfigurasi pemicu
- Membuat ekspresi cron
- Melihat tugas terjadwal menggunakan API
- Memperbarui tugas terjadwal menggunakan API
- Menonaktifkan dan mengaktifkan kembali tugas terjadwal menggunakan API
Untuk mengetahui informasi selengkapnya tentang API yang dijelaskan di bagian ini, lihat Tugas terjadwal di API alamat IP internal.
Mengonfigurasi pemicu
Penjadwal bergantung pada {i>trigger<i} (pemicu) untuk menjalankan tugas. Tugas terjadwal dijalankan saat pemicu dieksekusi. Properti pemicu mengonfigurasi eksekusi tugas, dan dengan menyetel dari properti ini, Anda dapat mengontrol karakteristik eksekusi tugas seperti ketika sebuah tugas dieksekusi, dan seberapa sering.
Dua jenis pemicu yang paling umum adalah pemicu cron dan sederhana
pemicu. Pemicu cron memiliki properti cronExpression
yang menentukan
jadwal eksekusi. Pemicu sederhana tidak memiliki properti cronExpression
; Anda
menentukan startTime
untuk menunjukkan kapan pemicu diterapkan, dan
secara opsional, endTime
.
Properti pemicu adalah sebagai berikut (semua waktu yang tercantum dalam UTC):
Properti | Deskripsi |
---|---|
cronExpression |
Ekspresi cron untuk membuat jadwal eksekusi pemicu, seperti: "Pada pukul 08.00 A.M.
setiap hari Senin sampai Jumat" atau "Pukul 01.30 pagi setiap hari Jumat terakhir setiap bulan". Lihat
Membuat ekspresi cron untuk detail lebih lanjut.
Menentukan properti ini akan menentukan pemicu sebagai pemicu cron. Catatan: Jika |
enabled |
Tanda yang menunjukkan apakah pemicu diaktifkan untuk dijalankan. Nilainya bisa berupa salah satu
hal berikut:
|
endTime |
Waktu dalam format epoch saat jadwal pemicu tidak lagi berlaku. |
group |
Jenis server tempat pemicu akan dijalankan. Misalnya, jika pemicunya adalah
seharusnya dijalankan di server
manajemen, nilainya harus diatur ke
management-server . Jika pemicu seharusnya
dieksekusi dalam sebuah pesan,
server tersebut, nilainya harus ditetapkan ke message-processor . |
id |
Identifikasi pemicu. |
jobId |
Identifikasi tugas yang akan dieksekusi. |
name |
Nama unik yang digunakan untuk mengidentifikasi pemicu. |
priority |
Prioritas eksekusi relatif pemicu jika beberapa pemicu dijadwalkan untuk dijalankan
secara bersamaan. Semakin rendah nilainya, semakin tinggi prioritasnya. Misalnya, jika dua pemicu
dijadwalkan untuk dieksekusi pada waktu yang sama, dan jika satu pemicu memiliki prioritas 1 dan
lainnya dengan prioritas 2, pemicu dengan prioritas 1 akan dieksekusi terlebih dahulu.
Properti ini hanya berlaku jika beberapa pemicu memiliki eksekusi yang sama persis baik. |
startTime |
Hanya berlaku untuk pemicu sederhana.
Waktu dalam format epoch saat jadwal pemicu berlaku. Catatan: Jika
|
suiteId |
Tanda yang menentukan apakah bagian notifikasi pada level sistem atau level default
serangkaian notifikasi. Nilai yang valid adalah DEFAULT atau SYSTEM , atau
Anda dapat menentukan nama suite yang unik. |
triggerDataMap |
Tombol kunci, custom_lock_key , yang mencegah beberapa server dieksekusi
pekerjaan yang sama pada saat yang sama. |
Membuat ekspresi cron
Ekspresi cron adalah string yang terdiri dari enam atau tujuh kolom yang dipisahkan oleh ruang kosong. Tujuan
ekspresi yang mewakili serangkaian waktu, biasanya sebagai jadwal untuk mengeksekusi suatu rutinitas. Cron
ekspresi yang ditentukan dalam properti cronExpression
pemicu digunakan
untuk menjadwalkan eksekusi pemicu tersebut.
s
m h dm m dw y
Dengan keterangan:
Kolom | Deskripsi | Wajib | Nilai yang diizinkan | Karakter Khusus yang Diizinkan |
---|---|---|---|---|
s |
Detik | Ya | 0-59 | , - * / |
m |
Menit | Ya | 0-59 | , - * / |
h |
Jam | Ya | 0-23 | , - * / |
dm |
Tanggal | Ya | 0-31 | , - * ? / Rb |
m |
Bulan | Ya | 1-12 atau JAN-DEC | , - * / |
dw |
Hari | Ya | 1-7 atau SUN-SAT | , - * ? / L # |
y |
Tahun | Tidak | Kosong atau 1970-2099 | , - * / |
Karakter khusus didefinisikan sebagai berikut:
Karakter khusus | Deskripsi |
---|---|
* | Digunakan untuk memilih semua nilai dalam kolom. Misalnya, * di isian menit berarti setiap menit. |
? | Digunakan untuk menentukan sesuatu di salah satu dari dua isian yang mengizinkan karakter, tapi tidak yang lain. Misalnya, jika Anda ingin pemicu dijalankan pada hari tertentu bulan (misalnya, tanggal 10), tetapi tidak peduli hari apa, tentukan 10 pada hari bulan, dan ? di bidang hari dalam seminggu. |
- | Digunakan untuk menentukan rentang. Misalnya, 10-12 di isian jam berarti jam 10, 11 dan 12. |
, | Digunakan untuk menentukan nilai tambahan. Misalnya, MON,WED,FRI pada kolom hari dalam seminggu berarti hari Senin, Rabu, dan Jumat. |
/ | Digunakan untuk menentukan penambahan. Misalnya, 0/15 di isian detik berarti 0, 15, 30, dan 45. Dan 5/15 di isian detik berarti detik 5, 20, 35, dan 50. Anda dapat juga menentukan / setelah " karakter. Melakukan itu sama seperti memiliki 0 sebelum /. Menentukan 1/3 di kolom hari dalam sebulan berarti mengeksekusi setiap 3 hari dimulai pada hari pertama tanggal. |
L | Memiliki arti yang berbeda pada kedua kolom yang mengizinkannya. L pada hari {i>bulan<i} berarti hari terakhir dari bulan itu, yaitu, hari ke 31 untuk bulan Januari, atau hari ke 28 untuk Februari pada tahun non-kabisat. Pada bidang hari, L berarti hari terakhir dalam seminggu, yaitu, 7 atau SAT. Tetapi jika digunakan pada bidang hari setelah nilai yang lain, ini berarti hari xxx terakhir dari bulan tersebut. Misalnya, 6L berarti hari Jumat terakhir setiap bulan. |
W | Digunakan untuk menentukan hari kerja (Senin-Jumat) yang terdekat dengan hari tertentu. Sebagai contoh, jika Anda menentukan 15W pada isian hari, artinya hari kerja terdekat ke tanggal 15 bulan. Jadi, jika tanggal 15 adalah hari Sabtu, pemicu akan dijalankan pada hari Jumat tanggal 14. Jika Tanggal 15 adalah hari Minggu, pemicu akan dijalankan pada hari Senin tanggal 16. Jika tanggal 15 adalah hari Selasa, maka akan dilaksanakan pada hari Selasa tanggal 15. Namun, jika Anda menentukan 1W untuk hari dalam sebulan, dan yang pertama adalah hari Sabtu, pemicu akan dijalankan pada hari Senin tanggal 3 karena tidak akan "lompat" melebihi batas hari dalam satu bulan. Karakter W hanya bisa ditentukan ketika hari dalam sebulan adalah satu hari, bukan rentang atau daftar hari. |
# | Digunakan untuk menentukan hari ke-XXX setiap bulan. Misalnya, nilai 6#3 pada hari isian minggu berarti hari Jumat ketiga setiap bulan (hari 6 = Jumat dan #3 = yang ketiga bulan). Contoh lain: 2#1 = hari Senin pertama setiap bulan, 4#5 = hari Senin kelima Rabu setiap bulan. |
Berikut adalah beberapa contoh ekspresi cron (semua waktu tercantum dalam UTC):
Persamaan cron | Jadwal eksekusi |
---|---|
0 0 12 * * ? | 12.00 (siang) setiap hari. |
0 15 10 * * ? 2013 | 10.15 setiap hari selama tahun 2013. |
0 10,44 14 ? 3 RAB | 14.10 dan pada pukul 14.44. setiap hari Rabu di bulan Maret. |
0 15 10 ? * 6L 2013-2015 | 10.15 pada hari Jumat terakhir setiap bulan selama tahun 2013, 2014, dan 2015. |
0 15 10 ? * 6#3 | 10.15 pada hari Jumat ketiga setiap bulan. |
Melihat tugas terjadwal menggunakan API
Anda dapat melihat semua tugas terjadwal saat ini dengan mengajukan permintaan GET ke
/triggers?orgid={org_name}
.
Contoh:
$ curl -H "Accept:application/json" -X GET \ "http://localhost:8080/v1/mint/triggers?orgid={org_name}" \ -u email:password
Berikut ini contoh responsnya:
[ { "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 }, ... ]
Anda juga dapat melihat tugas terjadwal tertentu dengan mengajukan permintaan GET ke
/triggers/{trig_id}
, dengan {trig_id}
adalah identifikasi pekerjaan
pemicu, seperti yang dijelaskan dalam Ringkasan tugas terjadwal. Contoh:
$ curl -X GET \ "http://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT" \ -u email:password
Berikut ini contoh responsnya:
{ "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 }
Memperbarui tugas terjadwal menggunakan API
Anda dapat memperbarui tugas terjadwal dengan mengubah properti pemicunya. Sebagai contoh, Anda Anda mungkin perlu mengubah jadwal eksekusi pemicu.
Untuk tugas pemicu cron (yaitu, tugas yang menyertakan nilai ekspresi cron), Anda hanya dapat
ubah nilai cronExpression
dan properti yang diaktifkan. Perubahan lainnya adalah
diabaikan. Untuk tugas yang tidak menentukan nilai ekspresi cron, Anda dapat mengubah properti lainnya
seperti startTime
atau priority
.
Untuk memperbarui tugas terjadwal, kirimkan permintaan PUT ke /triggers/{trig_id}
, dengan
{trig_id}
adalah identifikasi pemicu tugas, seperti yang dijelaskan dalam Ringkasan tugas terjadwal. Ketika melakukan pembaruan, Anda perlu menentukan
setelan yang diperbarui dan ID pemicu.
Misalnya, permintaan berikut memperbarui ekspresi cron untuk Paket Tarif Developer Baru Tugas perpanjangan untuk dijalankan setiap hari pada pukul 05.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
Menonaktifkan dan mengaktifkan kembali tugas terjadwal menggunakan API
Untuk menonaktifkan tugas terjadwal, tetapkan nilai properti enabled
dari pemicunya ke
{i>false<i}. Contoh:
$ 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
Untuk mengaktifkan kembali tugas yang dinonaktifkan, setel nilai properti enabled
pemicunya ke
benar.
Langkah berikutnya
Sebaiknya sinkronkan ulang secara berkala dengan monetisasi, organisasi Anda, dan pengembang, aplikasi, dan produk yang Anda buat menggunakan Layanan Edge API. Pelajari caranya di Menyinkronkan Data Apigee Edge dengan monetisasi.