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