Гость
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / StopWatchers кто какие использует? / 12 сообщений из 12, страница 1 из 1
08.12.2021, 14:05
    #40118405
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Я нашел аж 3 штуки.
- org.springframework.util.StopWatch
- com.google.inject.internal.util.Stopwatch
- org.apache.commons.lang3.time.StopWatch

Google -овский уж совсем простой. Только на 1 событие.
Спринговый трекает сразу несколько событий (или потоков).
Apache common-овский. Тут есть и start и suspend (интересное событие) и можно статусы проверять.
И какой-то split еще есть. Но у него есть строгие правила. Где-то нарушена хронология дейстий с вотчером
(вследствие блоков try-catch у меня в коде) = сразу кидает IllegalStateException. Это немножко меня
поднапрягает. Хотелось-бы какую-то либеральную логику обхода этого. Или больше transitions в автомате.

А мне еще желательно отчот прикрутить. Что-то типа диаграмм Паретто по основным
потребителям времени.

Вот думаю свой написать или взять с этих.
...
Рейтинг: 0 / 0
08.12.2021, 14:24
    #40118410
SpringMan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
dropwizard еще есть. Может немного жирноватый правда. Для отчетов можно в graphite посылать, в консоль, http с json (тут правда не в курсе удобно ли)
...
Рейтинг: 0 / 0
08.12.2021, 14:57
    #40118422
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
SpringMan
dropwizard еще есть. Может немного жирноватый правда. Для отчетов можно в graphite посылать, в консоль, http с json (тут правда не в курсе удобно ли)


Спасибо. Посмотрю. Знакомое слово Gauge... где то я уже видел библиотечку с таким названием.
...
Рейтинг: 0 / 0
08.12.2021, 15:21
    #40118427
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Не очень понимаю, зачем они вообще нужны, если существуют нормальные программы (профайлеры) которые это и так делают сами по себе. Разумеется, большинство нормальных - платные.
...
Рейтинг: 0 / 0
08.12.2021, 16:32
    #40118443
SpringMan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Leonid Kudryavtsev,

Основной смысл сбора этого добра - это последующая визуализация количества/времени обработки разных событий, добавления мониторинга на них и уведомлений в случае чего. Да и довольно часто просто сравнить графики в момент_когда_было_хорошо и момент_когда_было_плохо помогает быстро понять, кто виноват и что делать. Наверное и профайлеры есть, которые могут в онлайн, но как мне кажется, они все таки работают на уровне java-методов, а не бизнес-сущностей
...
Рейтинг: 0 / 0
08.12.2021, 16:41
    #40118446
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Х.з. Вспоминая проекты, на которых был, везде использовался стоп-вотчер - (минус), входит в стандартный Java Lang

endTime - startTime

:-)
...
Рейтинг: 0 / 0
08.12.2021, 16:42
    #40118447
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Leonid Kudryavtsev
Не очень понимаю, зачем они вообще нужны, если существуют нормальные программы (профайлеры) которые это и так делают сами по себе. Разумеется, большинство нормальных - платные.

Профайлер не всегда пригоден. У меня были такие тяжелые задачи которые запусклись
на проде и работали всю ночь. И утром можно было получить статистику по ним.
Но в случае трабл-шутинга (стало работать дольше на 40%) мне надо было понять
где и какой метод работал долго. Методы были мультипоточные. Частично перекрывались.
И я просто накапливал кумулятивное время по каждому. Везде по разному. Где-то через
логи SpringBatch. Где-то черер аспекты. А где-то можно было просто поставить такий
тихий наблюдатель. Watcher. И даже не запрещать его. Пускай фискирует время всегда.
Только результат его будет нужен от случая к случаю.

Кроме того профайлер вываливает тебе на голово достаточно сырую информацию где на вершине
стека стоит обычно интеракция с сетевым сокетом. А отчет по watcher может представлять
информацию в том разрезе как нужно.
...
Рейтинг: 0 / 0
08.12.2021, 16:45
    #40118450
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
SpringMan
...это последующая визуализация количества/времени обработки разных событий, добавления мониторинга на них и уведомлений в случае чего...

Не помню, каким пакетом для сбора и визуализации __статистики__ пользовались. Но обрабатываемая статистика была значительно больше, чем просто время обработки. Т.ч. subj данную задачу так же не покрывает. Какая была библиотека на проекте, уже не помню.
...
Рейтинг: 0 / 0
08.12.2021, 16:48
    #40118454
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
mayton
Профайлер не всегда пригоден.

Тут можно согласиться. Например в случае с AKKA профайлер показывает полный бред. 99% это wait внутри выгребания событий из очереди AKKA. Остальные 1% так же выглядят как какие-то рандомные строки из проекта.

Но тут уже проблема не в профайлере, а в тех, кто AKKA на проект притащил )))
...
Рейтинг: 0 / 0
08.12.2021, 16:52
    #40118459
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Leonid Kudryavtsev
mayton
Профайлер не всегда пригоден.

Тут можно согласиться. Например в случае с AKKA профайлер показывает полный бред. 99% это wait внутри выгребания событий из очереди AKKA. Остальные 1% так же выглядят как какие-то рандомные строки из проекта.

Но тут уже проблема не в профайлере, а в тех, кто AKKA на проект притащил )))

Я из-за этой Акки ... каки.... купил себе книжку по Erlang. Хотел проникнуться с основами...
Куда там... слишком всё разное.
...
Рейтинг: 0 / 0
08.12.2021, 16:56
    #40118461
SpringMan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Leonid Kudryavtsev

Не помню, каким пакетом для сбора и визуализации __статистики__ пользовались. Но обрабатываемая статистика была значительно больше, чем просто время обработки. Т.ч. subj данную задачу так же не покрывает. Какая была библиотека на проекте, уже не помню.

Это да, только время обработки не репрезентативно. Но надо ж с чего-то начать) Если задача только время обработки одного метода, то "минус"+логи похож на самый удобный вариант
...
Рейтинг: 0 / 0
08.12.2021, 18:21
    #40118491
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StopWatchers кто какие использует?
Leonid Kudryavtsev
mayton
Профайлер не всегда пригоден.

Тут можно согласиться. Например в случае с AKKA профайлер показывает полный бред. 99% это wait внутри выгребания событий из очереди AKKA. Остальные 1% так же выглядят как какие-то рандомные строки из проекта.

Но тут уже проблема не в профайлере, а в тех, кто AKKA на проект притащил )))


у акки там своя атмосфера.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / StopWatchers кто какие использует? / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]