projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: JUL support multiple loglevels
[lttng-ust.git]
/
liblttng-ust-jul
/
org
/
lttng
/
ust
/
jul
/
LTTngSessiondCmd2_4.java
diff --git
a/liblttng-ust-jul/org/lttng/ust/jul/LTTngSessiondCmd2_4.java
b/liblttng-ust-jul/org/lttng/ust/jul/LTTngSessiondCmd2_4.java
index 4cb5a7319e99fdad88bdfd684b1c350befdcc33b..9b544be55086f11441090cdeadae1ccb80251572 100644
(file)
--- a/
liblttng-ust-jul/org/lttng/ust/jul/LTTngSessiondCmd2_4.java
+++ b/
liblttng-ust-jul/org/lttng/ust/jul/LTTngSessiondCmd2_4.java
@@
-152,6
+152,7
@@
public interface LTTngSessiondCmd2_4 {
*/
public int enableLogger(LTTngLogHandler handler, LTTngEvent event,
HashMap enabledLoggers) {
*/
public int enableLogger(LTTngLogHandler handler, LTTngEvent event,
HashMap enabledLoggers) {
+ int ret;
Logger logger;
logger = handler.logManager.getLogger(event.name);
Logger logger;
logger = handler.logManager.getLogger(event.name);
@@
-159,9
+160,12
@@
public interface LTTngSessiondCmd2_4 {
return 0;
}
return 0;
}
- handler.setEvent(event);
- logger.addHandler(handler);
- enabledLoggers.put(event.name, logger);
+ ret = handler.setEvent(event);
+ if (ret == 0) {
+ /* Newly created event, add the handler. */
+ logger.addHandler(handler);
+ enabledLoggers.put(event.name, logger);
+ }
return 1;
}
return 1;
}
@@
-176,7
+180,7
@@
public interface LTTngSessiondCmd2_4 {
public LTTngEvent execute(LTTngLogHandler handler, HashMap enabledLoggers) {
int ret;
Logger logger;
public LTTngEvent execute(LTTngLogHandler handler, HashMap enabledLoggers) {
int ret;
Logger logger;
- LTTngEvent event;
+ LTTngEvent event
= null
;
if (name == null) {
this.code = lttng_jul_ret_code.CODE_INVALID_CMD;
if (name == null) {
this.code = lttng_jul_ret_code.CODE_INVALID_CMD;
@@
-192,9
+196,11
@@
public interface LTTngSessiondCmd2_4 {
* Keep the loglevel value for all events in case an event
* appears later on.
*/
* Keep the loglevel value for all events in case an event
* appears later on.
*/
- handler.logLevelUseAll = 1;
- handler.logLevelAll = lttngLogLevel;
- handler.logLevelTypeAll = lttngLogLevelType;
+ if (lttngLogLevel != -1) {
+ handler.logLevelUseAll = 1;
+ handler.logLevelsAll.add(new LTTngLogLevel(lttngLogLevel,
+ lttngLogLevelType));
+ }
while (loggers.hasMoreElements()) {
loggerName = loggers.nextElement().toString();
while (loggers.hasMoreElements()) {
loggerName = loggers.nextElement().toString();
@@
-203,22
+209,26
@@
public interface LTTngSessiondCmd2_4 {
continue;
}
continue;
}
- if (enabledLoggers.get(loggerName) != null) {
- continue;
- }
-
/*
* Create new event object and set it in the log handler so
* we can process the record entry with the right
* attributes like the loglevels.
*/
/*
* Create new event object and set it in the log handler so
* we can process the record entry with the right
* attributes like the loglevels.
*/
- event = new LTTngEvent(loggerName, lttngLogLevel,
- lttngLogLevelType);
+ event = new LTTngEvent(loggerName, 0, 0);
+ /* Clean up loglevel and merge the the ones from all events. */
+ event.logLevels.clear();
+ event.logLevels.addAll(handler.logLevelsAll);
enableLogger(handler, event, enabledLoggers);
}
this.code = lttng_jul_ret_code.CODE_SUCCESS_CMD;
enableLogger(handler, event, enabledLoggers);
}
this.code = lttng_jul_ret_code.CODE_SUCCESS_CMD;
- event = new LTTngEvent("*", lttngLogLevel, lttngLogLevelType);
+ /*
+ * Only return an event if this is a newly created event
+ * meaning the loglevel is valid.
+ */
+ if (lttngLogLevel != -1) {
+ event = new LTTngEvent("*", lttngLogLevel, lttngLogLevelType);
+ }
return event;
}
return event;
}
This page took
0.024979 seconds
and
4
git commands to generate.