Установка PostgreSQL 15 из исходного кода на Astra Linux
Предварительно, СУБД PostgreSQL 15 может быть установлена из исходного кода на Astra Linux Common Edition например по инструкции, с тем отличием что в параметры configure добавляется:
Код: Выделить всё
./configure --enable-debug
Утилита perf может быть установлена из исходного кода ядра Linux
Показать версию ядра системы
Код: Выделить всё
uname -a
Код: Выделить всё
cd /opt
curl -o linux-source.tar.gz https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.15.70.tar.gz
tar xvf linux-source.tar.gz
Код: Выделить всё
apt install libdwarf-dev libdw-dev binutils-dev libcap-dev libelf-dev libnuma-dev libperf-dev python2 python2-dev python-setuptools libssl-dev libunwind-dev libdwarf-dev libunwindw zlib1g-dev liblzma-dev libaio-dev
cd /opt/linux-5.15.70/tools/perf
make
Код: Выделить всё
Auto-detecting system features:
... dwarf: [ on ]
... dwarf_getlocations: [ on ]
... glibc: [ on ]
... libbfd: [ on ]
... libbfd-buildid: [ on ]
... libcap: [ on ]
... libelf: [ on ]
... libnuma: [ on ]
... numa_num_possible_cpus: [ on ]
... libperl: [ OFF ]
... libpython: [ OFF ]
... libcrypto: [ on ]
... libunwind: [ on ]
... libdw-dwarf-unwind: [ on ]
... zlib: [ on ]
... lzma: [ on ]
... get_cpuid: [ on ]
... bpf: [ on ]
... libaio: [ on ]
... libzstd: [ OFF ]
... disassembler-four-args: [ OFF ]
Код: Выделить всё
make install
perf top
FlameGraph
Копирование скриптов
Код: Выделить всё
cd /home/student
git clone https://github.com/brendangregg/FlameGraph
Автор: Михаил Жилин
Код: Выделить всё
perf record -F 99 -a -g --call-graph=dwarf sleep 2
perf script --header --fields comm,pid,tid,time,event,ip,sym,dso > out.perf
Код: Выделить всё
/home/student/FlameGraph/stackcollapse-perf.pl out.perf | /home/student/FlameGraph/flamegraph.pl > flamegraph.svg