15 transientキーワードによるフィールドの永続化からの除外
transientキーワードを使用すると、フィールドを永続化から除外できます。ExcludeFieldsSample.java
の例でこれを示します。
import jdk.jfr.Event;
import jdk.jfr.Label;
import jdk.jfr.Name;
public class ExcludeFieldsSample {
@Name("com.oracle.Message")
@Label("Message")
static class Message extends Event {
String messageA;
transient String messageB;
String messageC;
}
public static void main(String... args) {
Message event = new Message();
event.messageA = "hello";
event.messageB = "world"; // will not be persisted.
event.messageC = "!";
event.commit();
}
}
次のコマンドを使用して、ExcludeFieldsSample
を実行します:
java -XX:StartFlightRecording:filename=excludefieldssample.jfr ExcludeFieldsSample.java
jfr print --events Message excludefieldssample.jfr
最後のコマンドでは、次のような出力が表示されます:
com.oracle.Message {
startTime = 23:41:15.425
messageA = "hello"
messageC = "!"
...
}