I'm trying to collect billing data with the AWS Billing integration using the elastic agent managed by Fleet. Running version 8.3.3
The agent appears to be running fine, with valid secret access key and permissions, but no data gets ingested.
The logs from the agent show the following error:
16:27:44.333
elastic_agent.metricbeat
[elastic_agent.metricbeat][error] costexplorer GetCostAndUsageRequest failed: SerializationError: failed decoding JSON RPC error response
caused by: invalid character '<' looking for beginning of value
Running out of ideas. Should I try with metricbeat perhaps?
Any help would be greatly appreciated.
ERROR [aws.billing] billing/billing.go:254 costexplorer GetCostAndUsageRequest failed: ValidationException: Start date (and hour) should be before end date (and hour)
status code: 400, request id: 5aa02481-0576-409c-8eaf-809c4657e383
Confirmed. I get the same with the elastic agent version 8.3.3.
[elastic_agent.metricbeat][error] aws GetMetricDataResults failed with error GetMetricData with Paginator: ValidationError: The parameter StartTime must not equal parameter EndTime.
status code: 400, request id: 43614125-ec4e-46ad-8b21-6b282bc4dac7, skipping region us-east-1
[elastic_agent.metricbeat][error] costexplorer GetCostAndUsageRequest failed: SerializationError: failed decoding JSON RPC error response
caused by: invalid character '<' looking for beginning of value
Had a look at the source code over in beats/billing.go at main · elastic/beats · GitHub and realised that the module is requesting daily billing data and the start & end date is calculated based on the period.
Can confirm it's now working if period is set to 24h.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.