Как проанализировать файл Snap. * Trc? - PullRequest
0 голосов
/ 26 июня 2018

Сейчас я изучаю OOM в WebSphere, я получил файл Snap.*.trc. Я сослался на комментарий другого SO-вопроса: Как проанализировать файл * .dmp ядра Websphere и файлы Snap * .trc? , и я создал файл Snap.*.trc.fmt.

Однако я не могу понять, что это за файл. Например, журнал GC (native_stderr.log), я могу видеть, что делает сборщик мусора, используя IBM Pattern Modeling and Analysis Tool(PMAT), но, похоже, нет инструмента для анализа файла Snap.*.trc. Есть ли какой-нибудь инструмент для этого?

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Вы всегда можете использовать GMCV Центр здоровья . Загрузите и установите его через Eclipse Market место. Умеет читать trc файлы. Также см. Руководство пользователя здесь . Он может дать вам информацию о следующих вещах:

  • Классы: информация о загружаемых классах
  • CPU: использование процессора для приложения и системы, в которой оно работает
  • Среда: Подробная информация о конфигурации и системе контролируемого применение
  • Сборка мусора: информация о куче и времени ожидания Java
  • I / O: информация о выполняемых операциях ввода / вывода
  • Блокировка: информация о раздорах на надувных замках
  • Отслеживание метода: информация об использовании метода во времени
  • Собственная память: информация об использовании собственной памяти
  • Профилирование: Предоставляет профиль выборки методов Java, включая пути вызовов
  • Threads: Информация о живых потоках отслеживаемой JVM
0 голосов
/ 26 июня 2018

Как правило, файлы Snap*trc используются службой поддержки, а не клиентами. Они содержат любые данные трассировки, хранящиеся в памяти на момент создания дампа. Они могут быть полезны в некоторых случаях OOM для проверки, например, возникла ли OOM из-за исчерпания собственной памяти. Кажется, вы уже выяснили, как их отформатировать, и полученный текстовый файл *trc.fmt представляет собой просто набор точек трассировки, поэтому он аналогичен анализу любой трассировки (что обычно означает, что вам нужно понять код и, следовательно, почему Snap*trc файлы, как правило, ограничены для использования службой поддержки). Вы можете найти немного больше информации о файлах Snap здесь: https://publib.boulder.ibm.com/httpserv/cookbook/Troubleshooting-Troubleshooting_Java-Troubleshooting_IBM_Java.html#Troubleshooting-Troubleshooting_IBM_Java-Snap_Traces

С учетом сказанного, в общем, вот как я анализирую OOM:

  1. Посмотрите на 1TISIGINFO в файле javacore*txt. Это скажет вам, является ли это OOM Java или нативным OOM.
  2. Если это Java OOM, загрузите файл core*dmp в IBM Memory Analyzer Tool . Обратите внимание, что другой вопрос, на который вы ссылались, говорит, что вы должны запустить jextract в файле core*dmp, чтобы проанализировать его, и это больше не относится к последним версиям Java - просто загрузите файл core*dmp в инструмент IBM MAT .
  3. Если это нативный OOM, тогда это становится более сложным, поэтому вы можете отправить сюда подробности.

Как всегда, вы также можете открыть службу поддержки в IBM, и они могут помочь вам в этом анализе.

...