You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2014/09/12 06:49:39 UTC
git commit: Fix diagnostic dump MBean
Repository: karaf
Updated Branches:
refs/heads/master 313258e13 -> f55db8c46
Fix diagnostic dump MBean
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/f55db8c4
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/f55db8c4
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/f55db8c4
Branch: refs/heads/master
Commit: f55db8c460f174ccfea8345ca068bfcdbd62e62e
Parents: 313258e
Author: Jean-Baptiste Onofré <jb...@apache.org>
Authored: Fri Sep 12 06:49:15 2014 +0200
Committer: Jean-Baptiste Onofré <jb...@apache.org>
Committed: Fri Sep 12 06:49:15 2014 +0200
----------------------------------------------------------------------
.../java/org/apache/karaf/diagnostic/core/Dump.java | 1 -
.../apache/karaf/diagnostic/command/DumpCommand.java | 1 +
.../apache/karaf/diagnostic/internal/Activator.java | 1 +
.../management/internal/DiagnosticDumpMBeanImpl.java | 15 +++++++++++++++
4 files changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/f55db8c4/diagnostic/boot/src/main/java/org/apache/karaf/diagnostic/core/Dump.java
----------------------------------------------------------------------
diff --git a/diagnostic/boot/src/main/java/org/apache/karaf/diagnostic/core/Dump.java b/diagnostic/boot/src/main/java/org/apache/karaf/diagnostic/core/Dump.java
index 3a4df0a..ab20fd0 100644
--- a/diagnostic/boot/src/main/java/org/apache/karaf/diagnostic/core/Dump.java
+++ b/diagnostic/boot/src/main/java/org/apache/karaf/diagnostic/core/Dump.java
@@ -77,7 +77,6 @@ public final class Dump {
} catch (Throwable t) {
// Ignore
}
- System.out.println("Created dump " + destination.toString());
}
// Private constructor
http://git-wip-us.apache.org/repos/asf/karaf/blob/f55db8c4/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/command/DumpCommand.java
----------------------------------------------------------------------
diff --git a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/command/DumpCommand.java b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/command/DumpCommand.java
index a7f0694..258c5ef 100644
--- a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/command/DumpCommand.java
+++ b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/command/DumpCommand.java
@@ -79,6 +79,7 @@ public class DumpCommand implements Action {
}
Dump.dump(bundleContext, destination);
+ System.out.println("Created dump " + destination.toString());
return null;
}
http://git-wip-us.apache.org/repos/asf/karaf/blob/f55db8c4/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/internal/Activator.java
----------------------------------------------------------------------
diff --git a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/internal/Activator.java b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/internal/Activator.java
index c54eccb..a94b2bf 100644
--- a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/internal/Activator.java
+++ b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/internal/Activator.java
@@ -63,6 +63,7 @@ public class Activator implements BundleActivator {
});
final DiagnosticDumpMBeanImpl diagnostic = new DiagnosticDumpMBeanImpl();
+ diagnostic.setBundleContext(context);
Hashtable<String, Object> props = new Hashtable<String, Object>();
props.put("jmx.objectname", "org.apache.karaf:type=diagnostic,name=" + System.getProperty("karaf.name"));
http://git-wip-us.apache.org/repos/asf/karaf/blob/f55db8c4/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/management/internal/DiagnosticDumpMBeanImpl.java
----------------------------------------------------------------------
diff --git a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/management/internal/DiagnosticDumpMBeanImpl.java b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/management/internal/DiagnosticDumpMBeanImpl.java
index 958e2ed..bf8903d 100644
--- a/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/management/internal/DiagnosticDumpMBeanImpl.java
+++ b/diagnostic/core/src/main/java/org/apache/karaf/diagnostic/management/internal/DiagnosticDumpMBeanImpl.java
@@ -14,6 +14,8 @@
package org.apache.karaf.diagnostic.management.internal;
import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.Date;
import javax.management.NotCompliantMBeanException;
import javax.management.StandardMBean;
@@ -22,6 +24,8 @@ import org.apache.karaf.diagnostic.core.Dump;
import org.apache.karaf.diagnostic.core.DumpDestination;
import org.apache.karaf.diagnostic.management.DiagnosticDumpMBean;
import org.osgi.framework.BundleContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* Implementation of diagnostic mbean.
@@ -33,6 +37,10 @@ public class DiagnosticDumpMBeanImpl extends StandardMBean implements Diagnostic
*/
private BundleContext bundleContext;
+ private SimpleDateFormat dumpFormat = new SimpleDateFormat("yyyy-MM-dd_HHmmss");
+
+ private final static Logger LOGGER = LoggerFactory.getLogger(DiagnosticDumpMBeanImpl.class);
+
/**
* Creates new diagnostic mbean.
*
@@ -55,6 +63,12 @@ public class DiagnosticDumpMBeanImpl extends StandardMBean implements Diagnostic
* {@inheritDoc}
*/
public void createDump(boolean directory, String name) {
+ if (name == null || name.trim().length() == 0) {
+ name = dumpFormat.format(new Date());
+ if (!directory) {
+ name += ".zip";
+ }
+ }
File target = new File(name);
DumpDestination destination;
@@ -65,6 +79,7 @@ public class DiagnosticDumpMBeanImpl extends StandardMBean implements Diagnostic
}
Dump.dump(bundleContext, destination);
+ LOGGER.info("Created dump " + destination.toString());
}
/**