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 kstack decoder #313

Merged
merged 1 commit into from
Oct 25, 2023
Merged

Add kstack decoder #313

merged 1 commit into from
Oct 25, 2023

Conversation

bobrik
Copy link
Contributor

@bobrik bobrik commented Oct 25, 2023

From the example:

ivan@vm:~/projects/ebpf_exporter$ curl -s http://ip6-localhost:9435/metrics | fgrep accessed
ebpf_exporter_ebpf_program_info{config="kstack",id="1803",program="mark_page_accessed",tag="4fe6d77dbc5615bc"} 1
# HELP ebpf_exporter_mark_page_accessed_total Total number of calls to mark_page_accessed by kstack
# TYPE ebpf_exporter_mark_page_accessed_total counter
ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nfollow_page_pte\nfollow_page_mask\n__get_user_pages\nget_user_pages_remote\nget_arg_page\ncopy_string_kernel\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 5
ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nfollow_page_pte\nfollow_page_mask\n__get_user_pages\nget_user_pages_remote\nget_arg_page\ncopy_strings\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 10
ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nunmap_page_range\nunmap_vmas\nexit_mmap\n__mmput\nmmput\nbegin_new_exec\nload_elf_binary\nbprm_execve\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 914
ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nunmap_page_range\nunmap_vmas\nunmap_region.constprop.0\ndo_vmi_align_munmap\ndo_vmi_munmap\n__vm_munmap\n__arm64_sys_munmap\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 15

This isn't as useful in metrics, but it would be more natural in tracing.

From the example:

    ivan@vm:~/projects/ebpf_exporter$ curl -s http://ip6-localhost:9435/metrics | fgrep accessed
    ebpf_exporter_ebpf_program_info{config="kstack",id="1803",program="mark_page_accessed",tag="4fe6d77dbc5615bc"} 1
    # HELP ebpf_exporter_mark_page_accessed_total Total number of calls to mark_page_accessed by kstack
    # TYPE ebpf_exporter_mark_page_accessed_total counter
    ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nfollow_page_pte\nfollow_page_mask\n__get_user_pages\nget_user_pages_remote\nget_arg_page\ncopy_string_kernel\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 5
    ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nfollow_page_pte\nfollow_page_mask\n__get_user_pages\nget_user_pages_remote\nget_arg_page\ncopy_strings\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 10
    ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nunmap_page_range\nunmap_vmas\nexit_mmap\n__mmput\nmmput\nbegin_new_exec\nload_elf_binary\nbprm_execve\ndo_execveat_common\n__arm64_sys_execve\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 914
    ebpf_exporter_mark_page_accessed_total{kstack="mark_page_accessed\nunmap_page_range\nunmap_vmas\nunmap_region.constprop.0\ndo_vmi_align_munmap\ndo_vmi_munmap\n__vm_munmap\n__arm64_sys_munmap\ninvoke_syscall.constprop.0\ndo_el0_svc\nel0_svc\nel0t_64_sync_handler\nel0t_64_sync"} 15

This isn't as useful in metrics, but it would be more natural in tracing.
@bobrik bobrik merged commit 39c3cf6 into cloudflare:master Oct 25, 2023
18 checks passed
@bobrik bobrik deleted the ivan/kstack branch October 25, 2023 03:59
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.

None yet

1 participant