-
Notifications
You must be signed in to change notification settings - Fork 464
[aws_billing] Add new aws_billing
integration
#14318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🚀 Benchmarks reportTo see the full report comment with |
a8077d3
to
6651b5e
Compare
- custom | ||
conditions: | ||
kibana: | ||
version: "^8.18.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is it not meant to be supported on ^9.0.0?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the functionality we need is already available in version 8.18.0
(probably even in older versions), so unless there are significant bug fixes in the filebeat awss3
input or other stack features in general, there's no strong justification for bumping the version 🤔
we could change it to ^8.16.5 || ^9.0.0"
Dashboards updated @agithomas @daniela-elastic |
rename pipeline update pipeline tests
💚 Build Succeeded
History
cc @gpop63 |
|
Summary
This PR introduces a new integration for ingesting AWS Cost and Usage Report (CUR) 2.0 data from S3 buckets. The integration uses S3 polling with a minimum 24-hour interval (default) to avoid duplicate ingestion, as AWS CUR files are cumulative and updated multiple times daily.
The integration includes an hourly ES transform that groups billing data by key dimensions (service, account, usage type, region, tags) and aggregates unblended costs. This transform deduplicates the raw CUR data by creating uniquely identifiable data points.
For future upgrades, the transform configuration will require bumping both the
fleet_transform_version
and thedest.index
. Themove_on_creation: true
setting is required as it ensures the destination index becomes the only member of the alias when created, automatically removing previous indices from the alias. This allows dashboards to continue displaying the data correctly.I tested an actual upgrade by adding a new field to the transform's group by, then bumping the
fleet_transform_version
anddest.index
. On upgrade, a new indexaws_billing.billing_latest-v2
was created and got theaws_billing.billing_latest
alias. The old indexaws_billing.billing_latest-v1
lost the alias. The dashboards kept working fine because they use the alias, not the specific index names.The integration uses defaults specific for the AWS CUR usecase:
bucket_list_interval
is set to 24h to avoid duplicate datacontent_type
defaults totext/csv
, the standard CUR formatfile_selectors
defaults to\.csv\.gz$
(this doesn't work as a default yet)Removed Configuration Options for
aws-s3
I removed some config options that I thought are not relevant or applicable to this integration.
expand_event_list_from_field
include_s3_metadata
max_number_of_messages
queue_url
sqs_max_receive_count
sqs_wait_time
visibility_timeout
Minor inconveniences
logs-*
for some reason, this doesn't affect the functionalityUnable to setfile_selectors
default value to\.csv\.gz$
Checklist
changelog.yml
file.Author's Checklist
How to test this PR locally
Related issues
Screenshots