### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

PutMetricData with arrays of values does not work properly. Zero values seem to be published. PutMetricData with a single value works as expected. This happens to both CLI and SDK.

### Expected Behavior

PutMetricData with arrays of values should work as publishing a single value.

### How are you starting LocalStack?

With a `docker run` command

### Steps To Reproduce

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

    docker run localstack/localstack:1.2.0

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)
```
awslocal cloudwatch put-metric-data --namespace test --metric-data MetricName=TestCounter,Values=10,1,Counts=1,1
awslocal cloudwatch get-metric-statistics --namespace test --metric-name TestCounter --statistics Maximum --period 60 --start-time 2022-11-9T00:00:00Z --end-time 2022-11-11T00:00:00Z
{
    "Label": "TestCounter",
    "Datapoints": [
        {
            "Timestamp": "2022-11-09T23:25:10+00:00",
            "Maximum": 0.0,
            "ExtendedStatistics": {}
        },
        {
            "Timestamp": "2022-11-09T23:27:10+00:00",
            "Maximum": 0.0,
            "ExtendedStatistics": {}
        }
    ]
}
```



### Environment

```markdown
- OS: Mac Monterey
- LocalStack: 1.2.0
```


### Anything else?

_No response_
"AlarmActions": alarm.alarm_actions or [],
        "InsufficientDataActions": alarm.insufficient_data_actions or [],
    }
    
    details = {
        "MetricName": alarm.metric_name or "",
        "Namespace": alarm.namespace or "",
        "Unit": alarm.unit or "",
        "Period": int(alarm.period) if alarm.period else 0,
        "EvaluationPeriods": int(alarm.evaluation_periods) if alarm.evaluation_periods else 0,
        "ComparisonOperator": alarm.comparison_operator or "",
        "Threshold": float(alarm.threshold) if alarm.threshold else 0.0,
        "TreatMissingData": alarm.treat_missing_data or "",
        "EvaluateLowSampleCountPercentile": alarm.evaluate_low_sample_count_percentile or "",
    }
    
    dimensions = []
    if alarm.dimensions:
        for d in alarm.dimensions:
            dimensions.append({"value": d.value, "name": d.name})
    details["Dimensions"] = dimensions or ""
    if alarm.statistic:
        details["StatisticType"] = "Statistic"
        details["Statistic"] = alarm.statistic.upper()  
    elif alarm.extended_statistic:
        details["StatisticType"] = "ExtendedStatistic"
        details["ExtendedStatistic"] = alarm.extended_statistic
    response["Trigger"] = details
    return json.dumps(response)
class ValidationError(CommonServiceException):