Skip to content

[AWS] Set dimension fields in Usage, ELB and DynamoDB data streams#6225

Merged
constanca-m merged 5 commits intoelastic:mainfrom
constanca-m:aws-add-dimensions-1
May 23, 2023
Merged

[AWS] Set dimension fields in Usage, ELB and DynamoDB data streams#6225
constanca-m merged 5 commits intoelastic:mainfrom
constanca-m:aws-add-dimensions-1

Conversation

@constanca-m
Copy link
Copy Markdown
Contributor

What does this PR do?

Set dimension fields for TSDB support.

Details

For all of them, account and region are always set as dimensions, as resources are unique within this scope.

Data stream DynamoDB: TableName and StreamLabel are unique per account and region, so they are used as identifiers. GlobalSecondaryIndexName is unique per DynamoDB resource, and since we can have more than one, we have to set it as a dimension to avoid overwriting the documents. DelegatedOperation is associated with calls made to the table or index, and it is possible to have more than one at the same time, so it is set as dimension as well. A table can have more than one ReceivingRegion, so that label needs to be unique as well. Multiple verbs can act at the same table at the same time, so verb also needs to be set as dimension to avoid loosing data. OperationType and Operation are set as dimension for the same reason.

Data stream ELB: LoadBalancerName is unique within the AWS account. A LoadBalancer can have more than one TargetGroup, so we need to set that as dimension as well. AvailabilityZone is set as dimension for the same reason.

Data stream Usage: Each Service field value is unique, and we can have different Resources acting on the same service at the same time, so it needs to be set as dimension to avoid overwriting. Type and Class are set as dimensions for the same reason.

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.

Screenshots

There was no change in the number of documents before and after enbaling TSDB in DynamoDB:
image

For usage and ELB data streams is not possible to compare it, since the data received is not regular. However, the number of documents did not seem to decrease after enabling TSDB and the variations seemed to remain constant (TSDB enabled at 13:20):
image
image

constanca-m and others added 3 commits May 16, 2023 11:27
Signed-off-by: constanca-m <constanca.manteigas@elastic.co>
Signed-off-by: constanca-m <constanca.manteigas@elastic.co>
@elasticmachine
Copy link
Copy Markdown

elasticmachine commented May 16, 2023

💚 Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview preview

Expand to view the summary

Build stats

  • Start Time: 2023-05-23T08:37:11.235+0000

  • Duration: 51 min 39 sec

Test stats 🧪

Test Results
Failed 0
Passed 188
Skipped 4
Total 192

🤖 GitHub comments

Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

  • /test : Re-trigger the build.

@elasticmachine
Copy link
Copy Markdown

elasticmachine commented May 16, 2023

🌐 Coverage report

Name Metrics % (covered/total) Diff
Packages 100.0% (15/15) 💚
Files 93.75% (15/16) 👎 -6.25
Classes 93.75% (15/16) 👎 -6.25
Methods 86.131% (236/274) 👎 -7.986
Lines 85.925% (7387/8597) 👎 -12.516
Conditionals 100.0% (0/0) 💚

@constanca-m
Copy link
Copy Markdown
Contributor Author

/test

@constanca-m constanca-m merged commit 3c00c2b into elastic:main May 23, 2023
@constanca-m constanca-m deleted the aws-add-dimensions-1 branch May 23, 2023 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants