Мне неизвестно, как изменить sample_variables во время выполнения. Единственным обходным решением, которое я знаю, является наличие BeanShell Listener (или, альтернативно, один из программируемых пробоотборников/пре-/постпроцессоров), который записывает в свой собственный файл. Например .:
String filename = "myfile.txt";
String message = "At " + System.currentTimeMillis() + " data is " + vars.get("myVar");
FileOutputStream f = new FileOutputStream(filename, true);
PrintStream p = new PrintStream(f);
this.interpreter.setOut(p);
print(message);
f.close();
Вы можете также добавить условия, когда переменная должна быть сохранена (например, только после определенного пробоотборника или только тогда, когда значение изменилось). По моему опыту решение с BeanShell Listener не дороговато для ресурсов, так как это будет 1 поток, независимо от количества запущенных потоков. Решение с программируемым препроцессором/постпроцессором обычно дороже, если только вы редко сохраняете переменные.