lttng.control: Add a text field for enabling specific logger by name
authorBruno Roy <bruno.roy@ericsson.com>
Tue, 2 Aug 2016 18:58:41 +0000 (14:58 -0400)
committerMatthew Khouzam <matthew.khouzam@ericsson.com>
Sat, 6 Aug 2016 03:01:01 +0000 (23:01 -0400)
Add a text field in the "Enable Events" dialog under the JUL and LOG4J
domain to be able to enable logger(s) by entering names in a comma
separated list format.

Change-Id: Ife28b08b14d4ffb30a7fc5adaed370da8063bc5f
Signed-off-by: Bruno Roy <bruno.roy@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/78349
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableKernelEventComposite.java
lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableLoggersComposite.java
lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableUstEventsComposite.java
lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/messages/Messages.java
lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/messages/messages.properties

index 87763c0de688b866f463d654e4ee8e37779399ff..9f5f64b649871efa2fb221545236655ca718ed3b 100644 (file)
@@ -512,7 +512,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern
         specificEventGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
 
         Label specificEventLabel = new Label(specificEventGroup, SWT.LEFT);
-        specificEventLabel.setText(Messages.TraceControl_EnableEventsEventNameLabel);
+        specificEventLabel.setText(Messages.TraceControl_EnableEventsNameLabel);
         data = new GridData(GridData.FILL_HORIZONTAL);
         data.horizontalSpan = 1;
         specificEventLabel.setLayoutData(data);
@@ -624,7 +624,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern
         probeGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
 
         Label probeNameLabel = new Label(probeGroup, SWT.LEFT);
-        probeNameLabel.setText(Messages.TraceControl_EnableEventsEventNameLabel);
+        probeNameLabel.setText(Messages.TraceControl_EnableEventsNameLabel);
         data = new GridData(GridData.FILL_BOTH);
         data.horizontalSpan = 1;
         probeNameLabel.setLayoutData(data);
@@ -686,7 +686,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern
         functionGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
 
         Label functionNameLabel = new Label(functionGroup, SWT.LEFT);
-        functionNameLabel.setText(Messages.TraceControl_EnableEventsEventNameLabel);
+        functionNameLabel.setText(Messages.TraceControl_EnableEventsNameLabel);
         data = new GridData(GridData.FILL_BOTH);
         data.horizontalSpan = 1;
         functionNameLabel.setLayoutData(data);
index e76fb80fa632dfcbb4fea39e0207166260810ef3..f527a7f48d0e47e07dc81859e1fb1b16059f0d27 100644 (file)
@@ -12,6 +12,7 @@
 package org.eclipse.tracecompass.internal.lttng2.control.ui.views.dialogs;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -32,6 +33,8 @@ import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
 import org.eclipse.tracecompass.internal.lttng2.control.core.model.ITraceLogLevel;
 import org.eclipse.tracecompass.internal.lttng2.control.core.model.LogLevelType;
 import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceDomainType;
@@ -78,6 +81,10 @@ public class EnableLoggersComposite extends Composite implements IBaseEnableUstE
      * A tree viewer for displaying and selection of available loggers.
      */
     private CheckboxTreeViewer fLoggersViewer;
+    /**
+     * A Text field for the specific logger name.
+     */
+    private Text fSpecificLoggerText;
     /**
      * The flag indicating that loggers are selected.
      */
@@ -207,17 +214,16 @@ public class EnableLoggersComposite extends Composite implements IBaseEnableUstE
         if (fIsLoggers) {
             Set<String> set = new HashSet<>();
             Object[] checkedElements = fLoggersViewer.getCheckedElements();
-            int totalNbEvents = 0;
+            int totalNbLoggers = 0;
             for (int i = 0; i < checkedElements.length; i++) {
                 ITraceControlComponent component = (ITraceControlComponent) checkedElements[i];
                 if (component instanceof BaseLoggerComponent) {
-                    totalNbEvents++;
+                    totalNbLoggers++;
                     if (!set.contains(component.getName())) {
                         set.add(component.getName());
                         fLoggers.add(component.getName());
                     }
                 }
-
             }
 
             // verify if all events are selected
@@ -233,7 +239,17 @@ public class EnableLoggersComposite extends Composite implements IBaseEnableUstE
                 }
 
             }
-            fIsAllLoggers = nbLoggers == totalNbEvents;
+            fIsAllLoggers = (nbLoggers == totalNbLoggers);
+            String tmpSpecificLogger = fSpecificLoggerText.getText();
+            if (!fIsAllLoggers && !tmpSpecificLogger.trim().isEmpty()) {
+                // Format the text to a List<String>
+                // Removing all non visible characters
+                tmpSpecificLogger = tmpSpecificLogger.replaceAll("\\s", ""); //$NON-NLS-1$ //$NON-NLS-2$
+                // Splitting the different events that are separated by commas
+                List<String> specificLoggerList = Arrays.asList(tmpSpecificLogger.split(",")); //$NON-NLS-1$
+                fLoggers.addAll(specificLoggerList);
+                fLoggers = fLoggers.stream().distinct().collect(Collectors.toList());
+            }
         }
 
         // initialize log level event name string
@@ -339,6 +355,24 @@ public class EnableLoggersComposite extends Composite implements IBaseEnableUstE
                 return fLoggersViewer;
             }
         };
+
+        Group specificLoggerGroup = new Group(loggersGroup, SWT.SHADOW_NONE);
+        specificLoggerGroup.setText(Messages.TraceControl_EnableEventsSpecificLoggerGroupName);
+        layout = new GridLayout(4, true);
+        specificLoggerGroup.setLayout(layout);
+        specificLoggerGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+
+        Label specificLoggerLabel = new Label(specificLoggerGroup, SWT.LEFT);
+        specificLoggerLabel.setText(Messages.TraceControl_EnableEventsNameLabel);
+        data = new GridData(GridData.FILL_HORIZONTAL);
+        data.horizontalSpan = 1;
+        specificLoggerLabel.setLayoutData(data);
+
+        fSpecificLoggerText = new Text(specificLoggerGroup, SWT.LEFT);
+        fSpecificLoggerText.setToolTipText(Messages.TraceControl_EnableEventsSpecificLoggerTooltip);
+        data = new GridData(GridData.FILL_HORIZONTAL);
+        data.horizontalSpan = 3;
+        fSpecificLoggerText.setLayoutData(data);
     }
 
     /**
index 3f3739e731cde98109b2f0d8e0a63a04ba330f6e..3014ce44c8c0c663b9a01a3f399e249e145ec269 100644 (file)
@@ -581,7 +581,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         logLevelGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
 
         Label logLevelEventNameLabel = new Label(logLevelGroup, SWT.LEFT);
-        logLevelEventNameLabel.setText(Messages.TraceControl_EnableEventsEventNameLabel);
+        logLevelEventNameLabel.setText(Messages.TraceControl_EnableEventsNameLabel);
 
         data = new GridData(GridData.FILL_BOTH);
         data.horizontalSpan = 1;
index d14de4be4fae52ef6eb207a52c0b699798c0444b..c2c91bf8b46b6e402802bd07f243b3187d1a0e05 100644 (file)
@@ -208,7 +208,9 @@ public final class Messages extends NLS {
     public static String TraceControl_EnableEventsAllEventsLabel;
     public static String TraceControl_EnableEventsAllEventsTooltip;
     public static String TraceControl_EnableEventsSpecificEventGroupName;
+    public static String TraceControl_EnableEventsSpecificLoggerGroupName;
     public static String TraceControl_EnableEventsSpecificEventTooltip;
+    public static String TraceControl_EnableEventsSpecificLoggerTooltip;
     public static String TraceControl_EnableEventsExcludedEventGroupName;
     public static String TraceControl_EnableEventsExcludedEventLabel;
     public static String TraceControl_EnableEventsExcludedEventTooltip;
@@ -218,7 +220,7 @@ public final class Messages extends NLS {
     public static String TraceControl_EnableEventsSyscallName;
     public static String TraceControl_EnableEventsSyscallTooltip;
     public static String TraceControl_EnableEventsProbeGroupName;
-    public static String TraceControl_EnableEventsEventNameLabel;
+    public static String TraceControl_EnableEventsNameLabel;
     public static String TraceControl_EnableEventsProbeEventNameTooltip;
     public static String TraceControl_EnableEventsProbeNameLabel;
     public static String TraceControl_EnableEventsProbeNameTooltip;
index 83091ec97d220ed9e5c6ef92db100697514ab100..586ffff4e19da5234a4c0158d2682db486633c63 100644 (file)
@@ -196,17 +196,19 @@ TraceControl_EnableGroupSelectionName=Select
 TraceControl_EnableEventsAllEventsLabel=All Tracepoint Events and Syscalls
 TraceControl_EnableEventsAllEventsTooltip=Enable all tracepoint events and all Syscalls
 TraceControl_EnableEventsSpecificEventGroupName=Specific event
+TraceControl_EnableEventsSpecificLoggerGroupName=Specific logger
 TraceControl_EnableEventsSpecificEventTooltip=Enable event by specifying the name
+TraceControl_EnableEventsSpecificLoggerTooltip=Enable logger by specifying the name
 TraceControl_EnableEventsExcludedEventGroupName=Exclude Events
 TraceControl_EnableEventsExcludedEventLabel=Event Names
 TraceControl_EnableEventsExcludedEventTooltip=Exclude specific event(s) by name (comma-separated names)
 TraceControl_EnableEventsTracepointGroupName=Tracepoint Events
-TraceControl_EnableEventsTracepointTreeTooltip=List of available kernel tracepoint events
+TraceControl_EnableEventsTracepointTreeTooltip=List of available tracepoint events
 TraceControl_EnableEventsTreeAllLabel=All
 TraceControl_EnableEventsSyscallName=Syscall Events
 TraceControl_EnableEventsSyscallTooltip=List of available kernel syscall events
 TraceControl_EnableEventsProbeGroupName=Dynamic Probe
-TraceControl_EnableEventsEventNameLabel=Event Name
+TraceControl_EnableEventsNameLabel=Name
 TraceControl_EnableEventsProbeEventNameTooltip=The name of the event for enabling a dynamic probe
 TraceControl_EnableEventsProbeNameLabel=Probe
 TraceControl_EnableEventsProbeNameTooltip=[addr | symbol | symbol+offset]\nAddr and offset can be octal (0NNN...),\ndecimal (NNN...) or hexadecimal (0xNNN...)
This page took 0.029806 seconds and 5 git commands to generate.