### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When trying to use CloudWatch as a target for an EventBridge eventbus I receive a warning `WARNING:localstack.utils.aws.aws_stack: Unsupported Events rule target ARN: "arn:aws:logs:us-east-1:000000000000:log-group:/aws/events/log-imports"` and nothing happens.

### Expected Behavior

I expected to be able to use CloudWatch loggroup as an EventBrigde eventbus target, like I can using AWS.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    `docker-compose.yaml`

#### Additional files
JSON file needed for the `put-events` call

```
[
  {
    "Source": "com.mycompany.myapp",
    "Detail": "{ \"key1\": \"value1\", \"key2\": \"value2\" }",
    "Resources": [
      "resource1",
      "resource2"
    ],
    "DetailType": "myDetailType",
    "EventBusName": "messages-eb"
  }
]
```

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)

    awslocal logs create-log-group --log-group-name /aws/events/log-imports
    awslocal events create-event-bus --name messages-eb
    awslocal events put-rule --name forward-message --event-bus-name messages-eb --event-pattern "{""account"": [""000000000000""]}"
    awslocal events put-targets --rule forward-message --event-bus-name messages-eb --targets "Id"="1","Arn"="arn:aws:logs:us-east-1:000000000000:log-group:/aws/events/log-imports"

    awslocal events put-events --entries file://events.json
    


### Environment

```markdown
- OS: Windows 10
- LocalStack: 0.12.17
- Docker Desktop (with WSL2)
```


### Anything else?

_No response_
"""
    Poll evaluates the given condition until a truthy value is returned. It does this every `interval` seconds
    (0.5 by default), until the timeout (in seconds, if any) is reached.
    Poll returns True once `condition()` returns a truthy value, or False if the timeout is reached.
    """
    remaining = 0
    if timeout is not None:
        remaining = timeout
    while not condition():
        if timeout is not None:
            remaining -= interval
            if remaining <= 0:
                return False
        time.sleep(interval)
    return True
def merge_recursive(source, destination, none_values=[None], overwrite=False):
    for key, value in source.items():
        if isinstance(value, dict):
            
            node = destination.setdefault(key, {})
            merge_recursive(value, node, none_values=none_values, overwrite=overwrite)
        else:
            if not isinstance(destination, dict):
                LOG.warning(
                    "Destination for merging %s=%s is not dict: %s", key, value, destination
                )
            if overwrite or destination.get(key) in none_values:
                destination[key] = value
    return destination
def merge_dicts(*dicts, **kwargs):