From a22b36b744ffd7e49902ac5326834a3839c5d258 Mon Sep 17 00:00:00 2001 From: Ricardo Santana Date: Thu, 29 Apr 2021 10:31:11 -0300 Subject: [PATCH] IDEMPIERE-4776 - iDempiere Monitor: Sort logs and Schedulers (#671) * IDEMPIERE-4776 - iDempiere Monitor: Sort logs and Schedulers * IDEMPIERE-4776 - iDempiere Monitor: Sort logs and Schedulers * get logs already sorted from LogFileInfo Co-authored-by: Carlos Ruiz --- .../org/compiere/server/LogFileInfo.java | 2 ++ .../org/compiere/web/AdempiereMonitor.java | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/org.adempiere.server/src/main/server/org/compiere/server/LogFileInfo.java b/org.adempiere.server/src/main/server/org/compiere/server/LogFileInfo.java index 01ef46a27f..182c1e5d35 100644 --- a/org.adempiere.server/src/main/server/org/compiere/server/LogFileInfo.java +++ b/org.adempiere.server/src/main/server/org/compiere/server/LogFileInfo.java @@ -28,6 +28,7 @@ package org.compiere.server; import java.io.File; import java.io.Serializable; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.compiere.util.CLogFile; @@ -62,6 +63,7 @@ public class LogFileInfo implements Serializable { if (logDir != null && logDir.isDirectory()) { File[] logs = logDir.listFiles(); + Arrays.sort(logs); for (int i = 0; i < logs.length; i++) { // Skip if is not a file - teo_sarca [ 1726066 ] diff --git a/org.adempiere.server/src/main/servlet/org/compiere/web/AdempiereMonitor.java b/org.adempiere.server/src/main/servlet/org/compiere/web/AdempiereMonitor.java index 16ac0be35a..651be107e4 100644 --- a/org.adempiere.server/src/main/servlet/org/compiere/web/AdempiereMonitor.java +++ b/org.adempiere.server/src/main/servlet/org/compiere/web/AdempiereMonitor.java @@ -25,6 +25,9 @@ import java.io.PrintWriter; import java.net.InetAddress; import java.sql.Timestamp; import java.util.ArrayList; + +import java.util.Arrays; +import java.util.Comparator; import java.util.Collection; import java.util.List; import java.util.Properties; @@ -759,6 +762,14 @@ public class AdempiereMonitor extends HttpServlet bb.addElement(new hr()); para = new p(); ServerInstance[] servers = getServerManager().getServerInstances(); + Arrays.sort(servers, new Comparator() { + public int compare(ServerInstance o1, ServerInstance o2) { + if (o1 == null || o1.getModel() == null || o1.getModel().getName() == null + || o2 == null || o2.getModel() == null || o2.getModel().getName() == null) + return 0; + return o1.getModel().getName().compareTo(o2.getModel().getName()); + } + }); for (int i = 0; i < servers.length; i++) { if (i > 0) @@ -1152,6 +1163,7 @@ public class AdempiereMonitor extends HttpServlet // List Log Files p p = new p(); p.addElement(new b("All Log Files: ")); + p.addElement(new br()); // All in dir LogFileInfo logFiles[] = systemInfo.getLogFileInfos(); for (LogFileInfo logFile : logFiles) @@ -1159,7 +1171,11 @@ public class AdempiereMonitor extends HttpServlet if (logFile != logFiles[0]) p.addElement(" - "); String fileName = logFile.getFileName(); - a link = new a ("idempiereMonitor?Trace=" + fileName, fileName); + String displayName = fileName; + int index = fileName.lastIndexOf(File.separator); + if (index > 1) + displayName = fileName.substring(index+1); + a link = new a ("idempiereMonitor?Trace=" + fileName, displayName); p.addElement(link); int size = (int)(logFile.getFileSize()/1024); if (size < 1024)