generated from amazon-archives/__template_Apache-2.0
-
Notifications
You must be signed in to change notification settings - Fork 267
Closed
Labels
bugThis issue is a bug.This issue is a bug.
Description
Bug Report
Version
├── aws-sdk-cloudwatch v0.0.11-alpha (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ ├── aws-auth v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ │ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ ├── aws-endpoint v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── aws-types v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ └── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── aws-http v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── aws-types v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── aws-hyper v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── aws-auth v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── aws-endpoint v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── aws-http v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── aws-sig-auth v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ │ ├── aws-auth v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ │ ├── aws-types v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── protocol-test-helpers v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── smithy-client v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ │ ├── protocol-test-helpers v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ │ ├── smithy-http-tower v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ │ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ │ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── smithy-http-tower v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ │ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── aws-sig-auth v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── aws-types v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── smithy-http v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── smithy-query v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
│ │ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ ├── smithy-types v0.0.1 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3) (*)
│ └── smithy-xml v0.1.0 (https://github.com/awslabs/aws-sdk-rust?tag=v0.0.11-alpha#6780fde3)
Platform
FreeBSD and Linux
AWS Services
CloudWatch
Description
When using get_metric_statistics, I receive an unexpected error:
Error { code: "MalformedInput", message: "timestamp must follow ISO8601", request_id: "5a0f4195-dfb7-45d9-b5e8-a2c453aa4ddb" }
Given that the user doesn't supply ISO8601 timestamps and instead provides Instant to the various methods of this function, it appears to be an issue in the SDK. Tracing smithy_http_tower we can see the request that gets sent:
# Line breaks added to make the SdkBody inner slightly easier to read
TRACE smithy_http_tower::dispatch > request=Request {
method: POST,
uri: https://monitoring.eu-west-1.amazonaws.com/,
version: HTTP/1.1,
headers: {
"content-type": "application/x-www-form-urlencoded",
"content-length": "407",
"host": "monitoring.eu-west-1.amazonaws.com",
"user-agent": "aws-sdk-rust/0.1.0 os/linux lang/rust/1.53.0",
"x-amz-user-agent": "aws-sdk-rust/0.1.0 api/cloudwatch/0.0.11-alpha os/linux lang/rust/1.53.0",
"authorization": Sensitive,
"x-amz-date": "20210714T100434Z",
"x-amz-security-token": Sensitive
},
body: SdkBody {
inner: Once(
Some(
b"Action=GetMetricStatistics&Version=2010-08-01&Namespace=AWS%2FS3&MetricName=BucketSizeBytes&Dimensions.member.1.Name=BucketName&Dimensions.member.1.Value=a-valid-s3-bucket&Dimensions.member.2.Name=StorageType&Dimensions.member.2.Value=StandardStorage&StartTime=2021-07-12T10%3A04%3A34.86317681Z&EndTime=2021-07-14T10%3A04%3A34.86317681Z&Period=86400&Statistics.member.1=Average&Unit=Bytes"
)
),
retryable: true
}
}
The following code should replicate the issue when run against (in this case) S3 bucket metrics:
use anyhow::Result;
use aws_sdk_cloudwatch::Client;
use aws_sdk_cloudwatch::model::{
Dimension,
StandardUnit,
Statistic,
};
use chrono::prelude::*;
use chrono::Duration;
#[tokio::main]
async fn main() -> Result<()> {
pretty_env_logger::init();
let client = Client::from_env();
// Prepare some variables used in the query
let bucket_name = "a-valid-s3-bucket";
let now: DateTime<Utc> = Utc::now();
let one_day = Duration::days(1);
let period = one_day.num_seconds() as i32;
let start_time = (now - (one_day * 2)).into();
let storage_type = "StandardStorage";
let dimensions = vec![
Dimension::builder()
.name("BucketName")
.value(bucket_name.to_owned())
.build(),
Dimension::builder()
.name("StorageType")
.value(storage_type.to_owned())
.build(),
];
let _resp = client.get_metric_statistics()
.end_time(now.into())
.metric_name("BucketSizeBytes")
.namespace("AWS/S3")
.period(period)
.set_dimensions(Some(dimensions))
.start_time(start_time)
.statistics(Statistic::Average)
.unit(StandardUnit::Bytes)
.send()
.await?;
Ok(())
}Metadata
Metadata
Assignees
Labels
bugThis issue is a bug.This issue is a bug.