Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
SWFEjemplos de Amazon que utilizan AWS CLI
Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes AWS Command Line Interface mediante AmazonSWF.
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.
Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.
Temas
Acciones
En el siguiente ejemplo de código se muestra cómo usar count-closed-workflow-executions
.
- AWS CLI
-
Recuento de ejecuciones de flujos de trabajo cerrados
Se puede utilizar
swf count-closed-workflow-executions
para recuperar el número de ejecuciones de flujos de trabajo cerrados de un dominio determinado. Puede especificar filtros para contar clases específicas de ejecuciones.Los
--start-time-filter
argumentos--domain
y uno--close-time-filter
o dos son obligatorios. Todos los demás argumentos son opcionales.aws swf count-closed-workflow-executions \ --domain
DataFrobtzz
\ --close-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Salida:
{ "count": 2, "truncated": false }
Si «truncado» es
true
, «recuento» representa el número máximo que puede devolver Amazon. SWF Los demás resultados se truncan.Para reducir el número de resultados devueltos, puede:
modificar los
--start-time-filter
valores--close-time-filter
o para reducir el intervalo de tiempo en el que se busca. Cada uno de ellos se excluye mutuamente: solo puede especificar uno de ellos en una solicitud. Utilice los--type-filter
argumentos--close-status-filter
--execution-filter
,--tag-filter
o para filtrar aún más los resultados. Sin embargo, estos argumentos también se excluyen mutuamente.Consulte también CountClosedWorkflowExecutionsen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte CountClosedWorkflowExecutions
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar count-open-workflow-executions
.
- AWS CLI
-
Recuento de ejecuciones de flujos de trabajo abiertos
Se puede utilizar
swf count-open-workflow-executions
para recuperar el número de ejecuciones de flujos de trabajo abiertos de un dominio determinado. Puede especificar filtros para contar clases específicas de ejecuciones.Los
--start-time-filter
argumentos--domain
y son obligatorios. Todos los demás argumentos son opcionales.aws swf count-open-workflow-executions \ --domain
DataFrobtzz
\ --start-time-filter "{ \"latestDate\" : 1377129600, \"oldestDate\" : 1370044800 }"Salida:
{ "count": 4, "truncated": false }
Si «truncado» es
true
, «recuento» representa el número máximo que puede devolver Amazon. SWF Los demás resultados se truncan.Para reducir el número de resultados devueltos, puede:
modifique los
--start-time-filter
valores para reducir el intervalo de tiempo en el que se busca. Utilice los--close-status-filter
--type-filter
argumentos--tag-filter
o para--execution-filter
filtrar aún más los resultados. Cada uno de ellos se excluye mutuamente: solo puede especificar uno de ellos en una solicitud.Para obtener más información, consulte CountOpenWorkflowExecutions la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte CountOpenWorkflowExecutions
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar deprecate-domain
.
- AWS CLI
-
Cómo dejar en desuso un dominio
Para dar de baja un dominio (aunque todavía podrá verlo, no podrá crear nuevas ejecuciones de flujo de trabajo ni tipos de registro en él), use
swf deprecate-domain
. Solo tiene un parámetro necesario,--name
, que toma el nombre del dominio que se va a descartar.aws swf deprecate-domain \ --name
MyNeatNewDomain
""Al igual que ocurre con
register-domain
, no se devuelve ningún resultado. Sin embargo, silist-domains
solía ver los dominios registrados, verá que el dominio ha quedado obsoleto y ya no aparece en los datos devueltos.aws swf list-domains \ --registration-status
REGISTERED
{
"domainInfos":[
{
"status": "REGISTERED", "name":"DataFrobotz"
},
{
"status": "REGISTERED", "name":"erontest"
}
]
}
Si lo usas
--registration-status DEPRECATED
conlist-domains
, verás tu dominio obsoleto.aws swf list-domains \ --registration-status
DEPRECATED
{
"domainInfos":[
{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
}
]
}
Puedes seguir utilizándolo
describe-domain
para obtener información sobre un dominio obsoleto.aws swf describe-domain \ --name
MyNeatNewDomain
{
"domainInfo":{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Consulte también DeprecateDomainen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte DeprecateDomain
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar describe-domain
.
- AWS CLI
-
Obtener información sobre un dominio
Para obtener información detallada sobre un dominio en particular, utilice el
swf describe-domain
comando. Hay un parámetro necesario:--name
, que lleva el nombre del dominio sobre el que desee información.aws swf describe-domain \ --name
DataFrobotz
{
"domainInfo":{
"status": "REGISTERED", "name":"DataFrobotz"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"1"
}
}
También se puede utilizar
describe-domain
para obtener información sobre los dominios obsoletos.aws swf describe-domain \ --name
MyNeatNewDomain
{
"domainInfo":{
"status": "DEPRECATED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Consulte también DescribeDomainen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte DescribeDomain
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar list-activity-types
.
- AWS CLI
-
Listado de tipos de actividades
Para obtener una lista de los tipos de actividad de un dominio, utilice
swf list-activity-types
. Los--registration-status
argumentos--domain
y son obligatorios.aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
Salida:
{ "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" } ] }
Puede usar el
--name
argumento para seleccionar solo los tipos de actividad con un nombre determinado:aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --name"send-subscription-success"
Salida:
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454150.909, "activityType": { "version": "1", "name": "send-subscription-success" }, "description": "subscribe send-subscription-success activity" } ] }
Para recuperar los resultados en las páginas, puede establecer el
--maximum-page-size
argumento. Si se devuelven más resultados de los que caben en una página de resultados, se devolverá un nextPageToken «» en el conjunto de resultados:aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --maximum-page-size2
Salida:
{ "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" } ] }
Puede pasar el nextPageToken valor a la siguiente llamada del
--next-page-token
argumento y recuperar la siguiente página de resultados:list-activity-types
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"
Salida:
{ "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" } ] }
Si aún quedan más resultados por devolver, se devolverá nextPageToken «» con los resultados. Si no hay más páginas de resultados que devolver, "nextPageToken" no aparecerá en el conjunto de resultados.
Puede utilizar el
--reverse-order
argumento para invertir el orden de los resultados devueltos. Esto también afecta a los resultados paginados.aws swf list-activity-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
\ --maximum-page-size2
\ --reverse-orderSalida:
{ "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" } ] }
Consulte también ListActivityTypesen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte ListActivityTypes
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar list-domains
.
- AWS CLI
-
Ejemplo 1: Para enumerar sus dominios registrados
El siguiente ejemplo de
list-domains
comando muestra losREGISTERED
SWF dominios que ha registrado para su cuenta.aws swf list-domains \ --registration-status
REGISTERED
Salida:
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" }, { "status": "REGISTERED", "name": "erontest" } ] }
Para obtener más información, consulte ListDomainsla APIreferencia de Amazon Simple Workflow Service
Ejemplo 2: Para enumerar sus dominios obsoletos
El siguiente ejemplo de
list-domains
comando muestra losDEPRECATED
SWF dominios que ha registrado para su cuenta. Los dominios obsoletos son dominios que no pueden registrar nuevos flujos de trabajo o actividades, pero que sí pueden consultarse.aws swf list-domains \ --registration-status
DEPRECATED
Salida:
{ "domainInfos": [ { "status": "DEPRECATED", "name": "MyNeatNewDomain" } ] }
Para obtener más información, consulte ListDomainsla APIreferencia de Amazon Simple Workflow Service
Ejemplo 3: Para enumerar la primera página de dominios registrados
El siguiente ejemplo de
list-domains
comando muestra losREGISTERED
SWF dominios de la primera página que ha registrado para su cuenta mediante la--maximum-page-size
opción.aws swf list-domains \ --registration-status
REGISTERED
\ --maximum-page-size1
Salida:
{ "domainInfos": [ { "status": "REGISTERED", "name": "DataFrobotz" } ], "nextPageToken": "AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ==" }
Para obtener más información, consulte ListDomainsla APIreferencia de Amazon Simple Workflow Service
Ejemplo 4: Para enumerar la página única especificada de dominios registrados
El siguiente ejemplo de
list-domains
comando muestra losREGISTERED
SWF dominios de la primera página que ha registrado para su cuenta mediante la--maximum-page-size
opción.Cuando vuelvas a realizar la llamada, esta vez introduciendo el valor de
nextPageToken
en el--next-page-token
argumento, obtendrás otra página de resultados.aws swf list-domains \ --registration-status
REGISTERED
\ --maximum-page-size1
\ --next-page-token"AAAAKgAAAAEAAAAAAAAAA2QJKNtidVgd49TTeNwYcpD+QKT2ynuEbibcQWe2QKrslMGe63gpS0MgZGpcpoKttL4OCXRFn98Xif557it+wSZUsvUDtImjDLvguyuyyFdIZtvIxIKEOPm3k2r4OjAGaFsGOuVbrKljvla7wdU7FYH3OlkNCP8b7PBj9SBkUyGoiAghET74P93AuVIIkdKGtQ=="
Salida:
{ "domainInfos": [ { "status": "REGISTERED", "name": "erontest" } ] }
Cuando no haya más páginas de resultados que recuperar,
nextPageToken
no aparecerá en los resultados.Para obtener más información, consulte ListDomainsla APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte ListDomains
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar list-workflow-types
.
- AWS CLI
-
Listado de tipos de flujo de trabajo
Para obtener una lista de los tipos de flujo de trabajo de un dominio, utilice
swf list-workflow-types
. Los--registration-status
argumentos--domain
y son obligatorios. He aquí un ejemplo sencillo.aws swf list-workflow-types \ --domain
DataFrobtzz
\ --registration-statusREGISTERED
Salida:
{ "typeInfos": [ { "status": "REGISTERED", "creationDate": 1371454149.598, "description": "DataFrobtzz subscribe workflow", "workflowType": { "version": "v3", "name": "subscribe" } } ] }
Del mismo
list-activity-types
modo, puedes usar el--name
argumento para seleccionar solo los tipos de flujo de trabajo con un nombre concreto y usar el--maximum-page-size
argumento en coordinación con--next-page-token
los resultados de la página. Para invertir el orden en el que se devuelven los resultados, utilice--reverse-order
.Consulte también ListWorkflowTypesen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte ListWorkflowTypes
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar register-domain
.
- AWS CLI
-
Registrar un dominio
Puede utilizar el AWS CLI para registrar nuevos dominios. Utilice el comando
swf register-domain
. Hay dos parámetros obligatorios: el que toma el nombre de dominio y--workflow-execution-retention-period-in-days
el que utiliza un número entero para especificar el número de días que se deben conservar los datos de ejecución del flujo de trabajo en este dominio, hasta un período máximo de 90 días (para obtener más información, consulte SWF FAQ < https://aws.amazon.com/swf/ faqs/ #retain_limit >).--name
Los datos de ejecución del flujo de trabajo no se conservarán una vez transcurrido el número de días especificado.aws swf register-domain \ --name
MyNeatNewDomain
\ --workflow-execution-retention-period-in-days0
""Al registrar un dominio, no se devuelve nada (""), pero puede utilizar
swf list-domains
oswf describe-domain
para ver el nuevo dominio.aws swf list-domains \ --registration-status
REGISTERED
{
"domainInfos":[
{
"status": "REGISTERED", "name":"DataFrobotz"
},
{
"status": "REGISTERED", "name":"MyNeatNewDomain"
},
{
"status": "REGISTERED", "name":"erontest"
}
]
}
Uso de
swf describe-domain
:aws swf describe-domain --name
MyNeatNewDomain
{
"domainInfo":{
"status": "REGISTERED", "name":"MyNeatNewDomain"
},
"configuration":{
"workflowExecutionRetentionPeriodInDays":"0"
}
}
Consulte también RegisterDomainen la APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte RegisterDomain
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar register-workflow-type
.
- AWS CLI
-
Registro de un tipo de flujo de trabajo
Para registrar un tipo de flujo de trabajo con el AWS CLI, utilice el
swf register-workflow-type
comando.aws swf register-workflow-type \ --domain
DataFrobtzz
\ --name"MySimpleWorkflow"
\ --workflow-version"v1"
Si se ejecuta correctamente, el comando no produce ningún resultado.
En caso de error (por ejemplo, si intenta registrar el mismo tipo de flujo de trabajo dos veces o especifica un dominio que no existe), recibirá una respuesta. JSON
{ "message": "WorkflowType=[name=MySimpleWorkflow, version=v1]", "__type": "com.amazonaws.swf.base.model#TypeAlreadyExistsFault" }
Las letras
--domain
,--name
y--workflow-version
son obligatorias. También puede establecer la descripción del flujo de trabajo, los tiempos de espera y la política del flujo de trabajo secundario.Para obtener más información, consulte RegisterWorkflowTypela APIreferencia de Amazon Simple Workflow Service
-
Para API obtener más información, consulte RegisterWorkflowType
la Referencia de AWS CLI comandos.
-