You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by ms...@apache.org on 2003/06/06 16:02:09 UTC
cvs commit: jakarta-jmeter/src/protocol/java/org/apache/jmeter/protocol/java/sampler AbstractJavaSamplerClient.java
mstover1 2003/06/06 07:02:09
Modified: bin jmeter.properties
src/core/org/apache/jmeter/config/gui ArgumentsPanel.java
src/core/org/apache/jmeter/engine ClientJMeterEngine.java
src/core/org/apache/jmeter/gui
AbstractJMeterGuiComponent.java
src/core/org/apache/jmeter/gui/action AbstractAction.java
ActionRouter.java AddParent.java AddToTree.java
ChangeLanguage.java Clear.java
src/core/org/apache/jmeter/testelement
AbstractTestElement.java
src/core/org/apache/jmeter/testelement/property
AbstractProperty.java
src/core/org/apache/jmeter/util JMeterUtils.java
src/core/org/apache/jmeter/visualizers/gui
AbstractVisualizer.java
src/jorphan/org/apache/jorphan/logging LoggingManager.java
src/jorphan/org/apache/jorphan/reflect ClassFinder.java
src/jorphan/org/apache/jorphan/test AllTests.java
src/protocol/http/org/apache/jmeter/protocol/http/gui
AuthPanel.java
src/protocol/http/org/apache/jmeter/protocol/http/modifier
AnchorModifier.java
src/protocol/java/org/apache/jmeter/protocol/java/sampler
AbstractJavaSamplerClient.java
Added: src/jorphan/org/apache/jorphan/util ClassContext.java
Log:
New Logging procedure (Sebastian Bazley)
Revision Changes Path
1.76 +21 -12 jakarta-jmeter/bin/jmeter.properties
Index: jmeter.properties
===================================================================
RCS file: /home/cvs/jakarta-jmeter/bin/jmeter.properties,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -r1.75 -r1.76
--- jmeter.properties 5 Jun 2003 17:33:36 -0000 1.75
+++ jmeter.properties 6 Jun 2003 14:02:07 -0000 1.76
@@ -70,22 +70,31 @@
not_in_menu=Remote Method Configuration,JNDI Configuration,JNDI Lookup Configuration,JNDI Request,Default Controller,org.apache.jmeter.control.DynamicController, org.apache.jmeter.protocol.http.control.Cookie,org.apache.jmeter.protocol.http.control.Authorization,org.apache.jmeter.config.LoginConfig,Header,org.apache.jmeter.protocol.http.config.MultipartUrlConfig
#Logging levels for the logging categories in JMeter. Correct values are FATAL_ERROR, ERROR, WARN, INFO, and DEBUG
+# To set the log level for a package or individual class, use:
+# log_level.[package_name].[classname]=[PRIORITY_LEVEL]
+# But omit "org.apache" from the package name. The classname is optional. Further examples below.
+
log_level.jmeter=WARN
-log_level.jmeter.engine=WARN
-log_level.jmeter.gui=DEBUG
-log_level.jmeter.elements=WARN
-log_level.jmeter.util=WARN
-log_level.jmeter.util.classfinder=WARN
-log_level.jmeter.test=DEBUG
-log_level.jmeter.protocol.http=DEBUG
-log_level.jmeter.protocol.ftp=WARN
-log_level.jmeter.protocol.jdbc=WARN
-log_level.jmeter.protocol.java=WARN
-log_level.jmeter.elements.properties=WARN
+log_level.jmeter.junit=DEBUG
+#log_level.jmeter.engine=WARN
+#log_level.jmeter.gui=WARN
+#log_level.jmeter.testelement=WARN
+#log_level.jmeter.util=WARN
+#log_level.jmeter.util.classfinder=WARN
+#log_level.jmeter.test=DEBUG
+#log_level.jmeter.protocol.http=DEBUG
+#log_level.jmeter.protocol.ftp=WARN
+#log_level.jmeter.protocol.jdbc=WARN
+#log_level.jmeter.protocol.java=WARN
+#log_level.jmeter.testelements.property=WARN
log_level.jorphan=ERROR
#Log file for log messages.
-log_file=jmeter.log
+# You can specify a different log file for different categories via:
+# log_file.[category]=[filename]
+# category is equivalent to the package/class names described above
+
+log_file.jmeter=jmeter.log
#---------------------------------------------------------------------------
1.16 +3 -4 jakarta-jmeter/src/core/org/apache/jmeter/config/gui/ArgumentsPanel.java
Index: ArgumentsPanel.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/config/gui/ArgumentsPanel.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- ArgumentsPanel.java 4 Jun 2003 14:31:43 -0000 1.15
+++ ArgumentsPanel.java 6 Jun 2003 14:02:07 -0000 1.16
@@ -79,7 +79,7 @@
import org.apache.jmeter.testelement.property.PropertyIterator;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.gui.ObjectTableModel;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/**
@@ -95,8 +95,7 @@
implements ActionListener
{
/** Logging. */
- private static transient Logger log =
- Hierarchy.getDefaultHierarchy().getLoggerFor(JMeterUtils.GUI);
+ private static transient Logger log =LoggingManager.getLoggerForClass();
/** The title label for this component. */
private JLabel tableLabel;
1.8 +4 -5 jakarta-jmeter/src/core/org/apache/jmeter/engine/ClientJMeterEngine.java
Index: ClientJMeterEngine.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/engine/ClientJMeterEngine.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- ClientJMeterEngine.java 2 May 2003 20:58:10 -0000 1.7
+++ ClientJMeterEngine.java 6 Jun 2003 14:02:07 -0000 1.8
@@ -61,7 +61,7 @@
import org.apache.jmeter.testelement.TestListener;
import org.apache.jorphan.collections.HashTree;
import org.apache.jorphan.collections.SearchByClass;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -74,8 +74,7 @@
***********************************************************/
public class ClientJMeterEngine implements JMeterEngine,Runnable
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.engine");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
RemoteJMeterEngine remote;
HashTree test;
SearchByClass testListeners;
1.22 +2 -3 jakarta-jmeter/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java
Index: AbstractJMeterGuiComponent.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- AbstractJMeterGuiComponent.java 29 May 2003 13:33:56 -0000 1.21
+++ AbstractJMeterGuiComponent.java 6 Jun 2003 14:02:08 -0000 1.22
@@ -69,7 +69,6 @@
import org.apache.jmeter.testelement.property.BooleanProperty;
import org.apache.jmeter.testelement.property.NullProperty;
import org.apache.jmeter.testelement.property.StringProperty;
-import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -96,7 +95,7 @@
implements JMeterGUIComponent
{
/** Logging */
- private static Logger log = LoggingManager.getLoggerFor(JMeterUtils.GUI);
+ private static Logger log = LoggingManager.getLoggerForClass();
/** Flag indicating whether or not this component is enabled. */
private boolean enabled = true;
1.8 +1 -2 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AbstractAction.java
Index: AbstractAction.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AbstractAction.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- AbstractAction.java 29 Apr 2003 15:47:43 -0000 1.7
+++ AbstractAction.java 6 Jun 2003 14:02:08 -0000 1.8
@@ -8,7 +8,6 @@
import org.apache.jmeter.control.ReplaceableController;
import org.apache.jmeter.gui.tree.JMeterTreeNode;
import org.apache.jmeter.testelement.TestElement;
-import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.collections.HashTree;
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -20,7 +19,7 @@
* Window>Preferences>Java>Templates.
*/
public abstract class AbstractAction implements Command {
- protected static Logger log = LoggingManager.getLoggerFor(JMeterUtils.GUI);
+ protected static Logger log = LoggingManager.getLoggerForClass();
/**
* @see Command#doAction(ActionEvent)
1.14 +2 -2 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/ActionRouter.java
Index: ActionRouter.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/ActionRouter.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- ActionRouter.java 5 Jun 2003 16:22:21 -0000 1.13
+++ ActionRouter.java 6 Jun 2003 14:02:08 -0000 1.14
@@ -68,8 +68,8 @@
import org.apache.jmeter.gui.GuiPackage;
import org.apache.jmeter.util.JMeterUtils;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.jorphan.reflect.ClassFinder;
-import org.apache.log.Hierarchy;
import org.apache.log.Logger;
/**
@@ -85,7 +85,7 @@
private Map commands = new HashMap();
private static ActionRouter router;
private static AddToTree add = new AddToTree();
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.gui");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private Map preActionListeners = new HashMap();
private Map postActionListeners = new HashMap();
1.6 +3 -4 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AddParent.java
Index: AddParent.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AddParent.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- AddParent.java 3 Feb 2003 16:08:35 -0000 1.5
+++ AddParent.java 6 Jun 2003 14:02:08 -0000 1.6
@@ -62,7 +62,7 @@
import org.apache.jmeter.gui.GuiPackage;
import org.apache.jmeter.gui.tree.JMeterTreeNode;
import org.apache.jmeter.testelement.TestElement;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/****************************************
@@ -75,8 +75,7 @@
public class AddParent implements Command
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.gui");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private static Set commands = new HashSet();
static
{
1.7 +5 -6 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AddToTree.java
Index: AddToTree.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AddToTree.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- AddToTree.java 3 Feb 2003 16:08:35 -0000 1.6
+++ AddToTree.java 6 Jun 2003 14:02:08 -0000 1.7
@@ -66,7 +66,7 @@
import org.apache.jmeter.gui.GuiPackage;
import org.apache.jmeter.gui.tree.JMeterTreeNode;
import org.apache.jmeter.testelement.TestElement;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/**
@@ -78,8 +78,7 @@
*/
public class AddToTree implements Command
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.gui");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private Map allJMeterComponentCommands;
public AddToTree()
1.7 +1 -1 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/ChangeLanguage.java
Index: ChangeLanguage.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/ChangeLanguage.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ChangeLanguage.java 5 Feb 2003 05:12:07 -0000 1.6
+++ ChangeLanguage.java 6 Jun 2003 14:02:08 -0000 1.7
@@ -73,7 +73,7 @@
{
private static final Set commands = new HashSet();
public final static String CHANGE_LANGUAGE = "change_language";
- private Logger log = LoggingManager.getLoggerFor(JMeterUtils.GUI);
+ private Logger log = LoggingManager.getLoggerForClass();
static
{
1.5 +3 -4 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/Clear.java
Index: Clear.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/Clear.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- Clear.java 3 Feb 2003 16:08:35 -0000 1.4
+++ Clear.java 6 Jun 2003 14:02:08 -0000 1.5
@@ -63,7 +63,7 @@
import org.apache.jmeter.gui.JMeterGUIComponent;
import org.apache.jmeter.gui.tree.JMeterTreeNode;
import org.apache.jmeter.samplers.Clearable;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/************************************************************
@@ -76,8 +76,7 @@
public class Clear implements Command
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.gui");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
public final static String CLEAR = "action.clear";
public final static String CLEAR_ALL = "action.clear_all";
1.19 +3 -3 jakarta-jmeter/src/core/org/apache/jmeter/testelement/AbstractTestElement.java
Index: AbstractTestElement.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/testelement/AbstractTestElement.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- AbstractTestElement.java 7 May 2003 15:23:16 -0000 1.18
+++ AbstractTestElement.java 6 Jun 2003 14:02:08 -0000 1.19
@@ -14,7 +14,7 @@
import org.apache.jmeter.testelement.property.PropertyIteratorImpl;
import org.apache.jmeter.testelement.property.StringProperty;
import org.apache.jmeter.testelement.property.TestElementProperty;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/****************************************
@@ -27,7 +27,7 @@
public abstract class AbstractTestElement implements TestElement, Serializable
{
- protected static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.elements");
+ protected static Logger log = LoggingManager.getLoggerForClass();
private Map propMap = Collections.synchronizedMap(new HashMap());
1.7 +1 -2 jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java
Index: AbstractProperty.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/testelement/property/AbstractProperty.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- AbstractProperty.java 2 May 2003 21:38:09 -0000 1.6
+++ AbstractProperty.java 6 Jun 2003 14:02:08 -0000 1.7
@@ -6,13 +6,12 @@
import java.util.Map;
import org.apache.jmeter.testelement.TestElement;
-import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
public abstract class AbstractProperty implements JMeterProperty
{
- protected static Logger log = LoggingManager.getLoggerFor(JMeterUtils.PROPERTIES);
+ protected static Logger log = LoggingManager.getLoggerForClass();
private String name;
private boolean runningVersion = false;
private Map ownerMap;
1.26 +5 -1 jakarta-jmeter/src/core/org/apache/jmeter/util/JMeterUtils.java
Index: JMeterUtils.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/util/JMeterUtils.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- JMeterUtils.java 6 Jun 2003 13:03:56 -0000 1.25
+++ JMeterUtils.java 6 Jun 2003 14:02:08 -0000 1.26
@@ -990,3 +990,7 @@
+
+
+
+
1.16 +3 -4 jakarta-jmeter/src/core/org/apache/jmeter/visualizers/gui/AbstractVisualizer.java
Index: AbstractVisualizer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/visualizers/gui/AbstractVisualizer.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- AbstractVisualizer.java 10 May 2003 21:33:00 -0000 1.15
+++ AbstractVisualizer.java 6 Jun 2003 14:02:08 -0000 1.16
@@ -19,7 +19,7 @@
import org.apache.jmeter.testelement.TestElement;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jmeter.visualizers.Visualizer;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/**
@@ -35,8 +35,7 @@
implements Visualizer, ChangeListener, UnsharedComponent
{
/** Logging. */
- protected static transient Logger log =
- Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.gui");
+ protected static transient Logger log =LoggingManager.getLoggerForClass();
/** A panel allowing results to be saved. */
private FilePanel filePanel;
1.3 +116 -45 jakarta-jmeter/src/jorphan/org/apache/jorphan/logging/LoggingManager.java
Index: LoggingManager.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/jorphan/org/apache/jorphan/logging/LoggingManager.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- LoggingManager.java 4 Jun 2003 14:31:44 -0000 1.2
+++ LoggingManager.java 6 Jun 2003 14:02:08 -0000 1.3
@@ -58,10 +58,10 @@
import java.io.FileWriter;
import java.io.PrintWriter;
import java.io.Writer;
-import java.util.HashMap;
import java.util.Iterator;
-import java.util.Map;
+import java.util.Properties;
+import org.apache.jorphan.util.ClassContext;
import org.apache.log.Hierarchy;
import org.apache.log.LogTarget;
import org.apache.log.Logger;
@@ -78,88 +78,160 @@
public class LoggingManager
{
private static PatternFormatter format =
- new PatternFormatter("%{time:MM/dd/yyyy h:mm:ss a} %{priority} - %{category}: %{message} %{throwable}\n");
- private static LogTarget target;
+ new PatternFormatter("%{time:MM/dd/yyyy h:mm:ss a} %5.5{priority} - %{category}: %{message} %{throwable}\n");
+ private static LogTarget target; // used to hold the default logging target
public final static String LOG_FILE = "log_file";
public final static String LOG_PRIORITY = "log_level";
private static LoggingManager logManager = null;
- static
- {
- Map initProps = new HashMap();
- initProps.put("log_level.jorphan","ERROR");
- initializeLogging(initProps);
- }
-
private LoggingManager()
{
- target = new NullOutputLogTarget();
+ target = new NullOutputLogTarget();// ensure that target is valid initially
}
public static LoggingManager getLogManager()
{
return logManager;
}
- public static void initializeLogging(Map properties)
+
+ /**
+ * Initialise the logging system from the Jmeter properties.
+ * Logkit loggers inherit from their parents.
+ *
+ * Normally the jmeter properties file defines a single log file, so
+ * set this as the default from "log_file", default "jmeter.log"
+ * The default priority is set from "log_level", with a default of INFO
+ *
+ */
+ public static void initializeLogging(Properties properties)
{
if (logManager == null)
{
logManager = new LoggingManager();
}
- setLoggingLevels(properties,(String)properties.get(LOG_FILE));
+
+ // Set the top-level defaults
+ setTarget(makeWriter(properties.getProperty(LOG_FILE,"jmeter.log"),LOG_FILE));
+ setPriority(properties.getProperty(LOG_PRIORITY,"INFO"));
+
+ setLoggingLevels(properties); // now set the individual categories (if any)
}
- private static void setLoggingLevels(Map appProperties,String logFile)
- {
- WriterTarget tempTarget = null;
+
+ /*
+ * Helper method to handle log target creation
+ * If there is an error creating the file, then it uses System.out
+ */
+ private static Writer makeWriter(String logFile, String propName){
+ Writer wt;
try
{
- tempTarget = new WriterTarget(new FileWriter(logFile),format);
+ wt = new FileWriter(logFile);
}
catch(Exception e){
- target = new WriterTarget(new PrintWriter(System.out),format);
+ System.out.println(propName + "=" + logFile + " "+e.toString());
+ System.out.println("["+ propName + "-> System.out]");
+ wt = new PrintWriter(System.out);
}
- Iterator names = appProperties.keySet().iterator();
- while (names.hasNext())
+ return wt;
+ }
+
+ /*
+ * Handle LOG_PRIORITY.category=priority and LOG_FILE.category=file_name properties
+ * If the prefix is detected, then remove it to get the category
+ */
+ private static void setLoggingLevels(Properties appProperties)
+ {
+ Iterator props = appProperties.keySet().iterator();
+ while (props.hasNext())
{
- String prop = (String) names.next();
- if (prop.startsWith(LOG_PRIORITY))
+ String prop = (String) props.next();
+ if (prop.startsWith(LOG_PRIORITY+".")) // don't match the empty category
{
- String name = prop.substring(LOG_PRIORITY.length() + 1);
- logManager.setPriority(
- Priority.getPriorityForName((String) appProperties.get(prop)),
- name);
- if(tempTarget != null)
- {
- logManager.setTarget(tempTarget,name);
- }
- else
- {
- logManager.setTarget(target,name);
- }
+ String category = prop.substring(LOG_PRIORITY.length() + 1);
+ setPriority(appProperties.getProperty(prop),category);
+ }
+ if (prop.startsWith(LOG_FILE+"."))
+ {
+ String category = prop.substring(LOG_FILE.length() + 1);
+ String file = appProperties.getProperty(prop);
+ setTarget(new WriterTarget(makeWriter(file,prop),format),category);
}
}
}
+
+ private final static String PACKAGE_PREFIX = "org.apache.";
+ /*
+ * Stack contains the follow when the context is obtained:
+ * 0 - getCallerClassNameAt()
+ * 1 - this method
+ * 2 - getLoggerForClass
+ *
+ */
+ private static String getCallerClassName(){
+ String name = ClassContext.getCallerClassNameAt(3);
+ if (name.startsWith(PACKAGE_PREFIX)) {// remove the package prefix
+ name=name.substring(PACKAGE_PREFIX.length());
+ }
+ return name;
+ }
+ /**
+ * Get the Logger for a class - no argument needed because the calling class name
+ * is derived automatically from the call stack
+ *
+ * @return Logger
+ */
+ public static Logger getLoggerForClass()
+ {
+ String className = getCallerClassName();
+ return Hierarchy.getDefaultHierarchy().getLoggerFor(className);
+ }
+ /**
+ *
+ * @param ignored - String
+ * @deprecated - this version is temporary; use the no-argument version instead
+ * @return
+ */
+ public static Logger getLoggerForClass(String unused)
+ {
+ String className = getCallerClassName();
+ return Hierarchy.getDefaultHierarchy().getLoggerFor(className);
+ }
public static Logger getLoggerFor(String category)
{
return Hierarchy.getDefaultHierarchy().getLoggerFor(category);
}
-
- public void setPriority(Priority p, String category)
+
+ public static void setPriority(String p, String category)
+ {
+ setPriority(Priority.getPriorityForName(p),category);
+ }
+ public static void setPriority(Priority p, String category)
{
Hierarchy.getDefaultHierarchy().getLoggerFor(category).setPriority(p);
}
-
- public void setTarget(LogTarget target,String category)
+ public static void setPriority(String p)
+ {
+ setPriority(Priority.getPriorityForName(p));
+ }
+ public static void setPriority(Priority p)
+ {
+ Hierarchy.getDefaultHierarchy().setDefaultPriority(p);
+ }
+ public static void setTarget(LogTarget target,String category)
{
- Logger logger = getLoggerFor(category);
+ Logger logger = Hierarchy.getDefaultHierarchy().getLoggerFor(category);
logger.setLogTargets(new LogTarget[]{target});
}
- public void setTarget(Writer targetFile)
+ /**
+ * Sets the default log target from the parameter
+ * The existing target is first closed if necessary
+ *
+ * @param targetFile (Writer)
+ */
+ public static void setTarget(Writer targetFile)
{
if (target == null)
{
target = new WriterTarget(targetFile, format);
- Hierarchy.getDefaultHierarchy().setDefaultLogTarget(
- new WriterTarget(targetFile, format));
}
else
{
@@ -168,8 +240,7 @@
((WriterTarget)target).close();
}
target = new WriterTarget(targetFile, format);
- Hierarchy.getDefaultHierarchy().setDefaultLogTarget(
- new WriterTarget(targetFile, format));
}
+ Hierarchy.getDefaultHierarchy().setDefaultLogTarget(target);
}
}
1.3 +2 -4 jakarta-jmeter/src/jorphan/org/apache/jorphan/reflect/ClassFinder.java
Index: ClassFinder.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/jorphan/org/apache/jorphan/reflect/ClassFinder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ClassFinder.java 17 Oct 2002 20:05:38 -0000 1.2
+++ ClassFinder.java 6 Jun 2003 14:02:08 -0000 1.3
@@ -70,9 +70,8 @@
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
-import org.apache.log.Logger;
-
import org.apache.jorphan.logging.LoggingManager;
+import org.apache.log.Logger;
/************************************************************
* This class finds classes that implement one or more specified interfaces.
*
@@ -81,8 +80,7 @@
******************************************/
public class ClassFinder
{
- transient private static Logger log =
- LoggingManager.getLoggerFor("jorphan.reflect");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private ClassFinder()
{
}
1.4 +1 -3 jakarta-jmeter/src/jorphan/org/apache/jorphan/test/AllTests.java
Index: AllTests.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/jorphan/org/apache/jorphan/test/AllTests.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- AllTests.java 16 Apr 2003 20:35:28 -0000 1.3
+++ AllTests.java 6 Jun 2003 14:02:08 -0000 1.4
@@ -68,7 +68,6 @@
import org.apache.jorphan.logging.LoggingManager;
import org.apache.jorphan.reflect.ClassFinder;
import org.apache.jorphan.util.JOrphanUtils;
-import org.apache.log.Hierarchy;
import org.apache.log.Logger;
/************************************************************
@@ -116,8 +115,7 @@
***********************************************************/
public class AllTests
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.test");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
/************************************************************
* Constructor for the AllTests object
***********************************************************/
1.1 jakarta-jmeter/src/jorphan/org/apache/jorphan/util/ClassContext.java
Index: ClassContext.java
===================================================================
/*
* ====================================================================
* The Apache Software License, Version 1.1
*
* Copyright (c) 2001-2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The end-user documentation included with the redistribution,
* if any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "Apache" and "Apache Software Foundation" and
* "Apache JMeter" must not be used to endorse or promote products
* derived from this software without prior written permission. For
* written permission, please contact apache@apache.org.
*
* 5. Products derived from this software may not be called "Apache",
* "Apache JMeter", nor may "Apache" appear in their name, without
* prior written permission of the Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the Apache Software Foundation. For more
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
/*
* Created on 05-Jun-2003
*
*/
package org.apache.jorphan.util;
/**
* Class to get access to the protected getClassContext() method of SecurityManager,
* thus obtaining the call stack.
*
* May not work with applications that install their own security managers
*
* @author
* @version $Id: ClassContext.java,v 1.1 2003/06/06 14:02:09 mstover1 Exp $
*
*/
public class ClassContext extends SecurityManager {
private ClassContext(){// don't allow others to instantiate this
}
private static ClassContext _instance= new ClassContext();
/*
* N.B. Both static routines pick up the instance context directly
* This ensures that both return the same stack depth
*/
/**
* Gets the calling context as an array of classes
* Class[0] is this class.
*
* @return Class[] - list of classes in the callers context
*/
public static Class[] getMyClassContext()
{
return _instance.getClassContext();
}
/**
* Get the name of the class at a particular stack depth
* i=0 gives this class
*
* @param i - stack depth
* @return String - name of class at depth i
*/
public static String getCallerClassNameAt(int i){
return _instance.getClassContext()[i].getName();
}
}
1.10 +11 -12 jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/gui/AuthPanel.java
Index: AuthPanel.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/gui/AuthPanel.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- AuthPanel.java 27 Apr 2003 23:04:34 -0000 1.9
+++ AuthPanel.java 6 Jun 2003 14:02:09 -0000 1.10
@@ -82,7 +82,7 @@
import org.apache.jmeter.protocol.http.control.Authorization;
import org.apache.jmeter.testelement.TestElement;
import org.apache.jmeter.util.JMeterUtils;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/****************************************
@@ -96,8 +96,7 @@
***************************************/
public class AuthPanel extends AbstractConfigGui implements ActionListener
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor(
- "jmeter.protocol.http");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private static final String ADD_COMMAND = "Add";
private static final String DELETE_COMMAND = "Delete";
1.7 +3 -3 jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/modifier/AnchorModifier.java
Index: AnchorModifier.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/modifier/AnchorModifier.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- AnchorModifier.java 5 Jun 2003 17:33:38 -0000 1.6
+++ AnchorModifier.java 6 Jun 2003 14:02:09 -0000 1.7
@@ -79,7 +79,7 @@
import org.apache.jmeter.testelement.property.PropertyIterator;
import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jorphan.io.TextFile;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
@@ -98,7 +98,7 @@
public class AnchorModifier extends AbstractTestElement implements PreProcessor, Serializable
{
- transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.protocol.http");
+ transient private static Logger log = LoggingManager.getLoggerForClass();
private static Random rand = new Random();
/************************************************************
1.5 +3 -4 jakarta-jmeter/src/protocol/java/org/apache/jmeter/protocol/java/sampler/AbstractJavaSamplerClient.java
Index: AbstractJavaSamplerClient.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/protocol/java/org/apache/jmeter/protocol/java/sampler/AbstractJavaSamplerClient.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AbstractJavaSamplerClient.java 8 May 2003 21:03:37 -0000 1.4
+++ AbstractJavaSamplerClient.java 6 Jun 2003 14:02:09 -0000 1.5
@@ -55,7 +55,7 @@
package org.apache.jmeter.protocol.java.sampler;
import org.apache.jmeter.config.Arguments;
-import org.apache.log.Hierarchy;
+import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
/**
@@ -98,8 +98,7 @@
*
* @see #getLogger()
*/
- private static transient Logger log =
- Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.protocol.java");
+ private static transient Logger log = LoggingManager.getLoggerForClass();
/* Implements JavaSamplerClient.setupTest(JavaSamplerContext) */
public void setupTest(JavaSamplerContext context)
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org