Уведомление об ошибках в Ubuntu Server Edition

Когда проект Ubuntu собирается выпустить редакцию программного обеспечения с настолько минимальным количеством ошибок, насколько это возможно, ошибки сразу проявляются. Вы можете помочь их исправить, отправляя отчеты об обнаруженных сбоях проекту. Проект Ubuntu использует Launchpad для отслеживания отчетов о своих ошибках. Чтобы зарегистрировать сбой в Ubuntu Server на Launchpad вам потребуется создать учетную запись.

Уведомление об ошибках с помощью ubuntu-bug

Предпочтительным способом отправить отчет об ошибке является использование команды ubuntu-bug. Утилита ubuntu-bug собирает информацию о системе, полезную разработчикам при диагностике описываемой проблемы, которая затем будет включена в отчет об ошибке, зарегистрированный на Launchpad. Отчеты об ошибках в Ubuntu требуют определения программного пакета, поэтому имя пакета, в котором произошла ошибка, должно быть передано ubuntu-bug:

ubuntu-bug PACKAGENAME

Например, для регистрации ошибки в пакете openssh-server, вам потребуется выполнить:

ubuntu-bug openssh-server

Вы можете указать для ubuntu-bug как двоичный пакет, так и пакет исходного кода. Опять же, используя openssh-server в качестве примера, вы можете создать отчет по пакету источника для openssh-server, openssh:

ubuntu-bug openssh
Смотрите раздел Управление пакетами для дополнительной информации о пакетах в Ubuntu.

Команда ubuntu-bug собирает информацию об упомянутой системе, возможно включая специфическую информацию для указанного пакета, и затем спрашивает что вы собираетесь делать с собранной информацией:

ubuntu-bug postgresql

*** Collecting problem information

The collected information can be sent to the developers to improve the
application. This might take a few minutes.
..........

*** Send problem report to the developers?

After the problem report has been sent, please fill out the form in the
automatically opened web browser.

What would you like to do? Your options are:
  S: Send report (1.7 KiB)
  V: View report
  K: Keep report file for sending later or copying to somewhere else
  C: Cancel
Please choose (S/V/K/C):

Доступными вариантами являются:

  1. Send Report Выбор отправки отчета отправит собранную информацию в Launchpad как часть процесса регистрации отчета об ошибке. Вы получаете возможность описать ситуацию, которая привела к появлению ошибки.

    *** Uploading problem information
    
    The collected information is being sent to the bug tracking system.
    This might take a few minutes.
    91%
    
    *** To continue, you must visit the following URL:
    
    https://bugs.launchpad.net/ubuntu/+source/postgresql-8.4/+filebug/kc6eSnTLnLxF8u0t3e56EukFeqJ?
    
    You can launch a browser now, or copy this URL into a browser on another
    computer.
    
    Choices:
      1: Launch a browser now
      C: Cancel
    Please choose (1/C):

    Если вы выберете запуск обозревателя, по умолчанию будет запущен текстовый интернет обозреватель w3m для завершения регистрации отчета об ошибке. В качестве альтернативы вы можете скопировать указанный URL в уже запущенный интернет обозреватель.

  2. View Report Выбор просмотра отчета приведет к показу собранной информации в терминал для повторного просмотра.

    Package: postgresql 8.4.2-2
    PackageArchitecture: all
    Tags: lucid
    ProblemType: Bug
    ProcEnviron:
      LANG=en_US.UTF-8
      SHELL=/bin/bash
    Uname: Linux 2.6.32-16-server x86_64
    Dependencies:
      adduser 3.112ubuntu1
      base-files 5.0.0ubuntu10
      base-passwd 3.5.22
      coreutils 7.4-2ubuntu2
    ...

    После просмотра отчета вы будете снова перенаправлены в меню с вопросом что вы собираетесь делать с отчетом.

  3. Keep Report File Выбор сохранения файла отчета приведет к записи в файл собранной информации. Этот файл может быть использован для дальнейшей регистрации отчета об ошибке или передан для отчета иной Ubuntu системе. Чтобы передать файл отчета, просто укажите его в качестве аргумента команды ubuntu-bug:

    What would you like to do? Your options are:
      S: Send report (1.7 KiB)
      V: View report
      K: Keep report file for sending later or copying to somewhere else
      C: Cancel
    Please choose (S/V/K/C): k
    Problem report file: /tmp/apport.postgresql.v4MQas.apport
    
    ubuntu-bug /tmp/apport.postgresql.v4MQas.apport
    
    *** Send problem report to the developers?
    ...
  4. Cancel Выбор отмены приведет к тому, что собранная информация будет сброшена.

Уведомление о крушениях приложений

Пакет программ, который предоставляет утилиту ubuntu-bug, apport может быть настроен на срабатывание при падении приложений. По умолчанию это отключено, поскольку захват падений может быть достаточно ресурсоёмким в зависимости от памяти, которую использовало упавшее приложение, а apport захватывает и обрабатывает память ядра.

Настройка apport на захват информации о падении приложений требует выполнения пары шагов. Сначала требуется установить gdb; он не устанавливается по умолчанию при установке Ubuntu Server Edition.

sudo apt-get install gdb

Смотрите раздел Управление пакетами для дополнительной информации об управлении пакетами в Ubuntu.

Как только вы убедитесь, что gdb установлен, откройте файл /etc/default/apport в вашем текстовом редакторе и измените настройку enabled в 1, как показано ниже:

# set this to 0 to disable apport, or to 1 to enable it
# you can temporarily override this with
# sudo service apport start force_start=1
enabled=1

# set maximum core dump file size (default: 209715200 bytes == 200 MB)
maxsize=209715200

Как только вы завершите редактирование /etc/default/apport, запустите сервис:

sudo start apport

После падения приложения используйте команду apport-cli для поиска информации о сохраненном отчете падения:

apport-cli

*** dash closed unexpectedly on 2010-03-11 at 21:40:59.

If you were not doing anything confidential (entering passwords or other
private information), you can help to improve the application by
reporting
the problem.

What would you like to do? Your options are:
  R: Report Problem...
  I: Cancel and ignore future crashes of this program version
  C: Cancel
Please choose (R/I/C):

Выбор Report Problem (сообщить о проблеме) проведет вас по шагам, аналогичным при использовании ubuntu-bug. Одним важным отличием будет то, что отчет о падении будет помечен как частный (private) при регистрации на Launchpad, что означает что он будет виден только ограниченному количеству сортировщиков. Эти сортировщики будут просматривать собранные данные на наличие частной информации перед тем как отчет об ошибке станет публично доступным.

Ссылки

  1. Посетите страницу Reporting Bugs Ubuntu wiki.

  2. Также смотрите страницу Apport для дополнительной полезной информации. Часть информации касается использования графического интерфейса.