Skip to content

bug: Missing LoggingConfiguration in Stepfunctions #11374

@rosario

Description

@rosario

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

Deploying a stepfunction with loggingConfiguration does not work because the logging configuration is turned off: (ie. it has the default logging):

aws stepfunctions describe-state-machine \
  --state-machine-arn <<< ARN >>> \
  --profile localstack
{
   [....], 
    "loggingConfiguration": {
        "level": "OFF",
        "includeExecutionData": false
    }
}

Expected Behavior

LoggingConfiguration should be supported

aws stepfunctions describe-state-machine \
  --state-machine-arn <<< ARN >>> \
  --profile localstack
{
 [...],
    "loggingConfiguration": {
        "level": "ALL",
        "includeExecutionData": true,
        "destinations": [
            {
                "cloudWatchLogsLogGroup": {
                    "logGroupArn": "arn:aws:logs:eu-west-1:000000000000:log-group:/aws/stepfunctions/testStateMachine:*"
                }
            }
        ]
    }
}

How are you starting LocalStack?

With a docker-compose file

Steps To Reproduce

  1. deploy a stepfunction with logging (with serverless for example)
  2. check the state of the stepfunction (with aws stepfunctions describe-state-machine)
  3. check the response

Environment

- OS: MacOS
- LocalStack: 
  LocalStack version: 3.6.1
  LocalStack Docker image sha: 3d6b80fe4756dc9cab37c58174ff92c0a9a0fbc033eb33065b3a317e36c5b59a
  LocalStack build date:
  LocalStack build git hash:

Anything else?

Adding the extra paramter loggingConfiguration here seems to fix the issue:

https://github.com/localstack/localstack/blob/master/localstack-core/localstack/services/stepfunctions/resource_providers/aws_stepfunctions_statemachine.py#L108-L112

       params = {
            "name": model.get("StateMachineName"),
            "roleArn": model.get("RoleArn"),
            "type": model.get("StateMachineType", "STANDARD"),
            "loggingConfiguration": model.get("LoggingConfiguration"),
        }

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions