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

Add process page fault metrics #2809

Closed
andrzej-stencel opened this issue Sep 19, 2022 · 3 comments · Fixed by #2827
Closed

Add process page fault metrics #2809

andrzej-stencel opened this issue Sep 19, 2022 · 3 comments · Fixed by #2827
Assignees
Labels
area:semantic-conventions Related to semantic conventions needs discussion Need more information before all suitable labels can be applied spec:metrics Related to the specification/metrics directory triaged-needmoreinfo The issue is triaged - the OTel community needs more information to decide

Comments

@andrzej-stencel
Copy link
Member

What are you trying to achieve?

I want to add process page fault metrics to the semantic conventions. Here are the specific metrics I have in mind, relative to how Linux reports them:

  • The number of major ("hard") page faults that the process has made
    • This is reported in /proc/[pid]/stat Linux file, described as majflt field in the man page
  • The number of minor ("soft") page faults that the process has made
    • This is reported in /proc/[pid]/stat Linux file, described as minflt field in the man page
  • The number of major ("hard") page faults that the process's waited-for children have made
    • This is reported in /proc/[pid]/stat Linux file, described as cmajflt field in the man page
  • The number of minor ("soft") page faults that the process's waited-for children have made
    • This is reported in /proc/[pid]/stat Linux file, described as cminflt field in the man page

I propose the following names for the metrics:

  • process.memory.page_faults with the attribute type of either hard or soft
  • process.memory.child_page_faults with the attribute type of either hard or soft

Additional context

I have read through the discussions on putting information in metric names vs. attributes (#2589 , #2726). I considered various options for the metric names and attributes, including putting the type in the metric name and putting the child into an attribute (couldn't find a good name for this attribute). Please let me know if you have any thoughts on this.

Related issue to add these metrics in hostmetrics receiver: open-telemetry/opentelemetry-collector-contrib#14084.

@andrzej-stencel
Copy link
Member Author

andrzej-stencel commented Sep 19, 2022

Oops only now have I noticed that there's a similar convention already in place in the system namespace. The metric name is system.paging.faults with the type attribute of major or minor.

Should this proposal be changed to propose process.paging.faults? What about the child page faults - make them process.paging.child_faults?

@andrzej-stencel andrzej-stencel changed the title [metrics] Add process page fault metrics Add process page fault metrics Sep 20, 2022
@andrzej-stencel
Copy link
Member Author

andrzej-stencel commented Sep 23, 2022

I'll take no comments as good news and will prepare a pull request to add process.paging.faults metric with a type attribute of major or minor. I will not add the child faults for now.

@rbailey7210
Copy link

Pleased pause for now, we are considering refactoring existing metrics semantic conventions. Please come to ongoing discussions. See #2753.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:semantic-conventions Related to semantic conventions needs discussion Need more information before all suitable labels can be applied spec:metrics Related to the specification/metrics directory triaged-needmoreinfo The issue is triaged - the OTel community needs more information to decide
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants