Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemples d'Amazon SWF utilisant AWS CLI
Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l' AWS Command Line Interface aide d'Amazon SWF.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.
Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la façon de configurer et d'exécuter le code en contexte.
Rubriques
Actions
L'exemple de code suivant montre comment utilisercount-closed-workflow-executions
.
- AWS CLI
-
Comptage des exécutions de flux de travail fermés
Vous pouvez l'utiliser
swf count-closed-workflow-executions
pour récupérer le nombre d'exécutions de flux de travail fermées pour un domaine donné. Vous pouvez définir des filtres pour compter des classes d'exécutions spécifiques.Les
--start-time-filter
arguments--domain
et l'--close-time-filter
un ou l'autre sont obligatoires. Tous les autres arguments sont facultatifs.aws swf count-closed-workflow-executions \ --domain
DataFrobtzz
\ --close-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Sortie :
{ "count": 2, "truncated": false }
Si « tronqué » est « tronqué »
true
, « count » représente le nombre maximum pouvant être renvoyé par Amazon SWF. Tous les autres résultats sont tronqués.Pour réduire le nombre de résultats renvoyés, vous pouvez :
modifiez les
--start-time-filter
valeurs--close-time-filter
ou pour réduire la plage de temps recherchée. Chacune de ces options s'exclut mutuellement : vous ne pouvez en spécifier qu'une dans une demande. Utilisez les--type-filter
arguments--close-status-filter
--execution-filter
,--tag-filter
ou pour filtrer davantage les résultats. Cependant, ces arguments s'excluent également mutuellement.Voir également le CountClosedWorkflowExecutionsdocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous CountClosedWorkflowExecutions
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utilisercount-open-workflow-executions
.
- AWS CLI
-
Comptage des exécutions de flux de travail ouverts
Vous pouvez l'utiliser
swf count-open-workflow-executions
pour récupérer le nombre d'exécutions de flux de travail ouvertes pour un domaine donné. Vous pouvez définir des filtres pour compter des classes d'exécutions spécifiques.Les
--start-time-filter
arguments--domain
et sont obligatoires. Tous les autres arguments sont facultatifs.aws swf count-open-workflow-executions \ --domain
DataFrobtzz
\ --start-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Sortie :
{ "count": 4, "truncated": false }
Si « tronqué » est « tronqué »
true
, « count » représente le nombre maximum pouvant être renvoyé par Amazon SWF. Tous les autres résultats sont tronqués.Pour réduire le nombre de résultats renvoyés, vous pouvez :
modifiez les
--start-time-filter
valeurs pour réduire la plage de temps recherchée. Utilisez les--type-filter
arguments--close-status-filter
--execution-filter
,--tag-filter
ou pour filtrer davantage les résultats. Chacune de ces options s'exclut mutuellement : vous ne pouvez en spécifier qu'une dans une demande.Pour plus d'informations, consultez CountOpenWorkflowExecutions le manuel Amazon Simple Workflow Service API Reference
-
Pour plus de détails sur l'API, reportez-vous CountOpenWorkflowExecutions
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdeprecate-domain
.
- AWS CLI
-
Dépréciation d'un domaine
Pour rendre un domaine obsolète (vous pouvez toujours le voir mais vous ne pouvez pas créer de nouvelles exécutions de flux de travail ou y inscrire des types), utilisez
swf deprecate-domain
. Un seul paramètre est obligatoire,--name
, qui prend le nom du domaine à rendre obsolète.aws swf deprecate-domain \ --name
MyNeatNewDomain
""Tout comme avec
register-domain
, aucune sortie n'est renvoyée. Cependant, silist-domains
vous avez l'habitude de consulter les domaines enregistrés, vous verrez que le domaine est obsolète et n'apparaît plus dans les données renvoyées.aws swf list-domains \ --registration-status
REGISTERED
{
"domainInfos":[
{
"status": "REGISTERED", "name":"DataFrobotz"
},
{
"status": "REGISTERED", "name":"erontest"
}
]
}
Si vous utilisez
--registration-status DEPRECATED
aveclist-domains
, vous verrez votre domaine obsolète.aws swf list-domains \ --registration-status
DEPRECATED
{
"domainInfos":[
{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
}
]
}
Vous pouvez toujours l'utiliser
describe-domain
pour obtenir des informations sur un domaine obsolète.aws swf describe-domain \ --name
MyNeatNewDomain
{
"domainInfo":{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Voir également le DeprecateDomaindocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous DeprecateDomain
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-domain
.
- AWS CLI
-
Obtenir des informations sur un domaine
Pour obtenir des informations détaillées sur un domaine en particulier, utilisez la
swf describe-domain
commande. Il y a un paramètre obligatoire :--name
, qui prend le nom du domaine sur lequel vous souhaitez obtenir des informations.aws swf describe-domain \ --name
DataFrobotz
{
"domainInfo":{
"status": "REGISTERED", "name":"DataFrobotz"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"1"
}
}
Vous pouvez également l'utiliser
describe-domain
pour obtenir des informations sur les domaines obsolètes.aws swf describe-domain \ --name
MyNeatNewDomain
{
"domainInfo":{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Voir également le DescribeDomaindocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous DescribeDomain
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-activity-types
.
- AWS CLI
-
Lister les types d'activités
Pour obtenir la liste des types d'activités d'un domaine, utilisez
swf list-activity-types
. Les--registration-status
arguments--domain
et sont obligatoires.aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
Sortie :
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.451, "activityType": { "version": "1", "name": "confirm-user-email" }, "description": "subscribe confirm-user-email activity" }, { "status": "REGISTERED", "creationDate": 1371454150.709, "activityType": { "version": "1", "name": "confirm-user-phone" }, "description": "subscribe confirm-user-phone activity" }, { "status": "REGISTERED", "creationDate": 1371454149.871, "activityType": { "version": "1", "name": "get-subscription-info" }, "description": "subscribe get-subscription-info activity" }, { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" }, { "status": "REGISTERED", "creationDate": 1371454150.085, "activityType": { "version": "1", "name": "subscribe-user-sns" }, "description": "subscribe subscribe-user-sns activity" } ] }
Vous pouvez utiliser
--name
cet argument pour sélectionner uniquement les types d'activité portant un nom particulier :aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --name"send-subscription-success"
Sortie :
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" } ] }
Pour récupérer les résultats sous forme de pages, vous pouvez définir l'
--maximum-page-size
argument. Si le nombre de résultats renvoyés est supérieur à ce que peut contenir une page de résultats, un nextPageToken « » sera renvoyé dans le jeu de résultats :aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --maximum-page-size2
Sortie :
{ "nextPageToken": "AAAAKgAAAAEAAAAAAAAAA1Gp1BelJq+PmHvAnDxJYbup8+0R4LVtbXLDl7QNY7C3OpHo9Sz06D/GuFz1OyC73umBQ1tOPJ/gC/aYpzDMqUIWIA1T9W0s2DryyZX4OC/6Lhk9/o5kdsuWMSBkHhgaZjgwp3WJINIFJFdaSMxY2vYAX7AtRtpcqJuBDDRE9RaRqDGYqIYUMltarkiqpSY1ZVveBasBvlvyUb/WGAaqehiDz7/JzLT/wWNNUMOd+Nhe", "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.451, "activityType": { "version": "1", "name": "confirm-user-email" }, "description": "subscribe confirm-user-email activity" }, { "status": "REGISTERED", "creationDate": 1371454150.709, "activityType": { "version": "1", "name": "confirm-user-phone" }, "description": "subscribe confirm-user-phone activity" } ] }
Vous pouvez transmettre la nextPageToken valeur au prochain appel to
list-activity-types
dans l'--next-page-token
argument, en récupérant la page de résultats suivante :aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --maximum-page-size2
\ --next-page-token"AAAAKgAAAAEAAAAAAAAAA1Gp1BelJq+PmHvAnDxJYbup8+0R4LVtbXLDl7QNY7C3OpHo9Sz06D/GuFz1OyC73umBQ1tOPJ/gC/aYpzDMqUIWIA1T9W0s2DryyZX4OC/6Lhk9/o5kdsuWMSBkHhgaZjgwp3WJINIFJFdaSMxY2vYAX7AtRtpcqJuBDDRE9RaRqDGYqIYUMltarkiqpSY1ZVveBasBvlvyUb/WGAaqehiDz7/JzLT/wWNNUMOd+Nhe"
Sortie :
{ "nextPageToken": "AAAAKgAAAAEAAAAAAAAAAw+7LZ4GRZPzTqBHsp2wBxWB8m1sgLCclgCuq3J+h/m3+vOfFqtkcjLwV5cc4OjNAzTCuq/XcylPumGwkjbajtqpZpbqOcVNfjFxGoi0LB2Olbvv0krbUISBvlpFPmSWpDSZJsxg5UxCcweteSlFn1PNSZ/MoinBZo8OTkjMuzcsTuKOzH9wCaR8ITcALJ3SaqHU3pyIRS5hPmFA3OLIc8zaAepjlaujo6hntNSCruB4" "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454149.871, "activityType": { "version": "1", "name": "get-subscription-info" }, "description": "subscribe get-subscription-info activity" }, { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" } ] }
S'il reste encore d'autres résultats à renvoyer, nextPageToken « » sera renvoyé avec les résultats. Lorsqu'il n'y a plus de pages de résultats à renvoyer, « nextPageToken » ne sera pas renvoyé dans le jeu de résultats.
Vous pouvez utiliser l'
--reverse-order
argument pour inverser l'ordre des résultats renvoyés. Cela affecte également les résultats de la page.aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --maximum-page-size2
\ --reverse-orderSortie :
{ "nextPageToken": "AAAAKgAAAAEAAAAAAAAAAwXcpu5ePSyQkrC+8WMbmSrenuZC2ZkIXQYBPB/b9xIOVkj+bMEFhGj0KmmJ4rF7iddhjf7UMYCsfGkEn7mk+yMCgVc1JxDWmB0EH46bhcmcLmYNQihMDmUWocpr7To6/R7CLu0St1gkFayxOidJXErQW0zdNfQaIWAnF/cwioBbXlkz1fQzmDeU3M5oYGMPQIrUqkPq7pMEW0q0lK5eDN97NzFYdZZ/rlcLDWPZhUjY", "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.085, "activityType": { "version": "1", "name": "subscribe-user-sns" }, "description": "subscribe subscribe-user-sns activity" }, { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" } ] }
Voir également le ListActivityTypesdocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous ListActivityTypes
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-domains
.
- AWS CLI
-
Exemple 1 : Pour répertorier vos domaines enregistrés
L'exemple de
list-domains
commande suivant répertorie les domainesREGISTERED
SWF que vous avez enregistrés pour votre compte.aws swf list-domains \ --registration-status
REGISTERED
Sortie :
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" }, { "status": "REGISTERED", "name": "erontest" } ] }
Pour plus d'informations, consultez ListDomainsle manuel Amazon Simple Workflow Service API Reference
Exemple 2 : pour répertorier vos domaines obsolètes
L'exemple de
list-domains
commande suivant répertorie les domainesDEPRECATED
SWF que vous avez enregistrés pour votre compte. Les domaines déconseillés sont des domaines qui ne peuvent pas enregistrer de nouveaux flux de travail ou de nouvelles activités, mais qui peuvent tout de même être interrogés.aws swf list-domains \ --registration-status
DEPRECATED
Sortie :
{ "domainInfos": [ { "status": "DEPRECATED", "name": "MyNeatNewDomain" } ] }
Pour plus d'informations, consultez ListDomainsle manuel Amazon Simple Workflow Service API Reference
Exemple 3 : pour répertorier la première page des domaines enregistrés
L'exemple de
list-domains
commande suivant répertorie les domainesREGISTERED
SWF de première page que vous avez enregistrés pour votre compte à l'aide de l'--maximum-page-size
option.aws swf list-domains \ --registration-status
REGISTERED
\ --maximum-page-size1
Sortie :
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" } ], "nextPageToken": "AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ==" }
Pour plus d'informations, consultez ListDomainsle manuel Amazon Simple Workflow Service API Reference
Exemple 4 : Pour répertorier la page unique spécifiée des domaines enregistrés
L'exemple de
list-domains
commande suivant répertorie les domainesREGISTERED
SWF de première page que vous avez enregistrés pour votre compte à l'aide de l'--maximum-page-size
option.Lorsque vous effectuez à nouveau l'appel, en fournissant cette fois la valeur de
nextPageToken
dans l'--next-page-token
argument, vous obtiendrez une autre page de résultats.aws swf list-domains \ --registration-status
REGISTERED
\ --maximum-page-size1
\ --next-page-token"AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ=="
Sortie :
{ "domainInfos": [ { "status": "REGISTERED", "name": "erontest" } ] }
Lorsqu'il n'y a pas d'autres pages de résultats à extraire,
nextPageToken
n'est pas renvoyé dans les résultats.Pour plus d'informations, consultez ListDomainsle manuel Amazon Simple Workflow Service API Reference
-
Pour plus de détails sur l'API, reportez-vous ListDomains
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-workflow-types
.
- AWS CLI
-
Liste des types de flux de travail
Pour obtenir la liste des types de flux de travail pour un domaine, utilisez
swf list-workflow-types
. Les--registration-status
arguments--domain
et sont obligatoires. Voici un exemple simple.aws swf list-workflow-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
Sortie :
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454149.598, "description": "DataFrobtzz subscribe workflow", "workflowType": { "version": "v3", "name": "subscribe" } } ] }
De même
list-activity-types
, vous pouvez utiliser l'--name
argument pour sélectionner uniquement les types de flux de travail portant un nom particulier, et utiliser l'--maximum-page-size
argument en coordination avec les résultats--next-page-token
de deux pages. Pour inverser l'ordre dans lequel les résultats sont renvoyés, utilisez--reverse-order
.Voir également le ListWorkflowTypesdocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous ListWorkflowTypes
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserregister-domain
.
- AWS CLI
-
Enregistrement d'un domaine
Vous pouvez utiliser la AWS CLI pour enregistrer de nouveaux domaines. Utilisez la commande
swf register-domain
. Deux paramètres sont obligatoires : l'un prend le nom du domaine et--workflow-execution-retention-period-in-days
l'autre prend un entier pour spécifier le nombre de jours pendant lesquels les données d'exécution du flux de travail sont conservées sur ce domaine, jusqu'à une période maximale de 90 jours (pour plus d'informations, consultez la FAQ SWF < https://aws.amazon.com/swf/ faqs/ #retain_limit >).--name
Les données d'exécution du flux de travail ne seront pas conservées une fois le nombre de jours spécifié écoulé.aws swf register-domain \ --name
MyNeatNewDomain
\ --workflow-execution-retention-period-in-days0
""Lorsque vous inscrivez un domaine, aucune donnée n'est renvoyée (« »), mais vous pouvez utiliser
swf list-domains
ouswf describe-domain
pour voir le nouveau domaine.aws swf list-domains \ --registration-status
REGISTERED
{
"domainInfos":[
{
"status": "REGISTERED", "name":"DataFrobotz"
},
{
"status": "REGISTERED", "name":"MyNeatNewDomain"
},
{
"status": "REGISTERED", "name":"erontest"
}
]
}
En utilisant
swf describe-domain
:aws swf describe-domain --name
MyNeatNewDomain
{
"domainInfo":{
"status": "REGISTERED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Voir également le RegisterDomaindocument de référence sur l'API Amazon Simple Workflow Service
-
Pour plus de détails sur l'API, reportez-vous RegisterDomain
à la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserregister-workflow-type
.
- AWS CLI
-
Enregistrement d'un type de flux de travail
Pour enregistrer un type de flux de travail auprès de la AWS CLI, utilisez la
swf register-workflow-type
commande.aws swf register-workflow-type \ --domain
DataFrobtzz
\ --name"MySimpleWorkflow"
\ --workflow-version"v1"
En cas de succès, la commande ne produit aucune sortie.
En cas d'erreur (par exemple, si vous essayez d'enregistrer deux fois le même type de flux de travail ou si vous spécifiez un domaine qui n'existe pas), vous obtiendrez une réponse au format JSON.
{ "message": "WorkflowType=[name=MySimpleWorkflow, version=v1]", "__type": "com.amazonaws.swf.base.model#TypeAlreadyExistsFault" }
Les
--domain
,--name
et--workflow-version
sont obligatoires. Vous pouvez également définir la description du flux de travail, les délais d'expiration et la politique du flux de travail pour enfants.Pour plus d'informations, consultez RegisterWorkflowTypele manuel Amazon Simple Workflow Service API Reference
-
Pour plus de détails sur l'API, reportez-vous RegisterWorkflowType
à la section Référence des AWS CLI commandes.
-