netdata / kernel-collector

Linux Kernel eBPF Collectors
61 stars 15 forks source link

Explicit TGID #353

Closed thiagoftsm closed 1 year ago

thiagoftsm commented 1 year ago
Summary

While I was developing ebpf_process function it called my attention the number of processes started by other processes. After to debug the event, I decided to also explicit TGID in this eBPF program, helping developers to understand better their own software.

Test Plan
  1. Get binaries according your LIBC from this link and extract them inside a directory, for example: ../artifacts. You can also get everything for glibc [here](UPLOAD FILE WITH ALL BINARIES TO SIMPLIFY REVIEWERS).

  2. Extract them running:

    $ for i in `ls *.zip`; do unzip $i; rm .gitkeep ; rm $i; done
    $ for i in `ls *.xz`; do tar -xf $i; rm $i* ; done
  3. Compile branch an run the following tests:

    # make clean; make tester
    # for i in `seq 0 3`; do ./kernel/legacy_test --netdata-path ../artifacts --process --content --iteration 1 --pid $i --log-path file_pid$i.txt; done
  4. Every test should ends with Success, unless you do not have a specific target (function) available.

Additional information

This PR was tested on:

Linux Distribution Environment Kernel Version Real Parent Parent All PIDs Without PIDs
Slackware Current Bare metal 6.1.54 slackware_6_1_pid0.txt slackware_6_1_pid1.txt slackware_6_1_pid2.txt slackware_6_1_pid3.txt
Slackwarre Currentt Qemu 4.14.290 slackware_4_14_pid0.txt slackware_4_14_pid1.txt slackware_4_14_pid2.txt slackware_4_14_pid3.txt
CentOS 7.9 Libvirt 3.10.0-1160.95.1.el7.x86_64 centos_3_10_pid0.txt centos_3_10_pid1.txt centos_3_10_pid2.txt centos_3_10_pid3.txt