Я работаю над кодом, который работает как сервис. В основном он слушает ввод и производит вывод соответственно.
Я пытаюсь профилировать пакет, используя jrat. [У нас нет лицензии на Jprofiler, и я не могу настроить пробную версию для правильной работы].
Я следовал инструкциям здесь:
http://transferer.blogspot.com/2009/12/how-to-use-jrat-in-eclipse.html
а также
http://digiassn.blogspot.com/2008/01/java-using-jrat-under-eclipse.html
Я получаю выходные файлы .jrat, но вижу только следующее:
001_JRat-LOG.jrat рабочий стол% cat
001_JRat-LOG.jrat
Зритель = "org.shiftone.jrat.ui.viewer.SimpleTextOutputViewBuilder"
JRat: INFO (18 октября, 17: 15: 32 769) (основной)
RuntimeContextImpl - файл журнала создан
JRat: INFO (18 октября, 17: 15: 32 769) (основной)
RuntimeContextImpl - Запуск JRat
версия 1-alpha2 - построена 31 июля
2006 JRat: INFO (18.10.17: 15: 32,770)
(основные) настройки - строка
'jrat.factory' =
'Org.shiftone.jrat.provider.silent.SilentMethodHandler'
JRat: INFO (18 октября, 17: 15: 32 771) (основной)
RootFactory - JRat создает рут
Фабрика-обработчик ... JRat: ИНФОРМАЦИЯ
17: 15: 42,451) (JRat-JMX-Poller)
WaitingJmxRegistry - регистрация 6
mbean (s) JRat: ИНФО (октябрь / 18)
17: 15: 42,451) (JRat-JMX-Poller)
ServerJmxRegistry - registerMBean
org.shiftone.jrat.core.jmx.info.JRatInfo@c5e9c
shiftone.jrat: Сервис = org.shiftone.jrat.core.jmx.info.JRatInfo
JRat: INFO (18 октября, 17: 15: 42 453)
(JRat-JMX-Poller) СерверJmxRegistry -
registerMBean
org.shiftone.jrat.util.log.LoggingManager@11756a4
shiftone.jrat: Сервис = org.shiftone.jrat.util.log.LoggingManager
JRat: INFO (18 октября, 17: 15: 42 453)
(JRat-JMX-Poller) СерверJmxRegistry -
registerMBean
org.shiftone.jrat.core.jmx.benchmark.Benchmark@b301f2
shiftone.jrat: Сервис = org.shiftone.jrat.core.jmx.benchmark.Benchmark
JRat: INFO (18 октября, 17: 15: 42 453)
(JRat-JMX-Poller) СерверJmxRegistry -
registerMBean
Трансформаторные [AsmInjectorStrategy (использование
http://asm.objectweb.org)]
shiftone.jrat: Сервис = org.shiftone.jrat.inject.bytecode.Transformer
JRat: INFO (18 октября, 17: 15: 42, 454)
(JRat-JMX-Poller) СерверJmxRegistry -
registerMBean
org.shiftone.jrat.core.shutdown.ShutdownRegistry@4be2cc
shiftone.jrat: Сервис = org.shiftone.jrat.core.shutdown.ShutdownRegistry
JRat: INFO (18 октября, 17: 15: 42, 454)
(JRat-JMX-Poller) СерверJmxRegistry -
registerMBean
FileOutputRegistry [PrintWriter [001_JRat-LOG.jrat]]
shiftone.jrat: Сервис = org.shiftone.jrat.core.output.FileOutputRegistry
JRat: INFO (18 октября, 17: 15: 48 825)
(JRat-Shutdown) ShutdownRegistry -
закрытие
вниз ... [трансформаторные [AsmInjectorStrategy (использование
http://asm.objectweb.org)],
FileOutputRegistry [PrintWriter [001_JRat-LOG.jrat]]]
JRat: INFO (18 октября, 17: 15: 48 826)
(JRat-Shutdown) ShutdownRegistry -
Выключение
FileOutputRegistry [PrintWriter [001_JRat-LOG.jrat]] ...
JRat: INFO (18 октября, 17: 15: 48 826)
(JRat-Shutdown) FileOutputRegistry -
closeFileOutputs
[PrintWriter [001_JRat-LOG.jrat]]
JRat: INFO (18 октября, 17: 15: 48 826)
(JRat-Shutdown) FileOutputRegistry -
закрытие:
PrintWriter [001_JRat-LOG.jrat]
JRat: INFO (18 октября, 17: 15: 48 826)
(JRat-Shutdown) FileOutputPrintWriter
- закрытие JRat: INFO (18 октября, 17: 15: 48 826) (JRat-Shutdown)
FileOutputRegistry - удалить
PrintWriter [001_JRat-LOG.jrat]
Кто-то использовал это раньше на Linux? Я думаю, так как я запускаю это как службу ... после запуска моего приложения я нажимаю кнопку завершения, чтобы остановить мое приложение [в отличие от других приложений, которые могут завершать работу самостоятельно после завершения работы] .. это, вероятно, не делает приложение завершенным изящно а значит jrat не производит дамп ?? Это всего лишь слепое предположение.
Спасибо
P.S:
Я использую затмение
Java версия 1.6.0_13
Изменения:
Не удалось заставить это работать, но вместо этого попробовал Visualvm, который работает нормально.Однако необходимо профилировать удаленное приложение, [так как я хочу профилировать часть своего сервиса и простой способ подчеркнуть эту часть кода и получить его номер от самого сервера], поэтому буду искать что-то, что легко использовать удаленно.