File tree 3 files changed +17
-1
lines changed
src/jdk.jfr/share/classes/jdk/jfr/internal/consumer
test/jdk/jdk/jfr/api/consumer/recordingstream
3 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -85,6 +85,9 @@ protected final Dispatcher dispatcher() {
85
85
synchronized (streamConfiguration ) {
86
86
dispatcher = new Dispatcher (streamConfiguration );
87
87
streamConfiguration .setChanged (false );
88
+ if (Logger .shouldLog (LogTag .JFR_SYSTEM_STREAMING , LogLevel .DEBUG )) {
89
+ Logger .log (LogTag .JFR_SYSTEM_STREAMING , LogLevel .DEBUG , dispatcher .toString ());
90
+ }
88
91
}
89
92
}
90
93
return dispatcher ;
Original file line number Diff line number Diff line change @@ -209,4 +209,15 @@ private void defaultErrorHandler(Throwable e) {
209
209
public boolean hasMetadataHandler () {
210
210
return metadataActions .length > 0 ;
211
211
}
212
+
213
+ public String toString () {
214
+ StringBuilder sb = new StringBuilder ();
215
+ sb .append ("Error actions: " + errorActions .length + "\n " );
216
+ sb .append ("Meta actions: " + metadataActions .length + "\n " );
217
+ sb .append ("Flush actions: " + flushActions .length + "\n " );
218
+ sb .append ("Close actions: " + closeActions .length + "\n " );
219
+ sb .append ("Event dispatchers: " + dispatchers .length + "\n " );
220
+ sb .append ("Dispatch lookup size: " + dispatcherLookup .size ());
221
+ return sb .toString ();
222
+ }
212
223
}
Original file line number Diff line number Diff line change 35
35
* @key jfr
36
36
* @requires vm.hasJFR
37
37
* @library /test/lib /test/jdk
38
- * @run main/othervm jdk.jfr.api.consumer.recordingstream.TestOnEvent
38
+ * @run main/othervm -Xlog:jfr+system+streaming=debug jdk.jfr.api.consumer.recordingstream.TestOnEvent
39
39
*/
40
40
public class TestOnEvent {
41
41
@@ -154,12 +154,14 @@ private static void testOnEventAfterStart() {
154
154
EventProducer p = new EventProducer ();
155
155
p .start ();
156
156
Thread addHandler = new Thread (() -> {
157
+ log ("About to add handler" );
157
158
r .onEvent (e -> {
158
159
// Got event, close stream
159
160
log ("Executing onEvent" );
160
161
r .close ();
161
162
log ("RecordingStream closed" );
162
163
});
164
+ log ("Handler added" );
163
165
});
164
166
r .onFlush (() -> {
165
167
// Only add handler once
You can’t perform that action at this time.
0 commit comments