Сбой apport-retrace с ошибкой: файл отчета не содержит одно из обязательных полей

Я установил приложение с сайта разработчика, и оно зависало.

Я пытался использовать эту форму apport-retrace, чтобы получить отчет, который я мог отправить самому разработчику по электронной почте:

apport-retrace --confirm --gdb --sandbox system --verbose --cache /my/path/cache/apport-retrace --output /mypath/apport-retrace/appname.1000.crash /var/crash/_usr_bin_appname.1000.crash

Ошибка:

ОШИБКА : файл отчета не содержит одно из обязательных полей: CoreDump DistroRelease Package ExecutablePath

Я проверил файл сбоя, и пропущенное поле - «Пакет». Однако приложение не поставляется из пакета Debian. Есть ли способ, которым я могу сказать apport-retrace игнорировать это поле и сгенерировать лучший отчет, который он может?

РЕДАКТИРОВАТЬ: Я не пытаюсь сообщить об ошибке в Ubuntu. Я также не пытаюсь отправить отчет об ошибке на любой трекер ошибок. Моя цель - самостоятельно прочитать отчет о сбое. Это действительно моя единственная цель. Как только я прочту отчет о сбое в данном конкретном случае, я отправлю письмо разработчику. Но в целом мне нужен инструмент, который позволит мне читать отчеты о сбоях, генерируемые стандартными инструментами, установленными в Ubuntu.

Благодаря.

6
задан 25 September 2013 в 00:02

2 ответа

Это не ответ на вопрос ОП. Он уже понял, что если вы знаете имя пакета, вы можете просто добавить его, см.

В моей директории / var / crash я обнаружил аварийный файл _usr_bin_gconftool-2.0.crash и хотел узнать больше подробностей с помощью:

 apport-retrace -g _usr_bin_gconftool-2.0.crash

Я получил сообщение об ошибке:

ERROR: report file does not contain one of the required fields: CoreDump DistroRelease Package ExecutablePath

Так как поиск в сети указал мне на этот вопрос, я запутался в долгой дискуссии, которая отвлекла меня от простого решения.

Простое добавление

Package: gconftool-2

в начале файла позволило мне получить:

...
Core was generated by `gconftool-2 --get /desktop/gnome/interface/accessibility'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00007f5032236428 in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:54
54  ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.

Пожалуйста, не отрицайте этот ответ только, так как он не касается исходных вопросов , Это специально для людей, которые попали сюда с «нормальной» проблемой наличия аварийного дампа из стандартного пакета, в котором просто отсутствует имя пакета.

0
ответ дан 25 September 2013 в 00:02

Apport работает только для пакетов, установленных из официальных репозиториев Ubuntu. Вы должны сообщить об ошибке в трекере разработчиков, если у них есть какие-либо способы ее воспроизведения.

Я не пытаюсь сообщить об ошибке в Ubuntu. Я также не пытаюсь отправить отчет об ошибке на любой трекер ошибок. Моя цель - самостоятельно прочитать отчет о сбое. Это действительно моя единственная цель. Как только я прочту отчет о сбое в данном конкретном случае, я отправлю письмо разработчику. Но в целом мне нужен инструмент, который позволит мне читать отчеты о сбоях, генерируемые стандартными инструментами, установленными в Ubuntu.

Опять же, если программа отсутствует в репозиториях, Ubuntu не будет генерировать никаких отчетов о сбоях. Единственный способ просмотреть их - использовать терминал, ftrace, gdb и т. Д. Вы должны подключить к программе отладчик в случае двоичных файлов (C / C ++ и т. Д.) Или прочитать ошибку трассировки в случае интерпретаторов (Python, Perl, так далее.). apport игнорирует любой сбой, если двоичные файлы не приходят из репозиториев. Но Ubuntu предупредит вас о сбое программы всякий раз, когда она приходит из репозитория или вы создаете ее самостоятельно.

0
ответ дан 25 September 2013 в 00:02

Другие вопросы по тегам:

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