Skip to content

Stack_Analyzer: adapted to lib (#814) #4

Stack_Analyzer: adapted to lib (#814)

Stack_Analyzer: adapted to lib (#814) #4

name: Stack_Analyser
on:
push:
branches:
- "*"
paths:
- 'eBPF_Supermarket/Stack_Analyser/**'
- '.github/workflows/ebpf_stack_analyser.yml'
pull_request:
branches:
- "*"
paths:
- 'eBPF_Supermarket/Stack_Analyser/**'
- '.github/workflows/ebpf_stack_analyser.yml'
jobs:
Stack_Analyser-build-and-test:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install native lib dependencies
run: |
git submodule update --init --recursive eBPF_Supermarket/lib/ MagicEyes/
sudo apt install clang libelf1 libelf-dev zlib1g-dev
- name: Compile test examples
run: |
cd eBPF_Supermarket/Stack_Analyser/testdir
gcc -o ./usdt_pthread -lpthread ./usdt_pthread.c
gcc -o ./uprobe_malloc ./uprobe_malloc.c
- name: Compile and run app with native lib
run: |
cd eBPF_Supermarket/Stack_Analyser
make -j$(nproc)
sudo ./stack_analyzer on_cpu off_cpu memleak io readahead llc_stat probe "vfs_open" probe "t:sched:sched_switch" -d 5
sudo ./stack_analyzer probe "u:pthread:pthread_create" -c "./testdir/usdt_pthread" -d 5
sudo ./stack_analyzer probe "c:malloc" -c "./testdir/uprobe_malloc" -d 5
- name: Compile and run MagicEyes app with native lib
run: |
mkdir -p MagicEyes/build
cd MagicEyes/build
cmake -DBUILD_STACK_ANALYZER=ON ..
make -j$(nproc)
sudo ./src/backend/system_diagnosis/stack_analyzer/stack_analyzer on_cpu off_cpu memleak io readahead llc_stat probe "p::vfs_open" probe "t:sched:sched_switch" -d 5
sudo ./src/backend/system_diagnosis/stack_analyzer/stack_analyzer probe "u:pthread:pthread_create" -c "../../eBPF_Supermarket/Stack_Analyser/testdir/usdt_pthread" -d 5
sudo ./src/backend/system_diagnosis/stack_analyzer/stack_analyzer probe "c:malloc" -c "../../eBPF_Supermarket/Stack_Analyser/testdir/uprobe_malloc" -d 5