Skip to content

Conversation

@Paramadon
Copy link
Contributor

@Paramadon Paramadon commented Oct 10, 2024

Description of the issue

We want to be able to have java/jmx container insights dashboards populated.

Pipeline overview

Reciever

  1. otlp - jmx

Processors

  1. Filter Processor - filters out any undesired metrics
  2. Resource Detection processor - adds k8scluster and nodename to resource attributes
  3. Tranform processor Removes any attribbutes that are not of the correct dimension for each metric: The dimension criteria is from here: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContainerInsights-Prometheus-metrics.html#ContainerInsights-Prometheus-metrics-jmx
  4. Metric Tranform Processor - Renames all metrics to fit prometheus container insight dashboard

Exporters

1.. Debug exporter - Helps visualize which metrics are being created (can be removed)
2. Aws Emf Exporter - send metrics to Namespace: ContainerInsights/Prometheus (based off of documentation) with Log group name /aws/containerinsights/{ClusterName}/jmx and log stream name: {NodeName}. Both ClusterName and NodeName comes from the resource attributes.
Screenshot 2024-10-10 at 7 37 32 PM

Screenshot 2024-10-09 at 11 45 09 AM (1)

Note one requirement for the Container Insight Java/Jmx dashboards to be populated is to have java_lang_operatingsystem_totalphysicalmemorysize metric. Without this metric the dashboard will not be populated.

Description of changes

How does this change address the problem?

License

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Tests

Created unit tests for each processor and tocwconfig test which test the full generated yaml from json. The test is called TestContainerInsightsJMX

Requirements

Before commit the code, please do the following steps.

  1. Run make fmt and make fmt-sh
  2. Run make lint

@Paramadon Paramadon requested a review from a team as a code owner October 10, 2024 06:28
@Paramadon Paramadon closed this Oct 10, 2024
@Paramadon Paramadon reopened this Oct 10, 2024
@sky333999
Copy link
Contributor

We should update schema.json and the associated tests as well.

@Paramadon Paramadon merged commit 88f75c5 into main Oct 11, 2024
5 of 6 checks passed
@Paramadon Paramadon deleted the AddingContainerInsightPipeline branch October 11, 2024 00:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants