At the moment it is almost up and running. At least it works fine locally (which shouldn’t be any different from running at my server)
I’m now building a UI client to transfer files to/from the server and monitor the stdout/stderr in realtime.
Client source
package myapp;
import craterstudio.apps.sandbox.SandboxStats;
public class Main
{
private static SandboxStats stats;
public static void sandbox(SandboxStats stats)
{
Main.stats = stats;
}
public static void main(String[] args)
{
// your app here
}
}
Example app using sandbox-statistics
public static void main(String[] args) throws Exception
{
for(int i=0; i<10; i++)
{
int secondsInterval = 3;
String avg = String.valueOf(stats.getAverageCpuUsage(secondsInterval));
if(avg.length() > 5) avg = avg.substring(0,5);
System.out.println();
System.out.println("Main.main(uptime: "+stats.getUptime()+"ms)");
System.out.println("Main.main(cpu-time: "+stats.getTotalCpuTime()+"ms)");
System.out.println("Main.main(avg. cpu-time: "+avg+"/1.000) over "+secondsInterval+" seconds");
for(int k=0; k<65536; k++)
for(int m=0; m<1024; m++)
Math.sqrt(k*m);
Thread.sleep(1000);
}
System.exit(0); // optional
}
Output
Main.main(uptime: 1140ms)
Main.main(cpu-time: 93ms)
Main.main(avg. cpu-time: 0.031/1.000) over 3 seconds
Main.main(uptime: 2237ms)
Main.main(cpu-time: 202ms)
Main.main(avg. cpu-time: 0.067/1.000) over 3 seconds
Main.main(uptime: 3322ms)
Main.main(cpu-time: 296ms)
Main.main(avg. cpu-time: 0.098/1.000) over 3 seconds
Main.main(uptime: 4407ms)
Main.main(cpu-time: 374ms)
Main.main(avg. cpu-time: 0.093/1.000) over 3 seconds