com.sun.sgs.profile
Interface ProfileListener

All Known Implementing Classes:
AccessedObjectsListener, AggregateProfileListener, AggregateTaskListener, GraphListener, OperationLoggingProfileOpListener, ProfileSampleListener, ProfileSummaryListener, RuntimeHistogramListener, SampleJMXListener, SnapshotParticipantListener, SnapshotProfileListener, SnapshotTaskListener, TaskRuntimeGraphOutputListener, TransactionSchedulerImpl

public interface ProfileListener

This interface is used to listen for profiling data as reported by the system. Unlike the individual operations provided to ProfileConsumer, the data provided here is aggregated data representing events in the scheduler or collected data about a complete task run through the scheduler. Implementaions of this class will only be called within a single-threaded context, so implementations do not need to be concurrent.

In order to create listeners with all of the facilities that they need, all implementations of ProfileListener must implement a constructor of the form (java.util.Properties, com.sun.sgs.auth.Identity, com.sun.sgs.kernel.ComponentRegistry).

Note that this interface is not complete. It is provided as an initial attempt to capture basic aspects of operation. As more profiling and investigation is done on the system, expect to see the information provided here evolve.

See Also:
ProfileReport

Field Summary
static String WINDOW_SIZE_PROPERTY
          The property for defining the number task to summarize for windowed com.sun.sgs.profile.ProfileListener implementations.
 
Method Summary
 void propertyChange(PropertyChangeEvent event)
          Notifies this listener of a new change in the system properties.
 void report(ProfileReport profileReport)
          Reports a completed task that has been run through the scheduler.
 void shutdown()
          Tells this listener that the system is shutting down.
 

Field Detail

WINDOW_SIZE_PROPERTY

static final String WINDOW_SIZE_PROPERTY
The property for defining the number task to summarize for windowed com.sun.sgs.profile.ProfileListener implementations. The value assigned to the property must be an integer.

See Also:
Constant Field Values
Method Detail

propertyChange

void propertyChange(PropertyChangeEvent event)
Notifies this listener of a new change in the system properties. This method is called for any property that changes.

The current list of supported property names is as follows:

name description new value old value
com.sun.sgs.profile.newop a new operation is registered with the system. the new operation : ProfileOperation null
com.sun.sgs.profile.threadcount the number of threads in the system has changed. the current number of threads : Integer the previous number of threads : Integer
com.sun.sgs.profile.nodeid the local node has been assigned a unique identifier the identifier for the local node: Long null

Parameters:
event - A PropertyChangeEvent object describing the name of the property, its old and new values and the source of the change.

report

void report(ProfileReport profileReport)
Reports a completed task that has been run through the scheduler. The task may have completed successfully or may have failed. If a task is re-tried, then this method will be called multiple times for each re-try of the same task. Note that in this case the scheduledStartTime will remain constant but the actualStartTime will change for each re-try of the same task.

Parameters:
profileReport - the ProfileReport for the task

shutdown

void shutdown()
Tells this listener that the system is shutting down.


RedDwarf, Version 0.10.1
2010-03-14 10:56:12

Copyright © 2010 The RedDwarf Authors. All rights reserved
Copyright © 2007-2010 Sun Microsystems, Inc. All rights reserved