Получите время безотказной работы приложения

Я написал приложение в java, и я хочу добавить функцию, чтобы сообщать о времени работы приложения. Есть ли класс/метод в JVM, который может это сделать?

Следует ли сохранить временную метку при запуске приложения, а затем рассчитать разницу с текущим временем безотказной работы в момент запроса?

Какой лучший способ получить время работы приложения в Java?

Ответы

Ответ 1

Вы можете использовать RuntimeMXBean.getUptime()

RuntimeMXBean rb = ManagementFactory.getRuntimeMXBean();
long uptime = rb.getUptime();

Ответ 2

Это похоже на приложение Heartbeat. IN, в котором вы пишете небольшое приложение, которое связывается с вашим java-приложением. Всякий раз, когда вы запускаете приложение, вы должны хранить время с датой в файле/базе данных. Приложение Monitor проверяет запущенное приложение или нет. Приложение монитора также имеет разницу между временем окончания и временем начала песка, отображающим время приложения.

Ответ 3

Результат в миллисекундах:

RuntimeMXBean mxBean = ManagementFactory.getRuntimeMXBean();
System.out.println(mxBean.getUptime());

Смотрите: ManagementFactory.getRuntimeMXBean() javadoc.