Как узнать, какие пакеты dbgsym нужны для получения символьной трассировки стека?

Попробуйте это.

#!/bin/bash
#
yesterday=$(date --utc --date 'yesterday' +'%Y-%m-%d')
for hour in {0..23}
do
    printf "https://abcd.com/logs?start=%sT%02d:00:00Z&end=%sT%02d:59:59Z\n" $yesterday $hour $yesterday $hour
done

Случайные високосные секунды не обрабатываются. Если вам это нужно, используйте этот более сложный код, где последний диапазон дня, возможно, должен перейти от 23:00:00к 23:59:60, но убедитесь, что ваше целевое приложение также может обрабатывать это:

#!/bin/bash
#
yesterday=$(date --utc --date 'yesterday' +'%Y-%m-%d')
leapsecond=$(date --utc --date @$(( $(date --utc --date '00:00:00' +%s) -1 )) +'%S')
lastsecond=59

for hour in {0..23}
do
    [[ hour == 23 ]] && lastsecond=$leapsecond
    printf "https://abcd.com/logs?start=%sT%02d:00:00Z&end=%sT%02d:59:%02dZ\n" $yesterday $hour $yesterday $hour $lastsecond
done
2
03.02.2020, 14:23
2 ответа

Начиная с Debian buster,вы можете использоватьfind-dbgsym-packagesиз пакета debian-goodies.

find-dbgsym-packages lists all *-dbgsym packages required to properly debug processes given by a list of executables, libraries, core dumps or PID numbers.

1
28.04.2021, 23:24

readelf -Wa предоставит подробную информацию о дампе ядра, включая сопоставленные файлы (ищитеNT_FILE). Вы должны установить символы отладки для любого файла, который является двоичным или библиотекой. Чтобы найти соответствующие пакеты, установите apt-file, если вы еще этого не сделали, запустите sudo apt update, чтобы обновить его индексы, и запустите

apt-file search /path/to/file

Например, если /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.7.1отображается в списке сопоставленных файлов в данном дампе ядра,

$ apt-file search /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.7.1
libpcre2-8-0: /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.7.1

Кроме того, это говорит вам, что вам нужно установить libpcre2-8-0-dbgsym, чтобы иметь соответствующие символы отладки.

(Да, это несколько более громоздко, чем должно быть. Другие дистрибутивы делают это проще...)

1
28.04.2021, 23:24

Теги

Похожие вопросы