|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
This interface describes the Notification Collection & Control function to be implemented on the
Master Agent. Its job is to register as a Notification listener on all General Agents and the local
Mastera Agent for all Notification
s. When notifications are received, they are resent,
and those that pass through a local filter are stored in a log, which is implemented as a circular
queue of a finite size. When the log reaches the count specified as the maximum size, the oldest
stored Notification
s are deleted in order to make space for new ones.
The RtlNotificationFilter
each instance carries is comprised of one of more fully qualified class
names (based on defined Notifications) that is used to control the flow of incoming Notification
s
that are actually stored in the log. These classnames, as well as the size of the log itself, are
configurable, and can be modified at any time during the life of the log as needed by the user.
The stored contents of the log can be retrieved by a caller using a variety of additional filtering as
detailed by the definition of the interface.
More than one of these logs can be created on the Master Agent, with each one being configured with a
different set of filter classnames. For example, it might be desirable to create a log that
listens only to type RtlDebugNotification
, or RtlTracePointNotification
. To make this easier, there are
several pre-defined filters listed below, that can be used as starting places for this.
To filter based on criteria other than classname (like type), the class name should be entered in the filter and filtering should be done as Notifications are retrieved from the log.
The ObjectName
of this MBean includes the following attributes, in addition to the SIF
attribute of DeviceID
:
This management interface includes the following attributes. These attributes are described in more detail in the accessor methods.
The following operations are included in this management interface. These are described in more detail in the corresponding method documentation.
This MBean emits all Notification
s of various types which are emitted
from each General Agent.
RtlNotification
,
RtlCriticalNotification
,
RtlEmergencyNotification
,
RtlAlertNotification
,
RtlErrorNotification
,
RtlWarningNotification
,
RtlNoticeNotification
,
RtlInformationNotification
,
RtlDebugNotification
,
RtlTracePointNotification
,
RtlConsumerNotification
Field Summary | |
---|---|
static java.lang.String[] |
ALL_FILTER
Notification filter list that will cause ALL notifications to be passed into the log. |
static java.lang.String[] |
ALL_RTL_FILTER
Notification filter list that will cause ALL RSS notifications to be passed into the log. |
static java.lang.String[] |
CONSUMER_FILTER
Notification filter list that will cause ALL Consumer notifications to be passed into the log. |
static java.lang.String[] |
CRITICAL_FILTER
Notification filter list that will cause ALL Critical notifications to be passed into the log. |
static java.lang.String[] |
DEBUG_FILTER
Notification filter list that will cause ALL Debug notifications to be passed into the log. |
static java.lang.String[] |
DEFAULT_FILTER
Default Notification filter list. |
static java.lang.String |
DEFAULT_LOG_NAME
|
static int |
DEFAULT_Q_SIZE
|
static java.lang.String[] |
INFORMATION_FILTER
Notification filter list that will cause ALL Informational notifications to be passed into the log. |
static java.lang.String[] |
LOG_FILTER
Notification filter list that will cause ALL Logging notifications to be passed into the log. |
static java.lang.String |
OBJECT_NAME
|
Method Summary | |
---|---|
void |
addActiveFilterElement(java.lang.String[] objects)
Adds Notification Class(s) to the currently active filter. |
java.lang.String[] |
getActiveFilter()
Returns the array of Notification Class names that comprise the currently active filter. |
int |
getCurrentNotificationCount()
Returns a count that represents the number of Notifications currenly stored in this log. |
int |
getCurrentNotificationCount(int deviceType)
Returns a count that represents the number of Notifications currenly stored in this log that were generated by a particular device type. |
int |
getCurrentNotificationCount(java.lang.String systemId)
Returns a count that represents the number of Notifications currenly stored in this log that were generated by a particular agent. |
int |
getCurrentNotificationCount(java.lang.String[] filter)
Returns a count that represents the number of Notifications currenly stored in this log that are of the type specified in the passed filter. |
int |
getCurrentNotificationCount(java.lang.String[] filter,
int deviceType)
Returns a count that represents the number of Notifications currenly stored in this log that are of the type specified in the passed Notication filter, and were emitted by the passed device type. |
int |
getCurrentNotificationCount(java.lang.String[] filter,
java.lang.String systemId)
Returns a count that represents the number of Notifications currenly stored in this log that are of the type specified in the passed filter, and were generated by a particular agent. |
javax.management.Notification |
getFirstStoredNotification()
Returns the first stored Notification that matches the search criteria. |
javax.management.Notification |
getFirstStoredNotification(int deviceType)
Returns the first stored Notification that matches the search criteria. |
javax.management.Notification |
getFirstStoredNotification(java.lang.String systemId)
Returns the first stored Notification that matches the search criteria. |
javax.management.Notification |
getFirstStoredNotification(java.lang.String[] filter)
Returns the first stored Notification that matches the search criteria. |
javax.management.Notification |
getFirstStoredNotification(java.lang.String[] filter,
int deviceType)
Returns the first stored Notification that matches the search criteria. |
javax.management.Notification |
getFirstStoredNotification(java.lang.String[] filter,
java.lang.String systemId)
Returns the first stored Notification that matches the search criteria. |
java.lang.String |
getLogName()
Returns the filename in use by this log. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo,
int deviceType)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo,
java.lang.String systemId)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo,
java.lang.String[] filter)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo,
java.lang.String[] filter,
int deviceType)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
javax.management.Notification |
getNextStoredNotification(long sequenceNo,
java.lang.String[] filter,
java.lang.String systemId)
Returns the next stored Notification (based on SequenceNo) that matches the search criteria. |
java.lang.Integer |
getQMaxSize()
Get the number of notifications that the persistent store is currently configured to store. |
void |
initialize()
Initializes the MBean, setting up communication with the MasterAgent
and registers NotificationListeners with all MasterAgent MBeans |
void |
removeActiveFilterElements(java.lang.String[] objects)
Removes Notification Class(s) from the currently active filter. |
void |
resetLog()
Clears the log of all stored entires. |
void |
setActiveFilter(java.lang.String[] objects)
Sets the filter to be used when considering a notification for submition to this log file. |
void |
setQMaxSize(java.lang.Integer q_Size)
Set the number of notifications that the persistent store is currently configured to store. |
void |
shutdown()
Shutdown of notification control, for sync of registry and file storage. |
Field Detail |
public static final int DEFAULT_Q_SIZE
public static final java.lang.String DEFAULT_LOG_NAME
public static final java.lang.String OBJECT_NAME
public static final java.lang.String[] ALL_FILTER
public static final java.lang.String[] ALL_RTL_FILTER
public static final java.lang.String[] CRITICAL_FILTER
public static final java.lang.String[] DEBUG_FILTER
public static final java.lang.String[] LOG_FILTER
public static final java.lang.String[] CONSUMER_FILTER
public static final java.lang.String[] INFORMATION_FILTER
public static final java.lang.String[] DEFAULT_FILTER
Method Detail |
public void initialize() throws MgmtException
MasterAgent
and registers NotificationListeners with all MasterAgent
MBeans
MgmtException
- Error communicating with the MasterAgent
public void shutdown()
public void setQMaxSize(java.lang.Integer q_Size) throws javax.management.InvalidAttributeValueException
q_Size
- The number of notifications that the log should be configured to hold.
javax.management.InvalidAttributeValueException
public java.lang.Integer getQMaxSize()
public java.lang.String getLogName()
public void setActiveFilter(java.lang.String[] objects) throws javax.management.InvalidAttributeValueException
objects
- An array of Notification Class names to be included in the log.
javax.management.InvalidAttributeValueException
public void addActiveFilterElement(java.lang.String[] objects)
objects
- An array of Notification Class names to be included in the log.public void removeActiveFilterElements(java.lang.String[] objects)
objects
- An array of Notification Class names to be removed from the log.public java.lang.String[] getActiveFilter()
public int getCurrentNotificationCount()
public int getCurrentNotificationCount(java.lang.String[] filter)
filter
- List of Class names to be used to filter the log for a count.
public int getCurrentNotificationCount(int deviceType)
deviceType
- Device type
public int getCurrentNotificationCount(java.lang.String[] filter, int deviceType)
filter
- List of Class names to be used to filter the log for a count.deviceType
- Device type
public int getCurrentNotificationCount(java.lang.String systemId)
systemId
- The agent's system ID
public int getCurrentNotificationCount(java.lang.String[] filter, java.lang.String systemId)
RtlCriticalNotification
s
that were generated by a particular mobile device, and is looking to determine how many
of that type have been logged.
filter
- List of Class names to be used to filter the log for a count.systemId
- The agent's system ID
public void resetLog()
public javax.management.Notification getFirstStoredNotification()
public javax.management.Notification getNextStoredNotification(long sequenceNo)
sequenceNo
- - Sequence number from the previous notification
public javax.management.Notification getFirstStoredNotification(java.lang.String[] filter)
filter
- - List of Class names to be used to filter the log.
public javax.management.Notification getNextStoredNotification(long sequenceNo, java.lang.String[] filter)
sequenceNo
- - The listener that is to be the target of the re-emitted Notifications.filter
- - List of Class names to be used to filter the log.
public javax.management.Notification getFirstStoredNotification(int deviceType)
deviceType
- - Device type
public javax.management.Notification getNextStoredNotification(long sequenceNo, int deviceType)
sequenceNo
- - The listener that is to be the target of the re-emitted Notifications.deviceType
- - Device type
public javax.management.Notification getFirstStoredNotification(java.lang.String[] filter, int deviceType)
filter
- - List of Class names to be used to filter the log.deviceType
- - Device type
public javax.management.Notification getNextStoredNotification(long sequenceNo, java.lang.String[] filter, int deviceType)
sequenceNo
- - The listener that is to be the target of the re-emitted Notifications.filter
- - List of Class names to be used to filter the log.deviceType
- - Device type
public javax.management.Notification getFirstStoredNotification(java.lang.String systemId)
systemId
- - The agent system ID to match
public javax.management.Notification getNextStoredNotification(long sequenceNo, java.lang.String systemId)
sequenceNo
- - The listener that is to be the target of the re-emitted Notifications.systemId
- - The agent system ID to match
public javax.management.Notification getFirstStoredNotification(java.lang.String[] filter, java.lang.String systemId)
filter
- - List of Class names to be used to filter the log.systemId
- - The agent system ID to match
public javax.management.Notification getNextStoredNotification(long sequenceNo, java.lang.String[] filter, java.lang.String systemId)
sequenceNo
- - The listener that is to be the target of the re-emitted Notifications.filter
- - List of Class names to be used to filter the log.systemId
- - The agent system ID to match
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |