org.rhq.core.clientapi.agent.measurement
Interface MeasurementAgentService


public interface MeasurementAgentService

The interface to a JON Agent's measurement (i.e. metric collection) subsystem.


Method Summary
 Set<Integer> getMeasurementScheduleIdsForResource(int resourceId)
           
 Set<MeasurementData> getRealTimeMeasurementValue(int resourceId, DataType dataType, String... measurementNames)
          This method is a way for the caller to ask for measurement collections to occur "now".
 void scheduleCollection(Set<ResourceMeasurementScheduleRequest> resourceSchedules)
          Schedules a group of measurements on the agent at specified interval.
 void unscheduleCollection(Set<Integer> resourceIds)
          Unschedule previously scheduled measurements for the resources with the specified id's .
 void updateCollection(Set<ResourceMeasurementScheduleRequest> resourceSchedules)
          Updates the schedule for a group of measurements on the agent.
 

Method Detail

scheduleCollection

void scheduleCollection(Set<ResourceMeasurementScheduleRequest> resourceSchedules)
Schedules a group of measurements on the agent at specified interval. This method should not fail if it cannot schedule any individual measurement(s). The only errors which should occur are protocol or connection errors.

Parameters:
resourceSchedules - list of the schedules that are to be added to the agent

updateCollection

void updateCollection(Set<ResourceMeasurementScheduleRequest> resourceSchedules)
Updates the schedule for a group of measurements on the agent. Like scheduleCollection(), this method should not fail if it cannot schedule an individual measurement. The only errors which should occur are protocol or connection errors.

Parameters:
resourceSchedules - list of schedules that are to be updated on the agent

unscheduleCollection

void unscheduleCollection(Set<Integer> resourceIds)
Unschedule previously scheduled measurements for the resources with the specified id's . An attempt will be made to unschedule all measurements; however, if one measurement is unable to be unscheduled, an exception will not be thrown until the end of the operation. Therefore, it is safe to assume that measurements will be unscheduled (or at least attempted to be unscheduled) for all specified resources, regardless of exceptions.

Parameters:
resourceIds - list of the resources whose measurements are to be unscheduled from collection

getRealTimeMeasurementValue

Set<MeasurementData> getRealTimeMeasurementValue(int resourceId,
                                                 DataType dataType,
                                                 String... measurementNames)
This method is a way for the caller to ask for measurement collections to occur "now". In other words, you can obtain real-time, current values of the given measurements for the given resource, even if those measurements are not even scheduled for collection.

Measurement data collected via this call will have its non-persistent "name" field set the name of the measurement, but will not have scheduleIds set.

Parameters:
resourceId - id of resource to collect from
dataType - the data type of the of the metrics to be collected - either DataType.MEASUREMENT or DataType.TRAIT
measurementNames - the names of the numeric metrics or traits to be collected
Returns:
the set of collected measurements with their data values collected

getMeasurementScheduleIdsForResource

Set<Integer> getMeasurementScheduleIdsForResource(int resourceId)


Copyright © 2008-2009 Red Hat, Inc.. All Rights Reserved.