time since JVM started
if your jvm program running in linux, you can view the startTime use ps
ps -p <pid> -o stime,etime
Starting from Java 5, you can use JMX to find this out. Check "Using the platform MBeanserver" to find out more details. The bean you're looking for is the bean called "java.lang:type=Runtime". The attribute StartTime gives you the time the JVM was started and the Uptime attribute tells you the uptime of the JVM.
You can get a reference to the Runtime bean by executing this code:
ManagementFactory.getRuntimeMXBean();
Use this snippet:
long jvmUpTime = ManagementFactory.getRuntimeMXBean().getUptime();
or:
long jvmStartTime = ManagementFactory.getRuntimeMXBean().getStartTime();
This is the correct way of retrieving JVM up-time.
For more info see RuntimeMXBean
You can get the start time of the JVM in the following code:
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
...
RuntimeMXBean runtimeMXBean = ManagementFactory.getRuntimeMXBean();
long uptimeInMillis = runtimeMXBean.getUptime();
See more are https://docs.oracle.com/javase/6/docs/api/java/lang/management/RuntimeMXBean.html.