Skip to content
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

Foundation to report application processes #892

Merged
merged 34 commits into from
Jun 6, 2024
Merged

Conversation

mariomac
Copy link
Contributor

@mariomac mariomac commented May 30, 2024

This PR provides the foundation for reporting application processes.

It currently only reports the OTEL standard process.cpu.utilization metric, but the PR is big and complex enough to leave the following missing functionalities for future, smaller PRs:

@codecov-commenter
Copy link

codecov-commenter commented May 30, 2024

Codecov Report

Attention: Patch coverage is 55.12367% with 254 lines in your changes missing coverage. Please review.

Project coverage is 71.64%. Comparing base (294a8d9) to head (2833a13).

Files Patch % Lines
pkg/internal/export/otel/metrics_proc.go 0.00% 75 Missing ⚠️
pkg/internal/infraolly/process/snapshot.go 66.85% 44 Missing and 16 partials ⚠️
pkg/internal/infraolly/process/collect.go 0.00% 44 Missing ⚠️
pkg/internal/infraolly/process/status.go 12.50% 28 Missing ⚠️
pkg/internal/pipe/proc_pipeline.go 30.00% 21 Missing ⚠️
pkg/internal/infraolly/process/harvest.go 78.37% 8 Missing and 8 partials ⚠️
pkg/internal/export/otel/common.go 66.66% 3 Missing and 1 partial ⚠️
pkg/internal/export/otel/metrics.go 66.66% 3 Missing and 1 partial ⚠️
pkg/internal/ebpf/common/pids.go 0.00% 1 Missing ⚠️
pkg/internal/netolly/ebpf/record_getters.go 95.23% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #892      +/-   ##
==========================================
- Coverage   77.87%   71.64%   -6.24%     
==========================================
  Files         126      132       +6     
  Lines        9136     9620     +484     
==========================================
- Hits         7115     6892     -223     
- Misses       1551     2253     +702     
- Partials      470      475       +5     
Flag Coverage Δ
integration-test ?
k8s-integration-test 56.40% <21.90%> (-2.33%) ⬇️
oats-test 35.47% <9.54%> (-1.51%) ⬇️
unittests 43.92% <54.24%> (+0.27%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mariomac mariomac changed the title [WIP] Application processes Infrastructure to Report application processes Jun 5, 2024
@mariomac mariomac changed the title Infrastructure to Report application processes Infrastructure to report application processes Jun 5, 2024
@mariomac mariomac marked this pull request as ready for review June 5, 2024 13:33
@mariomac mariomac requested review from grcevski and marctc as code owners June 5, 2024 13:33
@mariomac mariomac changed the title Infrastructure to report application processes Foundation to report application processes Jun 5, 2024
Copy link
Contributor

@grcevski grcevski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Awesome!

@mariomac mariomac merged commit 65007e1 into grafana:main Jun 6, 2024
6 checks passed
@mariomac mariomac deleted the process branch June 6, 2024 07:13
mattdurham pushed a commit to mattdurham/beyla that referenced this pull request Jan 22, 2025
* start porting process sampler

* refactored harvester_linux.go

* refactored harvester_linux_test.go

* removed unneeded darwin files

* first refactor version without any integration

* renamings

* Collector provider

* connecting pipelines

* basic integration

* some process metrics verification

* WIP generifying expirer

* Generified OTEL metrics expirer

* fix some unit tests

* procolly metrics exporter merges app+net

* a process exporter per service

* process_cpu_utilization_ratio now reported for OTEL

* Basic process sampling working

* fix lint and unit tests

* merging otel exporters into single package

* fix harvest test

* Reorganized code

* Fixed compilation and unit tests

* Fixed and improved process harvesting

* Process integration tests

* Fix unit test

* fix integration test

* Added extra comment
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.

3 participants