diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2013-02-09 18:14:46 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2013-02-09 18:14:46 +1300 |
commit | a4e4fd560bb52b2a06d9815f8d2251dc5456b6a6 (patch) | |
tree | ff88ed4351570699cf67628ce664b40f95331db8 /src/org | |
parent | ab72e6b1295f4f86ee2873c039f35f7c2da70395 (diff) | |
download | traccar-server-a4e4fd560bb52b2a06d9815f8d2251dc5456b6a6.tar.gz traccar-server-a4e4fd560bb52b2a06d9815f8d2251dc5456b6a6.tar.bz2 traccar-server-a4e4fd560bb52b2a06d9815f8d2251dc5456b6a6.zip |
Added system info logging (fix #139)
Diffstat (limited to 'src/org')
-rw-r--r-- | src/org/traccar/Main.java | 39 |
1 files changed, 33 insertions, 6 deletions
diff --git a/src/org/traccar/Main.java b/src/org/traccar/Main.java index 918370266..144ad1ec7 100644 --- a/src/org/traccar/Main.java +++ b/src/org/traccar/Main.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 Anton Tananaev (anton.tananaev@gmail.com) + * Copyright 2012 - 2013 Anton Tananaev (anton.tananaev@gmail.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,30 +15,57 @@ */ package org.traccar; +import java.lang.management.ManagementFactory; +import java.lang.management.MemoryMXBean; +import java.lang.management.OperatingSystemMXBean; +import java.lang.management.RuntimeMXBean; import java.util.Locale; import org.traccar.helper.Log; public class Main { + + private static void printSystemInfo() { + try { + OperatingSystemMXBean operatingSystemBean = ManagementFactory.getOperatingSystemMXBean(); + Log.info("Operating System" + + " name: " + operatingSystemBean.getName() + + " version: " + operatingSystemBean.getVersion() + + " architecture: " + operatingSystemBean.getArch()); - public static void main(String[] args) throws Exception { + RuntimeMXBean runtimeBean = ManagementFactory.getRuntimeMXBean(); + Log.info("Java Runtime" + + " name: " + runtimeBean.getVmName() + + " vendor: " + runtimeBean.getVmVendor() + + " version: " + runtimeBean.getVmVersion()); + + MemoryMXBean memoryBean = ManagementFactory.getMemoryMXBean(); + Log.info("Memory Limit" + + " heap: " + memoryBean.getHeapMemoryUsage().getMax() / (1024 * 1024) + "mb" + + " non-heap: " + memoryBean.getNonHeapMemoryUsage().getMax() / (1024 * 1024) + "mb"); + } catch (Exception e) { + Log.warning("Failed to get system info"); + } + } - // TODO: Temporary formatting workaround + public static void main(String[] args) throws Exception { Locale.setDefault(Locale.ENGLISH); final ServerManager service = new ServerManager(); service.init(args); - Log.info("starting server..."); + Log.info("Starting server..."); + printSystemInfo(); + service.start(); // Shutdown server properly Runtime.getRuntime().addShutdownHook(new Thread() { @Override public void run() { - Log.info("shutting down server..."); + Log.info("Shutting down server..."); service.stop(); } }); - } + } |