8288982: JFR: Log event streaming actions
Reviewed-by: mgronlun
This commit is contained in:
parent
82c77ca807
commit
58b6937b09
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer
test/jdk/jdk/jfr/api/consumer/recordingstream
@ -85,6 +85,9 @@ public abstract class AbstractEventStream implements EventStream {
|
||||
synchronized (streamConfiguration) {
|
||||
dispatcher = new Dispatcher(streamConfiguration);
|
||||
streamConfiguration.setChanged(false);
|
||||
if (Logger.shouldLog(LogTag.JFR_SYSTEM_STREAMING, LogLevel.DEBUG)) {
|
||||
Logger.log(LogTag.JFR_SYSTEM_STREAMING, LogLevel.DEBUG, dispatcher.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
return dispatcher;
|
||||
|
@ -209,4 +209,15 @@ final class Dispatcher {
|
||||
public boolean hasMetadataHandler() {
|
||||
return metadataActions.length > 0;
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("Error actions: " + errorActions.length + "\n");
|
||||
sb.append("Meta actions: " + metadataActions.length + "\n");
|
||||
sb.append("Flush actions: " + flushActions.length + "\n");
|
||||
sb.append("Close actions: " + closeActions.length+ "\n");
|
||||
sb.append("Event dispatchers: " + dispatchers.length+ "\n" );
|
||||
sb.append("Dispatch lookup size: " + dispatcherLookup.size());
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ import jdk.jfr.consumer.RecordingStream;
|
||||
* @key jfr
|
||||
* @requires vm.hasJFR
|
||||
* @library /test/lib /test/jdk
|
||||
* @run main/othervm jdk.jfr.api.consumer.recordingstream.TestOnEvent
|
||||
* @run main/othervm -Xlog:jfr+system+streaming=debug jdk.jfr.api.consumer.recordingstream.TestOnEvent
|
||||
*/
|
||||
public class TestOnEvent {
|
||||
|
||||
@ -154,12 +154,14 @@ public class TestOnEvent {
|
||||
EventProducer p = new EventProducer();
|
||||
p.start();
|
||||
Thread addHandler = new Thread(() -> {
|
||||
log("About to add handler");
|
||||
r.onEvent(e -> {
|
||||
// Got event, close stream
|
||||
log("Executing onEvent");
|
||||
r.close();
|
||||
log("RecordingStream closed");
|
||||
});
|
||||
log("Handler added");
|
||||
});
|
||||
r.onFlush(() -> {
|
||||
// Only add handler once
|
||||
|
Loading…
x
Reference in New Issue
Block a user