<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Présentation des jobs planifiés
La monétisation fournit un planificateur de jobs et un ensemble de jobs préprogrammés pour s'exécuter à à l'heure indiquée.
Le tableau ci-dessous liste les missions préprogrammées fournies par la monétisation et les heures auxquelles elles sont (toutes les heures indiquées sont exprimées en temps UTC). Le déclencheur pour chaque tâche est également indiqué.
Tâche | Description | Planification (UTC) | Déclencheur |
---|---|---|---|
Taux mensuel de la taxe pour les développeurs | Extrait le taux de taxe auprès du moteur fiscal de chaque développeur et le met à jour. entité avec le taux de taxe révisé. | Premier jour de chaque mois à 5h45 | MINT.MONTHLY_DEV_TAXRATE@@@ |
Renouveler l'abonnement | Applique des frais récurrents pour les plans tarifaires actifs ou de nouveaux frais pour les plans tarifaires futurs qui le jour même. | Tous les jours à 5 secondes après minuit | MINT.RENEW_SUBSCRIPTIONS@@@ |
Outil de mise à jour XeFeed | Récupère le taux de change en dollars américains pour chaque devise acceptée. | Tous les jours à une seconde après minuit | MINT.XEFEED@@@ |
Renouveler le forfait développeur | Reporte les dates de renouvellement d'un plan tarifaire et calcule les frais de résiliation anticipée. | Tous les jours à 2h20 | MINT.RENEW_DEV_RATEPLAN@@@ |
Réessayer le relais de transaction | Remarque: Cette tâche est obsolète et n'a aucune incidence sur la monétisation. | Tous les jours à 4h30 | MINT.RETRY_TX_RELAY@@@ |
Nettoyant de transactions | Remarque: Cette tâche est obsolète et n'a aucune incidence sur la monétisation. | Tous les jours à 5h30 | MINT.TX_CLEANSER@@@ |
Audit du solde des comptes développeur | Effectue un audit du solde du compte de développeur. Copie l'utilisation actuelle et les données prépayées limite de crédit/post-payée dans une table d'audit, puis déduit l'utilisation actuelle développeur Google Cloud et remet le solde d'utilisation à zéro. | Premier jour de chaque mois cinq secondes après minuit | MINT.DEVELOPER_BALANCE_AUDIT@@@ |
Documentation sur la facturation mensuelle | Génère des documents de facturation. Remarque:Apigee n'est plus compatible avec la génération de documents de facturation à partir de la monétisation Apigee Edge. Consultez la section Retraits. |
Le 11 de chaque mois à une minute après minuit | MINT.MONTLY_BILLING_DOCS@@@ |
Compteur du plan tarifaire pour les développeurs | Remarque: Cette tâche est obsolète et n'a aucune incidence sur la monétisation. | Tous les jours à 3 secondes après minuit | MINT.RESET_DEVELOPER_RATE_PLAN_COUNTER@@@ |
Frais quotidiens | Il recalcule tous les totaux de transactions horaires et les utilise pour calculer les totaux quotidiens pour les jour précédent. | Tous les jours à 1h20 | MINT.CHARGE_DAILY@@@ |
Frais horaires | Calcule le total des transactions pour chaque quart d'heure. | 1 minute après chaque quart d'heure | MINT.CHARGE_HOURLY@@@ |
Actualiser la configuration des notifications | Réindexe toutes les conditions de notification. | Toutes les 5 minutes | MINT.REFRESH_NOTIFICATION_CONFIG@@@ |
Envoyer des notifications par e-mail | Envoie des notifications par e-mail accumulées | Toutes les heures | MINT.EMAIL_NOTIFICATION@@@ |
Limite d'actualisation | Remarque: Cette tâche est obsolète et n'a aucune incidence sur la monétisation. | N/A (ne s'exécute jamais) | MINT.REFRESH_LIMIT@@@ |
En plus des jobs listés ci-dessus, vous pouvez activer des jobs via des événements des notifications, comme indiqué dans le tableau suivant. Pour en savoir plus, consultez Configurer les notifications.
Job | Description | Programmer | Déclencheur |
---|---|---|---|
Notification de nouveau colis | Envoie une notification à tous les développeurs pour les informer qu'un nouveau package d'API est disponible. |
S'exécute une fois:le jour où le job est activé à 21h
Remarque: Les notifications ne sont envoyées qu'une seule fois, que vous passiez ou non
configurer un |
MINT.NEW_PACKAGE_NOTIFY@@@ |
Nouvelle notification ponctuelle | Envoie une notification à tous les développeurs indiquant que de nouveaux produits d'API sont disponibles dans des marchés géographiques. |
S'exécute une fois:le jour où le job est activé à 21h
Remarque: Les notifications ne sont envoyées qu'une seule fois, que vous passiez ou non
configurer un |
MINT.ADHOC_NOTIFY@@@ |
Notification de nouveau produit | Envoie une notification à tous les développeurs pour les informer qu'un nouveau produit d'API est disponible. |
S'exécute une fois:le jour où le job est activé à 21h
Remarque: Les notifications ne sont envoyées qu'une seule fois, que vous passiez ou non
configurer un |
MINT.NEW_PRODUCT_NOTIFY@@@ |
Notification de nouveau plan tarifaire |
Envoie une notification aux développeurs concernés pour les informer qu'un nouveau plan tarifaire est disponible. Tout les développeurs abonnés au plan tarifaire parent sont informés qu'un nouveau plan tarifaire actif. Notez en outre les points suivants :
|
S'exécute à la date de début du nouveau plan tarifaire, à 4h30 | MINT.NEW_RATEPLAN_NOTIFY@@@ |
Nouvelle tnc | Envoie une notification aux développeurs concernés pour les nouvelles ou les modifications des conditions d'utilisation ont été publiés (et que le développeur ne les a pas encore acceptées). | Exécution 30, 7 et 1 jour avant la date de début des conditions d'utilisation nouvelles ou révisées à 21:00 | MINT.TNC_ACCEPTANCE_NOTIFY@@@ |
Plan tarifaire arrivant à expiration | Envoie une notification aux développeurs concernés pour les prévenir qu'un plan tarifaire va expirer. | Exécution 30, 7 et 1 jour avant l'expiration du plan tarifaire, à 21h | MINT.EXPIRING_RATE_PLAN_NOTIFY@@@ |
Gérer le calendrier des tâches de monétisation à l'aide de l'API
Les sections suivantes décrivent comment gérer le calendrier des tâches de monétisation à l'aide de l'API:
- Configurer des déclencheurs
- Créer des expressions Cron
- Afficher les tâches planifiées à l'aide de l'API
- Mettre à jour des jobs planifiés à l'aide de l'API
- Désactiver et réactiver une tâche planifiée à l'aide du API
Pour en savoir plus sur les API décrites dans cette section, consultez Tâches planifiées dans l'API. référence.
Configurer les déclencheurs
L'ordonnanceur s'appuie sur des déclencheurs pour exécuter des jobs. Un job planifié s'exécute lorsqu'il est associé du déclencheur s'exécute. Les propriétés d'un déclencheur configurent l'exécution du job et, en définissant le paramètre valeur de ces propriétés, vous pouvez contrôler les caractéristiques d'exécution du job, par exemple lorsqu'un job exécute et à quelle fréquence.
Les deux types de déclencheurs les plus courants sont les déclencheurs Cron et les déclencheurs simples
déclencheurs. Un déclencheur Cron possède une propriété cronExpression
qui spécifie une
du calendrier d'exécution. Un déclencheur simple ne possède pas de propriété cronExpression
. vous
spécifier startTime
pour indiquer à quel moment le déclencheur entre en vigueur ;
et éventuellement endTime
.
Les propriétés du déclencheur sont les suivantes (toutes les heures indiquées sont exprimées en temps UTC):
Propriété | Description |
---|---|
cronExpression |
Expression Cron permettant de créer un calendrier d'exécution pour le déclencheur, par exemple : "À 8:00 A.M.
tous les lundis au vendredis." ou "À 1 h 30 du matin tous les derniers vendredis du mois". Voir
Consultez la section Créer des expressions Cron pour en savoir plus.
Cette propriété définit le déclencheur en tant que déclencheur Cron. Remarque: Si |
enabled |
Indicateur qui indique si l'exécution du déclencheur est activée. Cette valeur peut être l'une des suivantes :
les éléments suivants:
<ph type="x-smartling-placeholder">
|
endTime |
Heure au format epoch lorsque la planification du déclencheur n'est plus appliquée. |
group |
Type de serveur sur lequel le déclencheur s'exécutera. Par exemple, si le déclencheur est
censé s'exécuter sur un serveur de gestion, la valeur doit être définie sur
management-server Si le déclencheur est censé s'exécuter dans un message
serveur de traitement, la valeur doit être définie sur message-processor . |
id |
Identification du déclencheur. |
jobId |
Identification de la tâche à exécuter. |
name |
Nom unique permettant d'identifier le déclencheur. |
priority |
Priorité d'exécution relative des déclencheurs si l'exécution de plusieurs déclencheurs est planifiée
en même temps. Plus la valeur est faible, plus la priorité est élevée. Par exemple, si deux déclencheurs
sont programmés pour s'exécuter en même temps, et si l'un des déclencheurs a la priorité 1 et que
ou une priorité de 2, le déclencheur de priorité 1 s'exécute en premier.
Cette propriété ne s'applique que si plusieurs déclencheurs ont exactement la même exécution en temps réel. |
startTime |
S'applique uniquement aux déclencheurs simples.
Heure au format epoch lors de l'entrée en vigueur de la planification du déclencheur. Remarque: Si
|
suiteId |
Indicateur spécifiant si la partie notification du niveau système ou au niveau par défaut
une suite de notifications. Les valeurs valides sont DEFAULT ou SYSTEM , ou
vous pouvez indiquer un nom de suite unique. |
triggerDataMap |
Clé de verrouillage, custom_lock_key , qui empêche l'exécution de plusieurs serveurs
la même tâche au même moment. |
Créer des expressions Cron
Une expression Cron est une chaîne composée de six ou sept champs séparés par un espace. La
représente un ensemble de durées, généralement sous la forme d'une programmation d'exécution d'une routine. cron
Les expressions spécifiées dans la propriété cronExpression
d'un déclencheur sont utilisées
pour planifier l'exécution de ce déclencheur.
s
m h dm m dw y
Où :
Champ | Description | Obligatoire | Valeurs autorisées | Caractères spéciaux autorisés |
---|---|---|---|---|
s |
Secondes | Oui | 0-59 | , - * / |
m |
Minutes | Oui | 0-59 | , - * / |
h |
Heures | Oui | 0-23 | , - * / |
dm |
Jour du mois | Oui | 0-31 | , - * ? / L W |
m |
Mois | Oui | 1-12 ou JAN-DEC | , - * / |
dw |
Jour de la semaine | Oui | 1-7 ou SUN-SAT | , - * ? / L # |
y |
Année | Non | Vide ou 1970-2099 | , - * / |
Les caractères spéciaux sont définis comme suit:
Caractère spécial | Description |
---|---|
* | Permet de sélectionner toutes les valeurs d'un champ. Par exemple, * dans le champ des minutes signifie chaque minute. |
? | Utilisé pour spécifier quelque chose dans l'un des deux champs dans lesquels le caractère est autorisé, mais pas l'autre. Par exemple, si vous souhaitez que le déclencheur s'exécute un jour donné le mois (le 10, par exemple), mais que le jour de la semaine importe peu, indiquez 10 dans champ « months » et « ? dans le champ du jour de la semaine. |
- | Permet de spécifier des plages. Par exemple, 10-12 dans le champ heure signifie les heures 10, 11 et 12. |
, | Permet de spécifier des valeurs supplémentaires. Exemple : MON,WED,VEN dans le champ du jour de la semaine. correspond aux jours lundi, mercredi et vendredi. |
/ | Permet de spécifier des incréments. Par exemple, 0/15 dans le champ des secondes signifie les secondes 0, 15, 30 et 45. Et 5/15 dans le champ des secondes correspond aux secondes 5, 20, 35 et 50. Vous pouvez spécifiez également / après le " . Cela revient à ajouter 0 avant /. Si vous indiquez 1/3 dans le champ du jour du mois, la requête sera exécutée tous les 3 jours jour du mois. |
L | a une signification différente dans chacun des deux champs pour lesquels elle est autorisée ; L le jour de mois signifie le dernier jour du mois, c'est-à-dire le jour 31 pour janvier, ou le jour 28 pour février les années non bissextiles. Dans le champ jour de la semaine, L signifie le dernier jour de la semaine, c’est-à-dire 7 ou SAT. Mais s'il est utilisé dans le champ du jour de la semaine après une autre valeur, cela signifie que le dernier jour du mois. Par exemple, 6L correspond au dernier vendredi du mois. |
W | Permet de spécifier le jour de la semaine (du lundi au vendredi) le plus proche du jour donné. Par exemple, si vous spécifie 15W dans le champ du jour du mois, cela signifie que le jour de la semaine le plus proche du 15 mois. Ainsi, si le 15 est un samedi, le déclencheur s'exécutera le vendredi 14. Si le Le 15 est un dimanche, et le déclencheur s'exécutera le lundi 16. Si le 15 est un mardi, elle s'exécutera mardi 15. Cependant, si vous spécifiez 1W pour le jour du mois, et que le 1er est un samedi, le déclencheur s'exécutera le lundi 3, car il ne "sauter" sur la limite des jours d'un mois. Le caractère W ne peut être spécifié que lorsque le jour du mois est un jour unique, et non une plage de jours ou une liste de jours. |
# | Permet de spécifier le jour XXX du mois. Par exemple, la valeur 6#3 le jour champ week signifie le troisième vendredi du mois (jour 6 = vendredi et n° 3 = le 3e au cours du mois). Autres exemples: 2#1 = le premier lundi du mois, 4#5 = le cinquième Mercredi du mois |
Voici quelques exemples d'expressions Cron (toutes les heures indiquées sont exprimées en temps UTC):
Expression Cron | Calendrier d'exécution |
---|---|
0 0 12 * * ? | 12:00 (midi) tous les jours. |
0 15 10 * * ? 2013 | 10h15 tous les jours de l’année 2013. |
0 10,44 14 ? 3 MER. | 14:10 et à 14h44 tous les mercredis du mois de mars. |
0 15 10 ? * 6L 2013-2015 | 10h15 le dernier vendredi de chaque mois des années 2013, 2014 et 2015. |
0 15 10 ? * 6#3 | 10h15 le troisième vendredi de chaque mois. |
Afficher les jobs planifiés à l'aide de l'API
Vous pouvez afficher toutes les tâches actuellement planifiées en envoyant une demande GET à
/triggers?orgid={org_name}
Exemple :
$ curl -H "Accept:application/json" -X GET \ "http://localhost:8080/v1/mint/triggers?orgid={org_name}" \ -u email:password
Voici un exemple de réponse :
[ { "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 }, ... ]
Vous pouvez également afficher une tâche planifiée spécifique en envoyant une demande GET à
/triggers/{trig_id}
, où {trig_id}
est l'identification de la tâche.
comme décrit dans la section Présentation des jobs planifiés. Exemple :
$ curl -X GET \ "http://localhost:8080/v1/mint/triggers/MINT.RENEW_DEV_RATEPLAN@@@management-server@@@DEFAULT@@@management-server@@@DEFAULT" \ -u email:password
Voici un exemple de réponse :
{ "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 }
Mettre à jour des jobs planifiés à l'aide de l'API
Vous pouvez mettre à jour une tâche planifiée en modifiant les propriétés de son déclencheur. Par exemple : vous devrez peut-être modifier le calendrier d'exécution du déclencheur.
Pour les tâches de déclencheur Cron (c'est-à-dire les tâches qui incluent une valeur d'expression Cron), vous ne pouvez
modifier les valeurs de cronExpression
et les propriétés activées. Les autres modifications sont
sont ignorées. Pour les tâches qui ne spécifient pas de valeur d'expression Cron, vous pouvez modifier d'autres propriétés
comme startTime
ou priority
.
Pour mettre à jour une tâche planifiée, envoyez une requête PUT à /triggers/{trig_id}
, où
{trig_id}
est l'identification du déclencheur de tâche, comme décrit dans la présentation des tâches planifiées. Lorsque vous effectuez la mise à jour, vous devez spécifier dans
dans le corps de la requête, les paramètres mis à jour et l'ID du déclencheur.
Par exemple, la requête suivante met à jour l'expression Cron pour le nouveau plan tarifaire pour les développeurs Tâche de renouvellement à exécuter tous les jours à 5h 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
Désactiver et réactiver une tâche planifiée à l'aide de l'API
Pour désactiver une tâche planifiée, définissez la valeur de la propriété enabled
de son déclencheur sur
"false". Exemple :
$ 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
Pour réactiver une tâche désactivée, définissez la valeur de la propriété enabled
de son déclencheur sur
"true".
Étapes suivantes
Il est conseillé de resynchroniser régulièrement les paramètres de monétisation développeurs, applications et produits que vous avez créés à l'aide des services d'API Edge. Découvrez comment faire dans Synchroniser Données Apigee Edge avec monétisation