Ho un profilo che ho creato con Java Mission Control che ha abilitato il profilo di allocazione. Quando l'ho utilizzato dall'interfaccia utente di JMC per registrare, tutto funziona correttamente e ottengo i risultati.Come registrare le allocazioni con JFR sulla riga di comando?
Tuttavia, dopo aver esportato le impostazioni e provato a registrare con JFR sulla riga di comando, non ottengo le registrazioni registrate, anche se ottengo altre informazioni di profilazione.
corro la registrazione con le seguenti impostazioni: JAVA_OPTS="$JAVA_OPTS -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,settings='<path_to_settings>/settings.jfc',dumponexit=true,dumponexitpath=<output>" java -jar stuff
Quando si carica la registrazione nel JMC e controllando la parte di memoria, vedo un messaggio Event type 'Allocation in new TLAB' is not enabled in this recording
.
Il file delle impostazioni è qui: https://gist.github.com/jmiettinen/1976f9bbe156ecb5e232 e ha le relative impostazioni java/object_alloc_in_new_TLAB
e java/object_alloc_outside_TLAB
abilitate.
mi manca qualcosa qui? Sto eseguendo 1.8.0_66
e vorrei avere una registrazione continua dall'inizio dell'applicazione fino a quando non viene interrotta.
Queste opzioni sembrano funzionare per me se si desidera avere una registrazione continua con le impostazioni speciali e ottenere di scaricare i dati all'uscita: -XX: FlightRecorderOptions = dumponexit = true, dumponexitpath = rec.jfr -XX: StartFlightRecording = defaultrecording = true, impostazioni = d: /tmp/wop.jfc – Klara