AWS Step Functions¶
Overview¶
AWS Step Functions makes it easy to coordinate the components of distributed applications as a series of steps in a visual workflow. You can quickly build and run state machines to execute the steps of your application in a reliable and scalable fashion.
Prerequisites¶
- User must setup a logs service for the same application.
- Logs service must be added to a service group.
Account Access¶
This step is optional. We strongly recommend that you allow us to retreive info about your services because it will greatly minimize the chances of making a mistake
Configuration for Step Functions Logs Collection¶
User must select AWS Services
field in application creation form and select Step Functions service from AWS Service
dropdown.
Provide the cloudwatch log group associated with the Step Functions
Configuration for Step Functions Metrics Collection¶
User must select AWS Services
field in application creation form and select Step Functions service from AWS Service
dropdown.
Provide required dimensions and metrics to be collected.
If you have allow us to retreive service details from your account, the dimensions will shown as a dropdown.
Detailed description of metrics and dimension can be viewed at Step Functions metrics and dimensions
Supported Step Functions Dimensions¶
Step Functions provides below dimensions on which metrics are collected.
Dimension | Description |
---|---|
StateMachineArn | The Amazon Resource Name (ARN) of the state machine for the execution in question |
ActivityArn | The ARN of the activity |
LambdaFunctionArn | The ARN of the Lambda function |
ServiceIntegrationResourceArn | The resource ARN of the integrated service |
ServiceName | Filters data to show State Transitions metrics |
APIName | Filters data to an API of the specified API name |
Supported Step Functions Metrics¶
Step Functions provides below metrics to be collected.
Metrics | Description |
---|---|
ExecutionTime | The interval, in milliseconds, between the time the execution starts and the time it closes |
ExecutionThrottled | The number of StateEntered events and retries that have been throttled. This is related to StateTransition throttling |
ExecutionsAborted | The number of aborted or terminated executions |
ExecutionsFailed | The number of failed executions |
ExecutionsStarted | The number of started executions |
ExecutionsSucceeded | The number of successfully completed executions |
ExecutionsTimedOut | The number of executions that time out for any reason |
ExpressExecutionMemory | The total memory consumed by an Express Workflow |
ExpressExecutionBilledDuration | The duration for which an Express Workflow is charged |
ExpressExecutionBilledMemory | The amount of consumed memory for which an Express Workflow is charged. |
AliasCount | The number of aliases created for the state machine |
VersionCount | The number of versions published for the state machine |
ActivityRunTime | The interval, in milliseconds, between the time the activity starts and the time it closes |
ActivityScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state |
ActivityTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes |
ActivitiesFailed | The number of failed activities |
ActivitiesHeartbeatTimedOut | The number of activities that time out due to a heartbeat timeout |
ActivitiesScheduled | The number of scheduled activities |
ActivitiesStarted | The number of started activities |
ActivitiesSucceeded | The number of successfully completed activities |
ActivitiesTimedOut | The number of activities that time out on close |
LambdaFunctionRunTime | The interval, in milliseconds, between the time the Lambda function starts and the time it closes |
LambdaFunctionScheduleTime | The interval, in milliseconds, for which the Lambda function stays in the schedule state |
LambdaFunctionTime | The interval, in milliseconds, between the time the Lambda function is scheduled and the time it closes |
LambdaFunctionsFailed | The number of failed Lambda functions |
LambdaFunctionsScheduled | The number of scheduled Lambda functions |
LambdaFunctionsStarted | The number of started Lambda functions |
LambdaFunctionsSucceeded | The number of successfully completed Lambda functions |
LambdaFunctionsTimedOut | The number of Lambda functions that time out on close |
ServiceIntegrationRunTime | The interval, in milliseconds, between the time the Service Task starts and the time it closes |
ServiceIntegrationScheduleTime | The interval, in milliseconds, for which the Service Task stays in the schedule state |
ServiceIntegrationTime | The interval, in milliseconds, between the time the Service Task is scheduled and the time it closes |
ServiceIntegrationsFailed | The number of failed Service Tasks |
ServiceIntegrationsScheduled | The number of scheduled Service Tasks |
ServiceIntegrationsStarted | The number of started Service Tasks |
ServiceIntegrationsSucceeded | The number of successfully completed Service Tasks |
ServiceIntegrationsTimedOut | The number of Service Tasks that time out on close |
ThrottledEvents | The count of requests that have been throttled |
ProvisionedBucketSize | The count of available requests per second |
ProvisionedRefillRate | The count of requests per second that are allowed into the bucket |
ConsumedCapacity | The count of requests per second |