Source Code Instrumentation using SCALEA-G Sensors
C/C++/Fortran Applications
Sensors are provided by SISPROFILING library.
Java Applications
Currently we provide a simple class for publishing event data to SCALEA-G. See class
scaleag.jsml. Here is a simple example of using this class
...
import scaleag.jsml.*;
import scaleag.datamodel.appeventdata.*;
...
public class HierarchicalDAGVisualizer
extends MontageDAG
implements StatusListener, ActionListener, CanvasActionListener
{
private Hashtable nodeMapping;
private CanvasAction run;
private boolean active = false;
static JSML jsml =JSML.getJSML("pc6153-c703.uibk.ac.at",40600,"montage");
...
public void statusChanged(StatusEvent event)
{
ExecutableObject executableObject =
(ExecutableObject) event.getSource();
GenericNode gn = (GenericNode) this.nodeMapping.get(executableObject);
int status = event.getStatus().getStatusCode();
System.out.println("ID: " + executableObject.getIdentity().getValue());
System.out.println(
"Status: " + executableObject.getStatus().getStatusCode());
Event event1 = new Event();
event1.setEventname("STATUS_CHANGE");
event1.setEventtime(new Date());
Eventdata data = new Eventdata();
data.setAttrname("name");
data.setAttrvalue(executableObject.getName());
event1.addEventdata(data);
Eventdata data2 =new Eventdata();
data2.setAttrname("Status");
data2.setAttrvalue(status2string(executableObject.getStatus().getStatusC
ode()));
event1.addEventdata(data2);
jsml.addEvent(event1);
...
Event data can be accessed from SCALEA-G middleware and be visualized. For example, here is a snapshot with the above example.
Hong-Linh Truong
Last modified: Tue Jun 15 18:29:02 MEST 2004