Google Chrome - место сброса сбоя

Я пытаюсь отлаживать страницу в веб-приложении, которое продолжает сбой Chrome (ошибка "Aw, snap!" ). Я включил/отключил автоматическую отчетность о сбоях, попытался выполнить регистрацию с помощью google-chrome --enable-logging --v=1 (а также различные уровни многословности), и все, что я получаю, это "идентификатор аварийного дампа" в chrome_debug.log chrome://crashes Показывает все идентификаторы дампа, но фактический файл дампа

Я вижу другие вопросы, ссылаясь на чтение файлов дампа, но я не могу найти сами файлы дампа (только идентификатор).

Grepping для идентификатора сбоя в /tmp и ~/.config/google-chrome/ ничего не отображается, но ~/.config/google-chrome/chrome_debug.log показывает, что что-то было отправлено:

--2015-04-06 11:10:00--  https://clients2.google.com/cr/report
Resolving clients2.google.com (clients2.google.com)... 74.125.228.224, 74.125.228.225, 74.125.228.231, ...
Connecting to clients2.google.com (clients2.google.com)|74.125.228.224|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘/dev/fd/3’

     0K
 Crash dump id:  7dac9d5d58258264 

Любые идеи о том, где найти фактический файл/данные, которые были отправлены?

Подробнее: Версия для Chrome: 40.0.2214.111 (Official Build) Linux Mint 16 (Петра)

Изменить: Дополнительная информация:

[email protected]:-$ tail -n 5 uploads.log && echo $(pwd)
1428584493,ddc357e4600a49e6
1428584497,7ac16455c152381a
1428589439,d00ad6f5e6426f3d
1428934450,66b3f722430511e8
1428939578,7a2efc2b681515d1
/home/curtis/.config/google-chrome/Crash Reports

[email protected]:-$ ll -a
total 12
drwx------ 2 curtis curtis 4096 Apr  6 11:32 .
drwx------ 9 curtis curtis 4096 Apr 13 11:43 ..
-rw------- 1 curtis curtis 3291 Apr 13 11:39 uploads.log

Info in chrome://crashes matches up to <code>uploads.log</code>

Автоматическая отчетность включена... Automatic Reporting **is** enabled

Спасибо!

Ответы

Ответ 1

Файлы *.dmp хранятся в /tmp/, и это не имеет никакого отношения к флажку "Автоматическая отчет о сбоях". Файл также не связан с хешем, хранящимся в ~/.config/google-chrome/

В ~/.config/google-chrome/Crash Reports/uploads.log:

1429189585,5bddea9f7433e3da

Из использования файла дампа сбоя для этого конкретного отчета было:

chromium-renderer-minidump-2113a256de381bce.dmp

Решение:

[email protected]:-$ mkdir /tmp/misc && chmod 777 /tmp/misc
[email protected]:-$ cd /tmp
[email protected]:-$ watch -n 1 'find . -mmin -1 -exec cp {} /tmp/misc/ \;'

Затем, как обычный пользователь (не root):

google-chrome --enable-logging --v=1

После просмотра файлов, созданных командой watch, запустите:

[email protected]:-$ ls -l
-rw-------  1 root root 230432 Apr 16 09:06 chromium-renderer-minidump-2113a256de381bce.dmp
-rw-------  1 root root 230264 Apr 16 09:12 chromium-renderer-minidump-95889ebac3d8ac81.dmp
-rw-------  1 root root 231264 Apr 16 09:13 chromium-renderer-minidump-da0752adcba4e7ca.dmp
-rw-------  1 root root 236246 Apr 16 09:12 chromium-upload-56dc27ccc3570a10
-rw-------  1 root root 237247 Apr 16 09:13 chromium-upload-5cebb028232dd944

Теперь вы можете использовать breakpad для работы с файлами *.dmp.

Ответ 2

Google Chrome - местоположение аварийного сброса

Чтобы сгенерировать дамп сбоя локально,

 CHROME_HEADLESS=1 google-chrome

Затем файлы .dmp сохраняются в ~/.config/google-chrome/Crash Reports

Произвести трассировку стека

  • Откроется и добавьте depot_tools к вашему PATH (используется для сборки breakpad)

    git clone https://chromium.googlesource.com/chromium/tools/depot_tools
    export PATH=`pwd`/depot_tools:"$PATH"
    
  • Выйдите и постройте breakpad (используя выбор из depot_tools)

    mkdir breakpad && cd breakpad
    fetch breakpad
    cd src
    ./config && make
    
  • Чтобы создать трассировку стека без символов:

    breakpad/src/processor/minidump_stackwalk -m /path/to/minidump
    

Подробнее здесь https://www.chromium.org/developers/decoding-crash-dumps

Лично предпочтительный метод

  • Включить отчет о сбоях:

    Меню Chrome > Настройки > Показать дополнительные настройки > Отметьте "Автоматически отправлять статистику использования и отчеты о сбоях в Google"

  • Перейти к chrome://crashes > Ошибка файлa > Приходит к crbug.com > Complete сообщение, оставляющее без изменений добавленный report_id field.

  • Кто-то из команды Chrome/Chromium будет следить за ними. Они могут обеспечить вы с вашей трассировкой стека и помощью для решения проблемы.