How can I get the session history programmatically in headless?

1 visualizzazione (ultimi 30 giorni)
I would like to be able to programmatically query the session history in MATLAB (equivalent to what can be seen in the Command History). As there is no documented way to do this, I use the undocumented feature:
>> com.mathworks.mlservices.MLCommandHistoryServices.getSessionHistory
Unfortunately, in headless environment (no graphics), such as an SSH connection, this command throws:
Java exception occurred:
java.awt.HeadlessException
at java.awt.dnd.DragSource.<init>(Unknown Source)
at com.mathworks.mde.cmdhist.AltHistoryTable.<init>(AltHistoryTable.java:155)
at com.mathworks.mde.cmdhist.AltHistory$9.<init>(AltHistory.java:530)
at com.mathworks.mde.cmdhist.AltHistory.<init>(AltHistory.java:530)
at com.mathworks.mde.cmdhist.AltHistory.getInstance(AltHistory.java:268)
at com.mathworks.mde.cmdhist.AltHistory.getSessionCommands(AltHistory.java:408)
at
com.mathworks.mde.cmdhist.CmdHistoryRegistrar.getSessionHistory(CmdHistoryRegistrar.java:23)
at
com.mathworks.mlservices.MLCommandHistoryServices.getSessionHistory(MLCommandHistoryServices.java:33)

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 11 Set 2019
There is currently no documented way to query the session history.
Also, 'getSessionHistory' throws in headless, but there is not other undocumented feature that could work in headless.
The only workaround would be to manually parse the 'History.xml' file in the 'prefdir'. Note however that the structure of the 'History.xml' file is undocumented, and as such, can change at any time.

Più risposte (0)

Categorie

Scopri di più su Scope Variables and Generate Names in Help Center e File Exchange

Prodotti


Release

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by