Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di Amazon SWF con AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando Amazon SWF. AWS Command Line Interface
Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come usarecount-closed-workflow-executions.
- AWS CLI
-
Conteggio delle esecuzioni del flusso di lavoro chiuso
È possibile utilizzare
swf count-closed-workflow-executionsper recuperare il numero di flussi di lavoro chiusi per un determinato dominio. È possibile specificare dei filtri per contare classi specifiche di esecuzioni.Gli argomenti
--domaine sia--close-time-filterche--start-time-filtersono obbligatori. Tutti gli altri argomenti sono facoltativi.aws swf count-closed-workflow-executions \ --domainDataFrobtzz\ --close-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Output:
{ "count": 2, "truncated": false }Se “truncated” è
true, allora “count” rappresenta il numero massimo che può essere restituito da Amazon SWF. Eventuali ulteriori risultati vengono troncati.Per ridurre il numero di risultati restituiti, puoi:
modificare i valori
--start-time-filtero--close-time-filterper restringere l’intervallo di tempo in cui viene effettuata la ricerca. Ciascuno di questi si esclude a vicenda: puoi specificarne solo uno in una richiesta. Utilizza gli argomenti--close-status-filter,--execution-filter,--tag-filtero--type-filterper filtrare ulteriormente i risultati. Tuttavia, anche questi argomenti si escludono a vicenda.Vedi anche CountClosedWorkflowExecutionsnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta CountClosedWorkflowExecutions AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecount-open-workflow-executions.
- AWS CLI
-
Conteggio delle esecuzioni del flusso di lavoro aperto
È possibile utilizzare
swf count-open-workflow-executionsper recuperare il numero di flussi di lavoro aperti per un determinato dominio. È possibile specificare dei filtri per contare classi specifiche di esecuzioni.Gli argomenti
--domaine--start-time-filtersono obbligatori. Tutti gli altri argomenti sono facoltativi.aws swf count-open-workflow-executions \ --domainDataFrobtzz\ --start-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Output:
{ "count": 4, "truncated": false }Se “truncated” è
true, allora “count” rappresenta il numero massimo che può essere restituito da Amazon SWF. Eventuali ulteriori risultati vengono troncati.Per ridurre il numero di risultati restituiti, puoi:
modificare i valori
--start-time-filterper restringere l’intervallo di tempo in cui viene effettuata la ricerca. Utilizza gli argomenti--close-status-filter,--execution-filter,--tag-filtero--type-filterper filtrare ulteriormente i risultati. Ciascuno di questi si esclude a vicenda: è possibile specificare solo uno di questi in una richiesta.Per ulteriori informazioni, consulta il riferimento CountOpenWorkflowExecutions all'API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta CountOpenWorkflowExecutions AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredeprecate-domain.
- AWS CLI
-
Deprecare un dominio
Per impostare come obsoleto un dominio (che resta comunque visibile, ma non può essere utilizzato per creare nuove esecuzioni di flussi di lavoro o registrare tipi), utilizza
swf deprecate-domain. Esiste un solo parametro obbligatorio,--name, che assume il nome del dominio da dichiarare obsoleto.aws swf deprecate-domain \ --nameMyNeatNewDomain""Come per
register-domain, non viene restituito alcun output. Se tuttavia utilizzilist-domainsper visualizzare i domini registrati, vedrai che il dominio è stato dichiarato obsoleto e non compare più tra i dati restituiti.aws swf list-domains \ --registration-statusREGISTERED{"domainInfos":[{"status": "REGISTERED", "name":"DataFrobotz"},{"status": "REGISTERED", "name":"erontest"}]}Se utilizzi
--registration-status DEPRECATEDconlist-domainsvedrai il tuo dominio obsoleto.aws swf list-domains \ --registration-statusDEPRECATED{"domainInfos":[{"status": "DEPRECATED", "name":"MyNeatNewDomain"}]}Puoi ancora utilizzare
describe-domainper ottenere informazioni su un dominio obsoleto.aws swf describe-domain \ --nameMyNeatNewDomain{"domainInfo":{"status": "DEPRECATED", "name":"MyNeatNewDomain"},"configuration":{"workflowExecutionRetentionPeriodInDays":"0"}}Vedi anche DeprecateDomainnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta DeprecateDomain AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-domain.
- AWS CLI
-
Ottenere informazioni su un dominio
Per ottenere informazioni dettagliate su un dominio specifico, utilizza il comando
swf describe-domain. Esiste un solo parametro obbligatorio:--name, che assume il nome del dominio su cui si desidera ottenere informazioni.aws swf describe-domain \ --nameDataFrobotz{"domainInfo":{"status": "REGISTERED", "name":"DataFrobotz"},"configuration":{"workflowExecutionRetentionPeriodInDays":"1"}}Puoi anche utilizzare
describe-domainper ottenere informazioni sui domini obsoleti.aws swf describe-domain \ --nameMyNeatNewDomain{"domainInfo":{"status": "DEPRECATED", "name":"MyNeatNewDomain"},"configuration":{"workflowExecutionRetentionPeriodInDays":"0"}}Vedi anche DescribeDomainnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta DescribeDomain AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-activity-types.
- AWS CLI
-
Elenco dei tipi di attività
Per ottenere un elenco dei tipi di attività per un dominio, utilizza
swf list-activity-types. Gli argomenti--domaine--registration-statussono obbligatori.aws swf list-activity-types \ --domainDataFrobtzz\ --registration-statusREGISTEREDOutput:
{ "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" } ] }Puoi utilizzare l’argomento
--nameper selezionare solo i tipi di attività con un nome particolare:aws swf list-activity-types \ --domainDataFrobtzz\ --registration-statusREGISTERED\ --name"send-subscription-success"Output:
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" } ] }Per recuperare i risultati nelle pagine, puoi impostare l’argomento
--maximum-page-size. Se vengono restituiti più risultati di quelli contenuti in una pagina di risultati, verrà restituito un nextPageToken "" nel set di risultati:aws swf list-activity-types \ --domainDataFrobtzz\ --registration-statusREGISTERED\ --maximum-page-size2Output:
{ "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" } ] }È possibile passare il nextPageToken valore alla chiamata successiva
list-activity-typesall'--next-page-tokenargomento, recuperando la pagina successiva di risultati:aws swf list-activity-types \ --domainDataFrobtzz\ --registration-statusREGISTERED\ --maximum-page-size2\ --next-page-token"AAAAKgAAAAEAAAAAAAAAA1Gp1BelJq+PmHvAnDxJYbup8+0R4LVtbXLDl7QNY7C3OpHo9Sz06D/GuFz1OyC73umBQ1tOPJ/gC/aYpzDMqUIWIA1T9W0s2DryyZX4OC/6Lhk9/o5kdsuWMSBkHhgaZjgwp3WJINIFJFdaSMxY2vYAX7AtRtpcqJuBDDRE9RaRqDGYqIYUMltarkiqpSY1ZVveBasBvlvyUb/WGAaqehiDz7/JzLT/wWNNUMOd+Nhe"Output:
{ "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" } ] }Se ci sono ancora altri risultati da restituire, verrà restituito nextPageToken "" con i risultati. Quando non ci sono più pagine di risultati da restituire, "nextPageToken" non verrà restituito nel set di risultati.
È possibile utilizzare l’argomento
--reverse-orderper invertire l’ordine dei risultati restituiti. Ciò influisce anche sui risultati paginati.aws swf list-activity-types \ --domainDataFrobtzz\ --registration-statusREGISTERED\ --maximum-page-size2\ --reverse-orderOutput:
{ "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" } ] }Vedi anche ListActivityTypesnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta ListActivityTypes AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-domains.
- AWS CLI
-
Esempio 1: come elencare i domini registrati
Il comando
list-domainsseguente elenca i dominiREGISTEREDSWF che hai registrato per il tuo account.aws swf list-domains \ --registration-statusREGISTEREDOutput:
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" }, { "status": "REGISTERED", "name": "erontest" } ] }Per ulteriori informazioni, consulta il riferimento ListDomainsall'API di Amazon Simple Workflow Service
Esempio 2: come elencare i domini obsoleti
Il comando
list-domainsseguente elenca i dominiDEPRECATEDSWF che hai registrato per il tuo account. I domini obsoleti sono domini che non possono registrare nuovi flussi di lavoro o attività, ma che possono comunque essere interrogati.aws swf list-domains \ --registration-statusDEPRECATEDOutput:
{ "domainInfos": [ { "status": "DEPRECATED", "name": "MyNeatNewDomain" } ] }Per ulteriori informazioni, consulta il riferimento ListDomainsall'API di Amazon Simple Workflow Service
Esempio 3: come elencare la prima pagina dei domini registrati
Il comando
list-domainsseguente elenca i dominiREGISTEREDSWF della prima pagina che hai registrato per il tuo account utilizzando l’opzione--maximum-page-size.aws swf list-domains \ --registration-statusREGISTERED\ --maximum-page-size1Output:
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" } ], "nextPageToken": "AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ==" }Per ulteriori informazioni, consulta il riferimento ListDomainsall'API di Amazon Simple Workflow Service
Esempio 4: come elencare la pagina singola specificata dei domini registrati
Il comando
list-domainsseguente elenca i dominiREGISTEREDSWF della prima pagina che hai registrato per il tuo account utilizzando l’opzione--maximum-page-size.Quando effettuerai nuovamente la chiamata, fornendo il valore di
nextPageTokennell’argomento--next-page-token, riceverai un’altra pagina di risultati.aws swf list-domains \ --registration-statusREGISTERED\ --maximum-page-size1\ --next-page-token"AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ=="Output:
{ "domainInfos": [ { "status": "REGISTERED", "name": "erontest" } ] }Quando le pagine dei risultati da recuperare saranno terminate,
nextPageTokennon verrà restituito nei risultati.Per ulteriori informazioni, consulta il riferimento ListDomainsall'API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta ListDomains AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-workflow-types.
- AWS CLI
-
Elenco dei tipi di flusso di lavoro
Per ottenere un elenco dei tipi di flusso di lavoro per un dominio, utilizza
swf list-workflow-types. Gli argomenti--domaine--registration-statussono obbligatori. Ecco un semplice esempio.aws swf list-workflow-types \ --domainDataFrobtzz\ --registration-statusREGISTEREDOutput:
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454149.598, "description": "DataFrobtzz subscribe workflow", "workflowType": { "version": "v3", "name": "subscribe" } } ] }Come con
list-activity-types, è possibile utilizzare l’argomento--nameper selezionare solo i tipi di flusso di lavoro con un nome particolare e utilizzare l’argomento--maximum-page-sizein coordinamento con--next-page-tokenper i risultati della pagina. Per invertire l’ordine in cui vengono restituiti i risultati, utilizza--reverse-order.Vedi anche ListWorkflowTypesnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta ListWorkflowTypes AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareregister-domain.
- AWS CLI
-
Registrazione di un dominio
Puoi usare la AWS CLI per registrare nuovi domini. Utilizza il comando
swf register-domain. Sono necessari due parametri--name, che richiedono il nome di dominio e--workflow-execution-retention-period-in-daysun numero intero per specificare il numero di giorni necessari per conservare i dati di esecuzione del flusso di lavoro su questo dominio, fino a un periodo massimo di 90 giorni (per ulteriori informazioni, consultate le domande frequenti su SWF < faqs/ #retain_limit >). https://aws.amazon.com/swf/ I dati di esecuzione dei flussi di lavoro non saranno conservati una volta superato il numero di giorni specificato.aws swf register-domain \ --nameMyNeatNewDomain\ --workflow-execution-retention-period-in-days0""Quando si registra un dominio, non viene restituito alcun valore (""), ma è possibile utilizzare
swf list-domainsoswf describe-domainper visualizzare il nuovo dominio.aws swf list-domains \ --registration-statusREGISTERED{"domainInfos":[{"status": "REGISTERED", "name":"DataFrobotz"},{"status": "REGISTERED", "name":"MyNeatNewDomain"},{"status": "REGISTERED", "name":"erontest"}]}Con
swf describe-domain:aws swf describe-domain --nameMyNeatNewDomain{"domainInfo":{"status": "REGISTERED", "name":"MyNeatNewDomain"},"configuration":{"workflowExecutionRetentionPeriodInDays":"0"}}Vedi anche RegisterDomainnel riferimento alle API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta RegisterDomain AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareregister-workflow-type.
- AWS CLI
-
Registrazione di un tipo di workflow
Per registrare un tipo di workflow con la AWS CLI, utilizzate il
swf register-workflow-typecomando.aws swf register-workflow-type \ --domainDataFrobtzz\ --name"MySimpleWorkflow"\ --workflow-version"v1"Se il comando ha esito positivo, non produce alcun output.
In caso di errore (ad esempio, se provi a registrare due volte lo stesso tipo di flusso di lavoro o specifichi un dominio che non esiste) riceverai una risposta in JSON.
{ "message": "WorkflowType=[name=MySimpleWorkflow, version=v1]", "__type": "com.amazonaws.swf.base.model#TypeAlreadyExistsFault" }--domain,--namee--workflow-versionsono obbligatori. Puoi anche impostare la descrizione del flusso di lavoro, i timeout e la policy del flusso di lavoro secondario.Per ulteriori informazioni, consulta il riferimento RegisterWorkflowTypeall'API di Amazon Simple Workflow Service
-
Per i dettagli sull'API, consulta RegisterWorkflowType AWS CLI
Command Reference.
-