Administración de los tiempos de espera en los manuales de procedimientos - AWS Systems Manager

Administración de los tiempos de espera en los manuales de procedimientos

Todas las acciones de automatización comparten la propiedad timeoutSeconds. Esta propiedad se puede utilizar para especificar el valor de tiempo de espera de la ejecución de una acción. Además, se puede modificar el modo en que afecta a la automatización y al estado general de la ejecución el hecho de que se agote dicho tiempo para una acción. Para ello, puede definir también las propiedades compartidas onFailure y isCritical de una acción.

Por ejemplo, dependiendo del caso de uso, si se agota el tiempo de espera de una acción, tal vez prefiera que la automatización continúe con una acción diferente y que no afecte a su estado general. En este ejemplo, va a especificar con la propiedad timeoutSeconds el tiempo que debe esperarse antes de que se agote el tiempo de espera de la acción. A continuación, especifica la acción o el paso al que la automatización debe pasar si se agota el tiempo de espera. Especifique un valor utilizando el formato step:step name en la propiedad onFailure en lugar del valor predeterminado de Abort. De forma predeterminada, si se agota el tiempo de espera de una acción, el estado de ejecución de la automatización será Timed Out. Para evitar que el agotamiento del tiempo de espera afecte el estado de ejecución de la automatización, especifique false en la propiedad isCritical.

En el ejemplo siguiente, se muestra cómo se definen las propiedades compartidas de una acción que se describe en este escenario.

YAML
- name: verifyImageAvailability action: 'aws:waitForAwsResourceProperty' timeoutSeconds: 600 isCritical: false onFailure: 'step:getCurrentImageState' inputs: Service: ec2 Api: DescribeImages ImageIds: - '{{ createImage.newImageId }}' PropertySelector: '$.Images[0].State' DesiredValues: - available nextStep: copyImage
JSON
{ "name": "verifyImageAvailability", "action": "aws:waitForAwsResourceProperty", "timeoutSeconds": 600, "isCritical": false, "onFailure": "step:getCurrentImageState", "inputs": { "Service": "ec2", "Api": "DescribeImages", "ImageIds": [ "{{ createImage.newImageId }}" ], "PropertySelector": "$.Images[0].State", "DesiredValues": [ "available" ] }, "nextStep": "copyImage" }

Para obtener más información acerca de las propiedades que comparten todas las acciones de automatización, consulte Propiedades compartidas por todas las acciones.