oss quality of service api
TRANSCRIPT
OSS Quality of Service API
Version 0.6.1, 23.04.2001
Java is a registered trademark of Sun Microsystems, Inc. in the US and other countries.
okia way terms.
Copyright
Copyright © 2001 Cisco Systems, Inc., Ericsson Radio Systems AB., Motorola, Inc., NEC Corporation, NNetworks Oy, Nortel Networks Limited, Sun Microsystems, Inc., Telcordia Technologies, Inc., Digital FairCorporation, Orchestream Holdings plc, BEA Systems, Inc. All rights reserved. Use is subject to license
i
Copyright
ii
Dedication
Specification Lead:
Stefan Aberg (Ericsson, http://www.ericsson.com/)
Members of the expert group:
• Alan Greasley (ADC Metrica, http://www.adc.com/) • Arno Schmidmeier (Sirius Software GmbH, http://www.sirius-eos.com/) • Audrey Ward (Motorola, http://www.motorola.com/) • Eric Dillon (Watchmark, http://www.watchmark.com/) • Hiroya Kawata (NEC, http://www.nec.com/) • Jean-Luc Richard (Evidian, http://www.evidian.com/) • Jonas Rabin (LucentTechnologies, http://www.lucent.com/) • Joseph(Joe)M. Randolph (LucentTechnologies, http://www.lucent.com/) • Juha Laine (Nokia, http://www.nokia.com/) • Melody Fallah-Khair (Digital Fairway Corporation, http://www.digitalfairway.com/) • Petre Dini (Cisco, http://www.cisco.com/) • Rick Porter (Telcordia, http://www.telcordia.com/) • Rudolf Netzsch (Siemens AG, http://www.siemens.com/) • Tan Pek Yew (Panasonic Singapore Laboratories Pte Ltd, http://www.panasonic.com.sg/) • Vincent Perrot (SUN, http://www.sun.com/) • Wahei Usui (NEC, http://www.nec.com/) • Yasufumi Oshima (NEC, http://www.nec.com/)
Non-members of the expert group:
• Andre Godin (Ericsson, http://www.ericsson.com/) • Bruce Siegell (Telcordia, http://www.telcordia.com/) • Richard Lau (Telcordia, http://www.telcordia.com/) • Nicolas Gosselin (Ericsson, http://www.ericsson.com/) • Edwin Tse (Ericsson, http://www.ericsson.com/)
iii
Dedication
iv
ContentsCopyright ................................................................................................................ iDedication ............................................................................................................. iiiIntroduction ........................................................................................................... 7Overview ................................................................................................................ 9Architecture ......................................................................................................... 13Requirements ....................................................................................................... 17Compliancy .......................................................................................................... 25Interoperability .................................................................................................... 27UseCases ............................................................................................................... 29javax.oss.pm.measurement ................................................................................. 33
BaseEvent ............................................................................................................................................................ 44BaseEventDescriptor ........................................................................................................................................... 46PerformanceDataAvailableEvent ......................................................................................................................... 49PerformanceDataAvailableEventDescriptor ........................................................................................................ 50PerformanceDataEvent ........................................................................................................................................ 51PerformanceDataEventDescriptor ....................................................................................................................... 52PerformanceMonitor ............................................................................................................................................ 53PerformanceMonitorByClassesValue .................................................................................................................. 55PerformanceMonitorByObjectsValue ................................................................................................................. 57PerformanceMonitorHome .................................................................................................................................. 59PerformanceMonitorKey ..................................................................................................................................... 61PerformanceMonitorKeyResult ........................................................................................................................... 62PerformanceMonitorMethods .............................................................................................................................. 63PerformanceMonitorState .................................................................................................................................... 78PerformanceMonitorValue .................................................................................................................................. 79PerformanceMonitorValueIterator ....................................................................................................................... 88PerformanceAttributeDescriptor .......................................................................................................................... 90ReportFormat ....................................................................................................................................................... 93ReportInfo ............................................................................................................................................................ 96ReportInfoIterator ................................................................................................................................................ 97ReportMode ......................................................................................................................................................... 99QueryPerformanceMonitorValue ...................................................................................................................... 100QueryByDNValue ............................................................................................................................................. 103
javax.oss.pm.threshold ...................................................................................... 105AlarmConfig ...................................................................................................................................................... 115ComplexThresholdMonitorValue ...................................................................................................................... 118QueryBySimpleThresAttributesValue ............................................................................................................... 122QueryMonitorValue ........................................................................................................................................... 124SimpleThresholdMonitorValue ......................................................................................................................... 127ThresholdDefinition ........................................................................................................................................... 130ThresholdDirection ............................................................................................................................................ 133ThresholdMonitor .............................................................................................................................................. 134ThresholdMonitorHome .................................................................................................................................... 135ThresholdMonitorKey ....................................................................................................................................... 136ThresholdMonitorKeyResult ............................................................................................................................. 137ThresholdMonitorMethods ................................................................................................................................ 139
v
Contents
ThresholdMonitorState ...................................................................................................................................... 151ThresholdMonitorValue ..................................................................................................................................... 152ThresholdMonitorValueIterator ......................................................................................................................... 156TriggerRule ........................................................................................................................................................ 158
javax.oss.pm.util ................................................................................................ 161HourSchedule ..................................................................................................................................................... 161DayOfWeekSchedule ......................................................................................................................................... 163IllegalStateException ......................................................................................................................................... 167ObservableObjectIterator ................................................................................................................................... 167ObservableObjectClassIterator .......................................................................................................................... 169Schedule ............................................................................................................................................................. 171
javax.oss.fm.monitor ......................................................................................... 175AlarmAckState ................................................................................................................................................... 179AlarmByFilterableAttributesQueryDesciptor .................................................................................................... 180AlarmCountsValue ............................................................................................................................................ 181AlarmEvent ........................................................................................................................................................ 183AlarmEventPropertyDescriptor ......................................................................................................................... 184AlarmListRebuiltEvent ...................................................................................................................................... 186AlarmListRebuiltEventPropertyDescriptor ....................................................................................................... 187AlarmMonitor .................................................................................................................................................... 188AlarmMonitorHome .......................................................................................................................................... 189AlarmMonitorMethods ...................................................................................................................................... 190AlarmOperationResult ....................................................................................................................................... 194AlarmValue ........................................................................................................................................................ 195AlarmValueIterator ............................................................................................................................................ 200AlarmType ......................................................................................................................................................... 202AttributeValue ................................................................................................................................................... 204AttributeValueChange ....................................................................................................................................... 205BackedUpStatusType ......................................................................................................................................... 206CorrelatedNotificationValue .............................................................................................................................. 207ExtendedAlarmType .......................................................................................................................................... 208FilterableAttributesValue ................................................................................................................................... 209PerceivedSeverity .............................................................................................................................................. 212ProbableCause ................................................................................................................................................... 213ThresholdIndicationType ................................................................................................................................... 231TrendIndicationType ......................................................................................................................................... 232
javax.oss ............................................................................................................. 235Event .................................................................................................................................................................. 235EventPropertyDescriptor ................................................................................................................................... 237IllegalArgumentException ................................................................................................................................. 239ManagedEntityKey ............................................................................................................................................ 240ManagedEntityValue ......................................................................................................................................... 241QueryValue ........................................................................................................................................................ 244QueryDescriptor ................................................................................................................................................. 244UnsupportedOperationException ....................................................................................................................... 244Version ............................................................................................................................................................... 245
Concepts ............................................................................................................. 247Glossary .............................................................................................................. 249Index ................................................................................................................... 251
vi
ter is
e API.
I in typ-
by using
clients om the e bility vely.
must”,
of Ser-
C H A P T E R 1Introduction
This document specifies the OSS/J Quality of Service API.
It is assumed that the reader of this document has a working knowledge of OSS, J2EE and basic knowledge about Quality of Service (QoS). If you are new to Operation Support Systems or to the OSS/J initiative, please consult http://java.sun.com/products/oss first. If you are new to J2EE, please consult http://java.sun.com/j2ee
This specification is intended for software programmers or architects who:
• Want to write clients that call the Quality of Service API, or that • Want to implement the Quality of Service API.
Structure of the Specification
This specification consists of the following parts:
• Quality of Service API Overview describes the fundamentals to Quality of Service API. This chapnon-normative.
• Quality of Service API Architecture describes the design and architectural goals and principles of thThis chapter is non-normative.
• The user guide of the specification. They introduce the main features and explain how to use the APical situations.
• The reference guide of the specification. These chapters are generated from the java source codethe javadoc tool.
All chapters (except the overview and architecture) define the API in a precise way. It is described what of the API can expect from an implementation and it is described what the implementation can expect frclient. If either the client or the implementation violates any statement in this document, the client and thimplementation most likely cannot be plugged together. In addition to this specification, the test compatikit (TCK) or the reference implementation (RI) can be used to test the implementation or client, respecti
To improve the precision of the specification, certain words have clearly defined semantics: The words ““must not”, “required”, “recommended”, “may”, and “optional” in this document are to be interpreted as described in RFC-2119. The word “mandatory” is synonym with “required”.
Examples Programs
All generic examples are required to compile and execute with all implementations of the OSS/J Qualityvice API. As a result, they are part of the specification.
7
Introduction
/2000-
#150;
uld be:
errors. ges. For
he ree-
men-
SR 89
To keep the examples short and understandable, the examples do not include exception handling. The source code of all examples will be available with the final release of this specification.
Additional Documents
The following documents and software packages are available or will be available in the future:
• General OSS/J documents and presentations from http://java.sun.com/products/oss. • OSS/J Design Guidelines: general guidelines and patterns that apply to all OSS/J APIs. (planed for summer
2001) • OSS/J Quality of Service API Reference Implementation (available for final release) • OSS/J Quality of Service API Test Compatibility Kit (available for final release) • OSS/J Quality of Service API Example Programs (planed for summer 2001) • 3GPP TS 32.104: “3G Performance Management (PM)”, Release 99 (http://www.3gpp.org/ftp/Specs
12/R1999/32_series/32104-340.zip) • 3GPP TS 32.111: “3G Fault Management (FM)”, Release 99 • ITU-T X.733 Recommendation, Information Technology – Open Systems Interconnection &
Systems Management – Alarm Reporting Function • ITU-T Q.822 Recommendation, Performance Management • <Add other references here>
Public Draft Comments
This is the public draft version of the specification. Please send comments to [email protected]
Because this is not the final release of the specification, some areas are not as well defined as they sho
• All example code has not been compiled. As a result, the examples may contain syntax and logical • The Java Value Type access-interface has been specified completely, but may require minor chan
instance, attributes or methods may have to be modified.
Licensing Agreement
The Reference Implementation will be licensed in source code for free.
The details of the Licensing Agreement will be determined by the Spec Lead before the Final Release. TTechnology Compatibility Kit will be licensed for free in binary code, possibly in source code. The two agments will be designed to maximize the adoption of the API, while ensuring compatibility between impletations.
An effort will also be made to harmonise as much as possible the RI and TCK licensing model with the Jand 91, as they will be used in similar market.
8
rvice com-
deter-
network, ces, and nother. ot. The wo ery with
areas:
area
service.
tainedsed the
C H A P T E R 2Overview
Description
In Operation Support Systems (OSS), the area of Quality of Service (QoS) is vast and complete standards or even de-facto standards in this area are lacking. Several products in the Quality of Service domain manage spe-cific parts of Quality of Service. In order to have a complete end-to-end solution, these products need to be inte-grated. However, these custom integrated solutions are tremendously complex and difficult to achieve, due to the lack of integration standards. Therefore, the ability to reduce the integration effort via a set of standards, reusable software components to assemble OSS applications in a much shorter time is an appealing prospect for all players in the OSS marketplace.
The OSS Quality of Service API specification will define an API that enables the construction of total OSS solutions for QoS by assembling commercial off-the-shelf components.
Quality of Service
Quality of Service is one of the elusive terms in today’s networking. ITU-T E.800 defines the quality of seand factors that contribute collectively to the over-all quality of service as perceived by the user of a telemunication service.
In general terms, Quality of Service can be defined as the collective effect of service performance whichmine the degree of satisfaction of the user of a service.
In order to measure the Quality of Service, we have to first define the term service and its performance.
Service can have several meanings. It is usually described as something offered to the end users of any such as end-to-end communications. We categorize services under two types: network end-to-end servibearer services. The network end-to-end services are services drawn from one Terminal Equipment to aThe end user decides on the quality of such services; whether he is satisfied with the provided QoS or nbearer services are telecommunications services that provide signal transmission capabilities between taccess points in the network. They are not end-to-end services, but enable the end-to-end service delivthe required QoS to the end user.
The user’s degree of satisfaction with the quality of service can be divided into four service performance
• support; • operability; • serveability; • security.
All of the areas are dependent on network characteristics and operation. However, the serveability is thethat is generally most affected. It is further subdivided into three areas:
• service accessibility performance: perceived or granted quality at the time the user is accessing theFor instance, how fast user connects to the network.
• service retain-ability performance: perceived or granted quality on how well a service is mainthroughout the usage period without any abnormal interruption. For instance, how long user has u
9
Overview
om anservice
y Guar-ork is the n. If
ce Guar-. The ers and
der’s
t Man-ystems
ision-
anage-and ser-
t be ation.
ch as k Man-fic sys-
ta from
service without any service interruption or operational outages. • service integrity performance: perceived or granted quality on how well-maintained a service is fr
end to end point of view throughout the usage period. For instance, if user is receiving the quality of he expected to receive from the network.
Service Quality Guarantees/Service Level Agreements
Traditionally, network service providers have used a variety of methods to accommodate Service Qualitantees to their subscribers. Most of these Guarantees are contractual. For instance, accessing the netwmost basic service, and failure to provide this service is a failure to comply with the contractual obligatiothe network is inaccessible, the quality of the service is clearly questionable.
Service providers require management systems that can retrieve, calculate and present Quality of Serviantees such that both the provider and the customer ensure the service quality is provided as requestedmanagement system is to monitor the Service Level Agreements (SLA), as defined between the customthe provider, and react on service quality violations.
In order for quality of service systems to perform their function effectively as an integral part of the provitotal solution, they have to be able to:
• Obtain service effecting data/information from other systems, e.g. Network Elements (NE), Elemenagement Systems (EMS), Network Management Systems (NMS), and other Operational Support S(OSS).
• Inform other systems when quality of service violations occur. For instance, informing a service proving /activation system or customer care system about the service level agreement violations.
Today there are no standards or de-facto standards to facilitate the integration of a Quality of Service mment system with other management systems, such as element management systems, billing systems vice activation systems as part of a total management solution.
To make it easier to integrate quality of service systems into total solutions, a number of interfaces musagreed upon. These interfaces are or will be defined as part of the OSSJ Quality of Service API specific
Scope
The scope of this specification is to enable Quality of Service systems to obtain service-effecting data sunetwork performance, threshold, usage and fault data from other systems. Although, Element or Networagement Systems are the typical provider of such information, the OSS/J API is not limited to any specitem definition to configure and obtain service-effecting information.
The OSSJ QoS API packages are defined under javax.oss package, which is shared by other OSSJ API, e.g. OSSJ Trouble Ticketing API. This specification does not define javax.oss. For more information on javax.oss, please refere to <common team document>.
At a high level, the OSSJ Quality of Service API covers the following areas:
Performance or Usage Data Monitoring
OSS/J API enables the client application, e.g. QoS system, to obtain network or service performance daother management systems, and to configure and control performance monitoring on those systems.
10
Overview
collec-r service
e per-
stems. g sys-eporting
moni-
tems, to inter-
hresh-
lds cananaged
ed by
ms for
stems, ilure sit-
r, to
d/or ze the
The following items describe actions that the client can initiate to control performance monitoring:
• The client may control the performance monitoring, i.e. create, suspend, resume, list and delete thetion of measurement attribute values for managed objects (Observable Objects), such as network oobjects.
The following items describe the means of data transfer from external systems to the client:
• The client receives notification containing performance data. • The client receives notification with reference to location of performance data. This is applicable if th
formance data is saved in a file. • The client retrieves performance data from the external system.
Performance Monitoring is contained in the following package(s):
• javax.oss.pm contains interfaces and classes for accessing performance and threshold monitoring sy• javax.oss.pm.measurement contains main interfaces and classes for accessing performance monitorin
tems for tasks such as creating, deleting , resuming, suspending performance monitoring jobs, and rthe performance data results.
• javax.oss.pm.util contains supporting interfaces and classes for accessing performance and thresholdtoring systems.
Threshold Data Monitoring
The OSSJ Quality of Service API enables client applications, such as an operational or management sysconfigure thresholds on the service-effecting measurements, and to report the threshold violations to theested parties by alarm mechanisms.
The following item(s) describes the action that the client application can initiate to control and configure told monitoring:
• The client may create, delete, list thresholds that will result in quality of service alarms. The threshobe defined on service effecting measurements per classes or instances of network or service mobjects.
The following item describes how the client receives notification from external systems.
• The client will be informed about the threshold violations via the notification/alarm mechanism definFault Monitoring API.
Threshold Monitoring is contained in the following package(s):
• javax.oss.pm.threshold contains main interfaces and classes for accessing threshold monitoring systetasks such as creating, deleting, listing, and reporting thresholds and threshold violations.
Fault Data Monitoring
The OSSJ Quality of Service API enables client applications, such as an operational or management sywith the means to be informed by other systems when a network or service failure occurs or when the fauation is resolved. The failures at the network or service level are manifested in form of notifications andalarms. The API also allows the client to obtain information about failures in a request-response manneacknowledge the fault condition. The following example describes a network failure scenario:
The occurrence of failures in a Network Element (NE) may cause a deterioration of this NE’s function anservice quality and will, in severe cases, lead to the complete unavailability of the NE. In order to minimieffects of such failures on the Quality of Service, as perceived by the network users, it is necessary to:
11
Overview
sible; faultyy NE;
parts of
r tasks
• detect failures in the network as soon as they occur and alert the operating personnel as fast as pos• isolate the failures (autonomously or through operator intervention), for example by switching off
units and, if applicable, limiting the effect of the failure as much as possible by reconfiguring the fault• if necessary, determine the cause of the failure using diagnostic and test routines; and, • repair/eliminate failures in due time through the application of maintenance procedures.
The API defines a generic interface for alarm monitoring and management that can be used by different OSSJ Quality of Service API, such as Performance or Threshold Monitoring.
Fault monitoring is contained in the following package(s):
• javax.oss.fm contains interfaces and classes for accessing fault monitoring systems. • javax.oss.fm.monitor contains main interfaces and classes for accessing alarm monitoring systems fo
such as retrieving alarm data, acknowledging and un-acknowledging alarms.
12
ding
C H A P T E R 3Architecture
The OSSJ Quality of Service API has been defined within following design and architectural goals and princi-ples:
Consistency across all OSSJ APIs
The Quality of Service API follows the set of common design guidelines set for all OSSJ APIs. For further information in this regard, please consult <add references to common team documents here>.
Seamless integration - Plug and Work
There are many operational and management systems that collectively provide and end-to-end solution for the network and service providers in the service assurance domain. The Quality of Service API has to ultimately support seamless integration among different operational and management system at run time.
Support of leading industry standards
The QoS API uses the industry standards and recommendations, such as 3GPP, ITU.T, TMF, IETF, when and where they are applicable. In cases where there are no de-facto standards defined, the QoS API may bridge the gap by introducing new definitions. Any new work has been/will be communicated to the appropriate standards body for further development.
Support of OSS/J Java Value Type Access-Interface
The OSS/J common design guideline defines three access interfaces:
• Java Value Type Access Interface • XML Value Type Access Interface • XML-JMS Access Interface
All access interfaces provide the same functionality, but use different technology. For more details, incluguidelines on when to use which access interface, please consult “OSS/J Design Guidelines”. Quality of Ser-vice API uses the Java value Type Access Interface at the moment.
13
Architecture
The QoS API can be extended in the future to support XML Value Type and XML-JMS interfaces when and where it is applicable.
Information Model independent
The Quality of Service API is information model agnostic, and can thus be used for all kinds of information model including 2G, 3G mobile and IP networks. The API does not define any information model pertaining to service or network technology. It is assumed that the definition of telecommunications information models is done by standard organization such as 3GPP, ITU-T, or by each organization internally, e.g. proprietary infor-mation model. The API will expose part of the information model that pertains to Performance, Fault and/or Threshold monitoring.
Full integration of J2EE
The QoS API is based on J2EE technology and its design patterns. It uses J2EE services such as JNDI, JMS, EJB where and when it is applicable.
The following picture illustrates a logical view of the OSSJ QoS API Architecture.
The architecture consists of many business-aware components that collectively have to provide an end-to-end solution for managing the quality of the services provided to the end customers. These business aware compo-nents are to be integrated with each other using the OSSJ Quality of Service API. Each of these business aware components can be implemented as part of existing or future applications or management systems. The API uses a set of services provided by or on top of J2EE technology. Examples of J2EE services are: Enterprise Java Beans, Java Messaging Service, Java Naming Directory. Examples of additional generic OSSJ services are fed-
14
Architecture
erated naming, API versioning, and messaging utilities. For more information on the OSSJ common services, please consult <add reference common team design guideline>
The business aware components expose a Java Value Type interface. By using this interface, clients perform standard RMI calls on a remote, stateless or stateful session bean interface. Examples of these interfaces are PerformanceMonitor, FaultMonitor, ThresholdMonitor representing performance, fault and threshold monitor-ing systems respectively.
The following picture demonstrates the typical data interaction diagram among different system components. The thick arrows in the diagram indicate the scope of the OSSJ QoS API as defined by this specification.
<The following definitions have to be conformant with standards recommendations and other OSSJ API specifications>
Fault Monitoring: a set of functions and capabilities to maintain, manage, and report fault data to other man-agement systems. It enables a management application such as Service Quality Manager to receive, correlate, and manage faults produced by/for different managed objects including telecommunication equipment.
Performance Monitoring: a set of functions and capabilities to acquire, monitor and report performance data for a set of managed objects including telecommunication equipment. It also provides capabilities to set thresh-olds on performance measurements and to monitor and to report threshold crossings.
Usage Data Monitoring: a set of functions and capabilities that enable a management application such as Ser-vice Quality Manager to acquire user’s usage data for a set of services including telecommunication ser-vices.
Service Quality Manager: a set of management functions responsible for monitoring and reporting aggregated service quality and performance data combined and obtained from many disparate raw data sources.
SLA Manager: a set of management functions responsible for correlating of the service quality and perfor-mance data against specific Customer service instances to provide specific performance data against individual service instances and SLAs.
15
Architecture
Network Inventory: maintains the configuration of the network objects and their association to each service instance.
Service Inventory: maintains the configuration and definition of the service and service instances.
Order Manager: a set of management functions that coordinates the execution of a business process to fulfill a service order. The activities within the business process may need to interact with other subsystems to fulfill the order. These subsystems include SLA Manager application that has to be informed about the required quality of service guarantees/SLAs defined for a Customer service order.
Trouble Ticket Manager: <get the definition from the TT spec>
Customer Care System: a set of management functions responsible for reporting the performance and quality of customers’ services, and notifying them when a degradation or violation occurs in their SLA.
16
C H A P T E R 4Requirements
The following table contains the requirements for the Quality of Service APIs. Each requirement is associated with a unique identifier. The identifier consists of three parts: a “QoS” prefix, one or two letters representing a category, and number. Note: The number in parenthesis represents the numbering scheme in the original requirements document. The categories are as follows: G - General, PM - Performance Monitoring, TM Threshold monitoring, AM - Alarm Monitoring, and UD - Usage Data.
Identifier: QoS-G-1 (2.1.1)
The QoS API shall support a discover mechanism to find the supported Observable Object types.
Note: Only applicable to PM and TM sections of the API.
Mandatory
Identifier: QoS-G-2 (2.1.3)
The QoS API shall support a query mechanism to find the Observable Object instances of an Observable Object type.
Mandatory
Identifier: QoS-G-3 (2.1.3)
The QoS API shall support a discover mechanism to find the Observable Object instances below a root repre-sented by a distinguished name.
Mandatory
Identifier: QoS-G-4 (2.1.4)
The QoS API shall provide a mechanism to discover the performance attributes associated with an Observable Object class.
Mandatory
Identifier: QoS-G-5
The QoS API shall follow 3GPP standards for Performance Management and Fault Management
Mandatory
Identifier: QoS-G-6 (2.1.16)
The QoS API shall handle granularities that are synchronized on the full hour and that are a multiple or a factor of 3600.
Note: Only applicable to PM and TM sections of the API.
Mandatory
17
Requirements
Identifier: QoS-G-7
The attribute name shall be uniquely identified per observable object class.
Mandatory
Identifier: QoS-PM-1 (2.2.1)
The QoS API shall support the creation of a measurement job. On creation of a measurement job, all informa-tion shall be supplied in order to collect the required data from the selected resources as specified by the mea-surement job.
Mandatory
Identifier: QoS-PM-2 (2.2.2)
The QoS API shall support the deletion of a measurement job at any time. The deletion of the measurement job will make all references to it invalid.
Mandatory
Identifier: QoS-PM-4 (2.2.5)
The QoS API shall provide operations to get a list of all measurement jobs that are currently defined.
Mandatory
Identifier: QoS-PM-5 (2.2.6)
The QoS API shall support the ability to temporarily suspend the collection of measurement data (e.g. in case of system overload or congestion, measurement results not used,…). Measurement job definitions will remain in the system stopping all measurement gathering activities after a job is suspended.
Optional
Identifier: QoS-PM-7 (2.2.7a)
The QoS API’s measurement job shall support the following states: active-onduty, active-offduty, and suspended.
Mandatory
Identifier: QoS-PM-8 (2.2.8)
The QoS API shall support the ability to resume a measurement job that was previously suspended.
Optional
Identifier: QoS-PM-10 (2.2.10)
The QoS API shall provide for the monitoring of performance parameters in observable objects managed by element management systems.
Mandatory
Identifier: QoS-PM-11 (2.2.11)
The QoS API shall support a measurement job that includes a granularity specifying the rate at which perfor-mance data is read (scanned). The client is not required to enter this parameter. If no granularity is entered, the server will decide at what granularity to monitor the performance data.
Mandatory
Identifier: QoS-PM-11a
The QoS API shall provide a mechanism to retrieve the granularities supported by the server based on the per-formance data to be monitored.
18
Requirements
Mandatory
Identifier: QoS-PM-12 (2.2.13)
The QoS API shall support a measurement job that includes a reporting period specifying when the perfor-mance report file is created, if the reporting mode is file.
Mandatory
Identifier: QoS-PM-13 (2.2.14)
The QoS API shall support a measurement job that includes a schedule specifying the schedule of the monitor-ing activity.
Mandatory
Identifier: QoS-PM-14 (2.2.15)
The QoS API shall support a schedule that consists of start date, end date, list of daily intervals and a weekly schedule. All these parameters are optional. If start date is omitted the monitoring starts immediately. If end date is omitted the monitoring will run until suspended. If the daily interval is omitted, the monitoring job will run continuously through the day. If the weekly schedule is omitted, the monitoring job will run every day of the week. Alternatively, the weekly schedule will indicate which days of the week the monitoring job will run.
Mandatory
Identifier: QoS-PM-15 (2.2.16)
The QoS API shall support a measurement job that includes a reporting mode indicating the manner in which clients are notified of the generation of a performance data report.
Mandatory
Identifier: QoS-PM-15a
The QoS API shall support a reporting mode that specifies that the performance report data shall be included in an event.
Optional
Identifier: QoS-PM-15b
The QoS API shall support a reporting mode that specifies that the event will contain the performance report location (URI).
Mandatory
Identifier: QoS-PM-15c
The QoS API shall support a reporting mode that allows the client to request to receive both types of events concerning the generation of performance report data (see requirements QoS-PM-15a and QoS-PM-15b).
Optional
Identifier: QoS-PM-16a(2.2.17)
The QoS API shall support a measurement job that includes a list of measurable attributes to monitor accompa-nied by a list of ObservableObject instances.
Mandatory
Identifier: QoS-PM-16b (2.2.17)
The QoS API shall support a measurement job that includes a list of measurable attributes to monitor accompa-nied by a list of ObservableObject classes.
19
Requirements
Note: There is a proposal to remove this requirement from the API.
Optional
Identifier: QoS-PM-17 (2.2.18)
The QoS API shall support Value Objects representing measurement jobs.
Mandatory
Identifier: QoS-PM-20 (2.2.21)
The QoS API shall support a notification that contains the identity/location of the report data file that will be issued when the report data file is created.
Mandatory
Identifier: QoS-PM-22 (2.2.23)
The QoS API shall provide a query mechanism to retrieve a specific measurement job.
Mandatory
Identifier: QoS-PM-23 (2.2.24)
The QoS API shall provide a limited query mechanism to list all measurement jobs based on a state.
Mandatory
Identifier: QoS-PM-24 (2.2.25)
The QoS API may support bulk operations to suspend/resume multiple measurement based on job ids.
Optional
Identifier: QoS-PM-25 (2.1.7a)
The QoS API may support the 3GPP XML format for performance report files.
Optional
Identifier: QoS-PM-26 (2.1.8)
The QoS API shall provide the ability to determine the current report format of the server..
Mandatory
Identifier: QoS-PM-27 (2.1.9)
The QoS API shall enable a mechanism that allows clients to register to receive notifications pertaining to per-formance monitoring jobs. This requirement is only feasible if the server supports the generation of perfor-mance reports by performance monitoring job (a report format that only includes attributes specified in by the performance job).
Optional
Identifier: QoS-PM-28 (2.1.15)
The QoS API shall provide a mechanism to retrieve the report identifications of all stored reports.
Mandatory
Identifier: QoS-PM-30
The QoS API shall support a mechanism for the clients to retrieve all the reports generated from a given point in time.
Mandatory
20
Requirements
Identifier: QoS-PM-31
The reports returned from report data queries shall be sorted from oldest to newest.
Mandatory
Identifier: QoS-TM-1 (2.3.1)
The QoS API shall provide a query mechanism to retrieve a specific threshold job.
Mandatory
Identifier: QoS-TM-2 (2.3.2)
The QoS API shall provide a limited query mechanism to list all threshold jobs based on a state (active – suspended).
Mandatory
Identifier: QoS-TM-3 (2.3.3)
The QoS API may support bulk operations to suspend/resume multiple threshold jobs based on job ids.
Optional
Identifier: QoS-TM-4 (2.3.4)
The QoS API shall provide threshold monitoring of performance attributes in entities managed by element man-agement systems.
Mandatory
Identifier: QoS-TM-5 (2.3.5)
The QoS API shall provide a mechanism for the generation of notifications containing threshold event informa-tion when a threshold associated with an active threshold job has been triggered.
Mandatory
Identifier: QoS-TM-7 (2.3.7)
The QoS API shall provide a mechanism to list all threshold jobs.
Mandatory
Identifier: QoS-TM-8 (2.3.8)
The QoS API shall provide the ability to create a threshold job.
Mandatory
Identifier: QoS-TM-9 (2.3.9)
The QoS API shall support a threshold job that includes a granularity specifying the rate at which performance data is read (scanned). The client is not required this parameter. If no granularity is entered, the server will decide what granularity is used to monitor the threshold.
Optional
Identifier: QoS-TM-9b
The QoS API shall provide a mechanism to retrieve the granularities supported by the server based on the threshold data to be monitored.
Mandatory
Identifier: QoS-TM-10 (2.3.10)
The QoS API shall support a threshold job that allows the client to configure the severity of the threshold alarm.
21
Requirements
Mandatory
Identifier: QoS-TM-11 (2.3.11)
The QoS API shall support a threshold job that includes a hysteresis specifying the amount a threshold value is allowed to oscillate within without generating a new alarm. Note: It also defines the clearing criteria for the alarm. The hysteresis is asymmetric (one-sided) and may be zero. If the direction of the threshold crossing is falling, a new alarm will not be generated before the threshold value has had the value thresholdValue + hyster-esis. Furthermore the alarm will not be cleared before the thresholdValue + hysteresis value is reached. For ris-ing thresholds, the opposite is applied.
Mandatory
Identifier: QoS-TM-12 (2.3.12)
The QoS API shall allow a client to configure a threshold job that includes a list of ObservableObject instances and attributes.
Optional
Identifier: QoS-TM-12 (2.3.12)
The QoS API shall allow a client to configure a threshold job that includes a list of ObservableObject instances and attribute.
Optional
Identifier: QoS-TM-12a
The QoS API shall allow a client to configure a threshold job that includes a list of ObservableObject classes and attributes.
Optional
Identifier: QoS-TM-12b
The QoS API shall allow a client to configure a threshold job that includes a list of ObservableObject instances and attribute.
Mandatory
Identifier: QoS-TM-13 (2.3.13)
The QoS API shall allow a client to configure a threshold job that includes measurement attributes specifying the attributes that will be checked against the threshold values.
Mandatory
Identifier: QoS-TM-14 (2.3.14)
The QoS API shall allow a client to configure a threshold job that includes measurement values specifying the values of the threshold attributes that will trigger an alarm.
Mandatory
Identifier: QoS-TM-15 (2.3.15)
The QoS API shall provide the ability to delete a threshold job.
Mandatory
Identifier: QoS-TM-16 (2.3.16)
The QoS API shall provide a mechanism to suspend a threshold job. Note: The threshold job will continue to exist in the system, but all monitoring activities associated with the job are suspended.
22
Requirements
Optional
Identifier: QoS-TM-17 (2.3.17)
The QoS API shall provide a mechanism to resume a threshold job. Note: Monitoring activities are resumed.
Optional
Identifier: QoS-TM-18 (2.3.18)
The QoS API shall support bulk operations to suspend/resume multiple performancethreshold monitoring jobs based on job ids.
Optional
Identifier: QoS-TM-19 (2.3.19)
The QoS API shall provide a threshold job that supports the following associations to monitored attributes a given attribute of an instance (object)
Mandatory
Identifier: QoS-TM-19a (2.3.19)
The QoS API shall provide a threshold job that supports the following associations to monitored attribute: a set of attributes of a set of instances of the same ObservableObjectClass (extremely, all the instances of a given type).
Optional
Identifier: QoS-TM-19b (2.3.19)
The QoS API shall provide a threshold job that supports the following associations to monitored attributes: set of attributes of the same instance.
Optional
Identifier: QoS-TM-20 (2.3.20)
The QoS API shall support a threshold event (alarm) that will be sent as an alarm in accordance with the Fault Data portion of the QoS API.
Mandatory
Identifier: QoS-TM-22 (2.3.22)
The QoS API shall allow a client to configure a threshold job that is characterized by a direction value that deals with the crossing direction, having the space value: {rising, falling}.
Mandatory
Identifier: QoS-TM-23 (2.3.23)
The QoS API shall support a threshold crossing corresponding to an alarm with a default QoS alarm type; else-where, other types of alarms could be defined. The setting of this parameter is optional.
Mandatory
Identifier: QoS-TM-24 (2.3.24)
The QoS API shall support a threshold job that will provide features to enable a client to configure the probable causein the threshold crossing alarm. The setting of this parameter is optional.
Mandatory
Identifier: QoS-TM-24a (2.3.24)
23
Requirements
The QoS API shall support a threshold job that will provide features to enable the client to configure the spe-cific problem in the threshold crossing alarm. The setting of this parameter is optional.
Mandatory
Identifier: QoS-AM-1
The QoS API shall support and comply with all the mandatory aspects of the 3GPP Alarm IRP.
Mandatory
Identifier: QoS-AM-8
The QoS API shall support a mechanism to get separate count results according to perceived severity (critical, major, minor, warning, indeterminate and cleared).
Mandatory
Identifier: QoS-AM-9
The QoS API shall allow for future extensions that provide for proprietary alarm severity levels
Mandatory
Identifier: QoS-UD-1 (4.1)
The QoS API for Usage Data shall use the API for Performance Data.
Mandatory
24
C H A P T E R 5Compliancy
<This section will contain API compliancy issues from the implementations standpoint>
25
Compliancy
26
C H A P T E R 6Interoperability
<This section will contain the interoperability issues from the clients standpoint>
27
Interoperability
28
C H A P T E R 7UseCases
This section covers some of the use cases of the API.
Locating Performance, Threshold or Fault Monitoring Systems
The client has to locate an instance of performance monitoring, threshold monitoring or fault monitoring sys-tems before sending its requests. By modeling each of these monitoring systems as a stateless session bean, cli-ents can perform standard RMI calls on their business methods. The home interface of performance, fault and threshold monitoring beans can be retrieved by using the JNDI service.
<add sample code and diagram here, class diagram may not be required >
Discover Supported Observable Objects
Observable Objects are objects whose measurement attributes (performance attributes) can be monitored by a performance monitoring system. The client application can query the performance monitoring system for the supported Observable Objects.
<add sample code and diagram here, class diagram may not be required >
Create a Performance Measurement Job
The client requests the performance monitoring system to monitor a set of measurement attributes for a set of Observable Objects. The client can specify the creation of a performance measurement job based on a specific schedule. The measurement job includes what Observable Object instance(s) or Observable Object class(s) to monitor, what granularity period to use and how the measurement results shall be retrieved. The performance monitoring system confirms or declines the request.
<add sample code and diagram here, class diagram may not be required >
List Performance Measurement Jobs
The client can query the performance monitoring system for already configured performance measurement jobs based on certain filtering criteria.
29
UseCases
<add sample code and diagram here, class diagram may not be required >
Delete Performance Measurement Jobs
The client can request the performance monitoring system to delete a set of performance measurement jobs.
<add sample code and diagram here, class diagram may not be required >
Suspend/Resume Performance Measurement Jobs
The client may suspend the performance measurement jobs. During this time the performance monitoring sys-tem may or may not collect the performance data from its sources, e.g performance data collected from the net-work element, but no data reports are sent to the client. The client may later resume the performance monitoring. The monitoring will then continue with the same characteristics as before the suspension.
<add sample code and diagram here, class diagram may not be required >
List Performance Data Reports
The client queries the performance monitoring system for the list of existing performance measurement results collected and created for different measurement jobs. The client can specify date and time criteria for retrieving this information.
<add sample code and diagram here, class diagram may not be required >
Receive Performance Data Notifications
The client receives performance data notifications using filtering criteria. The notifications can contain either the URI where the performance data locates or the performance data itself.
<add sample code and diagram here, class diagram may not be required >
Fetch Performance Data Report
The client initiates a request to fetch performance data from the performance monitoring systems. The client may have received information prior to this request, informing it that new data is available and the location of the data.
<add sample code and diagram here, class diagram may not be required >
30
UseCases
criteria.
f e sys-
Request Current Performance Data Report
If the client wants to receive the current result of a performance measurement job, outside the ordinary sched-ule, it may request a data report from the performance monitoring system. This report has the same format as a normal report and does not affect the normal scheduling of the performance monitoring.
<add sample code and diagram here, class diagram may not be required >
Threshold Setting on Performance Attributes
The client sends a request to the performance monitoring system instructing it to create a threshold object mon-itoring measurement attributes connected to an Observable Object instance(s) or Observable Object class(s). The threshold criteria, including the notification type and severity of the threshold violation notification, are included in the request. Note that in the threshold case, the granularity period should be quite short, to catch abnormal situations as soon as possible.
<add sample code and diagram here, class diagram may not be required >
Send and Receive Performance Threshold Crossing/Violations
When a threshold is crossed, the performance monitoring system generates and sends an Alarm to the client. The client receives the threshold violations.
<add sample code and diagram here, class diagram may not be required >
Fetch Alarm List
The client requests the fault monitoring systems to provide a list of alarms from its alarm list using a set of fil-tering criteria such as alarm state, e.g. “ACTIVE”, “ACKNOWLEDGED”, “UNACKNOWLEDGED”.
<add sample code and diagram here, class diagram may not be required >
Fetch Alarm Counts
The client requests the fault monitoring systems to provide the count of alarm based on a set of filtering
<add sample code and diagram here, class diagram may not be required >
Acknowledge Alarms
The client invokes this operation to acknowledge one or more alarms. The client does not supply time oacknowledgement. If operation is successful, the fault monitoring system sets the time of operation to thtem time. The fault monitoring system sets the state of the alarm to “acknowledged” as well.
<add sample code and diagram here, class diagram may not be required >
31
UseCases
se
UnAcknowledge Alarms
The client invokes this operation to unacknowledge one or more alarms. Notifications are sent to the clients subscribed to alarm state change.
<add sample code and diagram here, class diagram may not be required >
Send and Receive a New Alarm
The fault monitoring system notifies the subscribed clients that a new alarm has been added to its list of current alarms. The client receives the notification only for the added alarms that satisfy the current filter constraint of the subscription.
<add sample code and diagram here, class diagram may not be required >
Report a Changed Alarm
The fault monitoring system notifies subscribed clients regarding changes in the alarm information, such as per-ceived severity. The client receives the notification only for the changed alarms that satisfy the current filter constraint of the subscription.
<add sample code and diagram here, class diagram may not be required >
Report a Alarm State Change
The fault monitoring system notifies subscribed clients regarding changes in the state of the alarm, e.g. from “ACTIVE” state to “ACKNOWLEDGED” state. The client receives the notification only for the alarms whostate change satisfy the current filter constraint of the subscription.
<add sample code and diagram here, class diagram may not be required >
32
in order
e and ted by ped, and
the mea-rarily the t implies are per-
is started e is
her with on and
easure-mea-
C H A P T E R 8Package
javax.oss.pm.measurementDescriptionThis package refers to systems capabilities to read measurement data of observed managed object(s) and to pro-duces measurement reports. The capability to monitor observable objects is called a measurement job.
The package defines the administrative functions that a performance monitor agent shall to support. The admin-istration functions are:
• Create, Remove, Suspend and Resume of measurement jobs, • Get measurement jobs, • Get supported report formats, • Get supported observable objects, • Retrieval of measurement reports, • Support for bulk/mass operations.
Create, Remove, suspend and Resume measurement jobsThe package supports creation of measurement jobs and on creation, all information has to be suppliedto collect the required data from the selected resources as specified by the measurement job.
A measurement job is automatically deleted by the system when it reaches the measurement job end timall scheduled measurement reports have been generated. A created measurement job can also be delemanual intervention at any time. When deleted, the measurement process associated with the job is stopall allocated resources are freed.
On normal operation, the measurement job collects measurement data according to the actual values ofsurement job parameters. However, the system operator may decide for some reason to discard tempocollection of measurement data (e.g. in case of system overload or congestion, measurement results noused,...). The system operator therefore is able to suspend a defined measurement job at any time. Thisthat the measurement job definition remains in the system, but that no measurement gathering activitiesformed for this measurement job. When the measurement job is resumed, measurement data collection again at the next granularity period within the measurement schedule. Functions to suspend and resumoptional to implement.
Get measurement jobsThe users of the package is be able to get a list of all measurement jobs that are currently defined, togetall available actual information as stored. This information consists of the data that is supplied on creatithe actual state information of the measurement job.
Get report formatsThe package provide functions to determine the current measurement report format and the supported mment report formats. This information will be used by the user of the package to specify in which format surement reports shall be generated.
33
javax.oss.pm.measurement
all be the pos-ea-
rement
is sent to rt and it can ion of
surement
above.
Get supported observable objectsA discover mechanisms is provided to find the supported observable object classes and observable object instances. Observable object instances can be found by using observable object class or by specifying a base object where the observable object instances are hierarchical located below. Mechanism to find the measure-ment types associated with an Observable Object class is also provided.
Retrieval of measurement reportsEach measurement job will collect measurement data at a particular frequency, known as the granularity period of the measurement job. At the end of the granularity period a scheduled measurement report shall be generated for each measurement job that is actively collecting measurement data. These measurement reports of the mea-surement data collection can be forwarded to the client in two standard ways:
• the scheduled measurement reports can be sent to the client as soon as they are available, • the measurement reports can be stored and transferred to or retrieved when required.
The measurement reports shall be forward to the client in one or both of the above standard ways. It shpossible for the client to specify the details for its measurement retrieval. It is also necessary to support sibility for multiple destinations for transfer of data, in the case of several clients required the produced msurement reports.
The first case will forward the measurement report in a event to the client. This event contains the measureport data and is issued when the report mode is set to event.
The second case requires implementation of local storage of the measurement reports and that a event the clients when the data is available. This event contains the identity/location of the measurement reposhall be issued when the local stored measurement report is created. When the client receive this eventretrieve the data. If the client, for some reason, does not receive this event it can query the implementatavailable stored measurement reports.
Support for bulk/mass operationsThe package provide operations to create, remove, suspend, resume and get multiple instances of meajobs.
Package interfacesThe measurement package consist of four type of interfaces:
• EJB interfaces • Value object interfaces • Event interfaces • Utility interfaces
EJB interfacesThe EJB interfaces are the main interfaces of this package. They provide all capabilities that are describeThe interfaces are showed below:
34
javax.oss.pm.measurement
ple-
ustrated
The “Measurement Job Implementation” is not part of the package, it is just to illustrate how the EJB immentation is related to the performance monitor interfaces.
The PerformanceMonitorMethods defines all remot accesible business operations. The operations are illbelow:
35
javax.oss.pm.measurement
Value object interfacesThe value object interfaces is the value representation of a measurement job. Implementations of these inter-faces are used when creating measurement jobs and retrieving data of the measurement jobs. The value object interfaces are:
36
javax.oss.pm.measurement
The PerformanceMonitorValue interface is only a base interface for the other two value interfaces. The PerformanceMonitorByObjectValue interface is mandatory and the PerformanceMonitorByClassesValue is optional.
The operation on the PerformanceMonitorByObjectValue is illustrated below:
37
javax.oss.pm.measurement
Event interfacesThe event interfaces provides functionality to for an implementation to send performance monitor event on JMS and for a user to receive performance monitor event via JMS. The event interfaces are showed below:
38
javax.oss.pm.measurement
mes- to filter
ta-
The “descriptor” interfaces is used to create JMS messages and set the filterable properties of the JMS sages. The client applications can use the constants of this interface when constructing selection critertiaout specific JMS messages that contains the events.
The BaseEvent interface is only a base interface for the other two event interfaces. The PerformanceDaAvailableEvent interface is mandatory and the PerformanceDataEvent is optional.
39
javax.oss.pm.measurement
The operation on the PerformanceDataAvailableEvent is illustrated below:
Utility interfacesThe utility interfaces represents information that are needed for measurement job and the events that are emit-ted. The utility interfaces are:
40
javax.oss.pm.measurement
41
javax.oss.pm.measurement
42
javax.oss.pm.measurement
Related DocumentationThe following external documents are applicable for the specification:
• 3GPP TS 32.104: 3G Performance Management (PM), R99
Class Summary
Interfaces
BaseEvent44 This interface represents the base payload of an event.
BaseEventDescriptor46 The BaseEventDescriptor interface contains string based static fields that define filter-able event attributes and their types.
PerformanceAttributeDescriptor90
Represent a measurement attribute that can be monitored in the observable object class.
PerformanceDataEvent51 The performance data event defines the payload of the events that contains measure-ment reports.
PerformanceDataEventDescriptor52
The PerformanceDataEventDescriptor interface is equivalent to an enumerated type i.e. it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
PerformanceDataAvailableEvent49
This interface represents the payload of the event that is sent when a measurement report file has been created.
PerformanceDataAvailableEventDescriptor50
The PerformanceDataAvailableEventDescriptor interface is equivalent to an enumer-ated type i.e. it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
PerformanceMonitor53 The PerformanceMonitor interface is a EJB remote interface and the central interface of this package to manage measurement jobs.
PerformanceMonitorByClassesValue55
This interface is the value representation of a measurement job that monitor a set of specified attributes on a set of observable object classes.
PerformanceMonitorByObjectsValue57
This interface is the value representation of a measurement job that monitor a set of specified attributes on a set of observable object instances.
PerformanceMonitorHome59
The Performance Monitor Home interface is the factory to create new remote interface to Performance Monitor beans.
PerformanceMonitorKey61
This interface is the primary key of a performance monitor instance.
PerformanceMonitorKeyResult62
This interface encapsulates all the information necessary to indicate the result of a BEST EFFORT operation on a specific measurement job.
PerformanceMonitorMethods63
The PerformanceMonitorMethods interface defines the business functions for the PerformanceMonitor remote interface and the bean implementation.
PerformanceMonitorState78
Defines the state constants for performance monitor.
PerformanceMonitorValue79
This interface is the base value representation of a measurement job.
PerformanceMonitorValueIterator88
This interface manages retrieval of multiple measurement jobs.
QueryByDNValue103 This interface is used to query for measurement jobs by specifying distinguished names.
43
BaseEvent
BaseEventSyntaxpublic interface BaseEvent extends Event235
All Known Subinterfaces: PerformanceDataEvent51, PerformanceDataAvailableEvent49
All Superinterfaces: java.lang.Cloneable, Event235, java.io.Serializable
DescriptionThis interface represents the base payload of an event.
Author: Stefan Ýberg
Version: 0.1, 2001-02-08
See Also: BaseEventDescriptor46
QueryPerformanceMonitorValue100
This interface represents the attributes of a measurement job that can be used to make queries for measurement jobs.
ReportFormat93 This interface represent the format of the measurements reports.
ReportInfo96 Contains information related to a measurement report file.
ReportInfoIterator97 This interface manages retrieval of information for multiple measurement reports.
ReportMode99 Defines enumeration values for report mode.
Member Summary
MethodsString getManagedObjectClass()45String getManagedObjectInstance()45
PerformanceMonitorKey getPerformanceMonitorKey()45String getSystemDN()45
void setManagedObjectClass(String)45void setManagedObjectInstance(String)45void setPerformanceMonitorKey(PerformanceMonitorKey)46void setSystemDN(String)46
Class Summary
44
BaseEvent
getManagedObjectClass()
Methods
getManagedObjectClass()
public java.lang.String getManagedObjectClass()
Gets the class name of the object instance where this event occurred.
Returns: String The class name object instance.
getManagedObjectInstance()
public java.lang.String getManagedObjectInstance()
Gets the distinguished name of the object instance where this event occurred.
Returns: String The distinguished name object instance.
getPerformanceMonitorKey()
public PerformanceMonitorKey61 getPerformanceMonitorKey()
Gets the key of the measurement job that generated the event.
If the event is for many measurement jobs null will be returned.
Returns: PerformanceMonitorKey Key of the measurement job.
getSystemDN()
public java.lang.String getSystemDN()
Gets the distinguished name of the system that issued this event.
Returns: String The distinguished name of the system.
setManagedObjectClass(String)
public void setManagedObjectClass(java.lang.String moc)
Sets the class name of the object instance that will issue this event.
Parameters:moc - The class name of the object instance.
setManagedObjectInstance(String)
public void setManagedObjectInstance(java.lang.String moi)
Sets the distinguished name of the object instance that will issue this event.
Parameters:moi - The distinguished name of the object instance.
45
BaseEventDescriptor
setPerformanceMonitorKey(PerformanceMonitorKey)
setPerformanceMonitorKey(PerformanceMonitorKey)
public void setPerformanceMonitorKey(PerformanceMonitorKey61 key)
Sets the primary key of the measurement job that generated the event.
Parameters:key - The primary key of the measurement job.
setSystemDN(String)
public void setSystemDN(java.lang.String dn)
Sets the distinguished name of the system that will issue this event.
Parameters:dn - The distinguished name of the system.
BaseEventDescriptorSyntaxpublic interface BaseEventDescriptor extends EventPropertyDescriptor237
All Known Subinterfaces: PerformanceDataEventDescriptor52, PerformanceDataAvailableEventDescriptor50
All Superinterfaces: EventPropertyDescriptor237, java.io.Serializable
DescriptionThe BaseEventDescriptor interface contains string based static fields that define filterable event attributes and their types.
The interface also contains the definition of methods that can be used at run-time to dynamically discover the properties of the event and their types. The interface has also methods to create a JMS message.
The inherited methods from the EventPropertyDescriptor will do the following:
getEventType() Return the event type as a string.
getPropertyNames() List of properties that can be set.
getPropertyTypes() The type of each property.
makeEvent() Creates a instance of the event type.
makeObjectMessage(Event, java.util.Hashtable) Creates a JMS object message, with the Event as payload.
makeTextMessage(Event, java.util.Hashtable) Creates a JMS textbased messaged with the payload in XML format. If the implementation does not support conversion to XML format, null shall be returned.
For the operations makeObjectMessage and makeTextMessage the following properties will be set:
• EVENT_TYPE is set to the value from event.getEventType() • ADMIN_DOMAIN is set to the value from event.getAdminDomain() • OSS_VERSION is set to the version of the API.
46
BaseEventDescriptor
MANAGED_OBJECT_CLASS_PROP_NAME
ations
e l Time
roperties
Other properties will be set if a value is set in the event. These properties are:
• EVENT_TIME is set to the value from event.getEventTime() • MANAGED_OBJECT_CLASS is set to the value from event.getManagedObjectClass() • MANAGED_OBJECT_INSTANCE is set to the value from event.getManagedObjectInstance() • SYSTEM_DN is set to the value from event.getSystemDN() • PERFORMANCE_MONITOR_KEY is set to the value from event.getPerformanceMonitorKey()
The OSS_VERSION is set to the version of the API. The version shall be constructed by using the operon the Home interface.
The EVENT_TIME shall be in the following format: “yyyy-MM-dd’T’HH:mm:ss z” For example, to indicat1:20 pm on May the 31st, 1999 for Eastern Standard Time which is 5 hours behind Coordinated Universa(UTC), one would write: “1999-05-31T13:20:00 GMT-05:00”.
The hashtable in the operations makeObjectMessage and makeTextMessage can be used to set extra pof the messages.
Author: Stefan Ýberg
Version: 0.1, 2001-02-08
Fields
MANAGED_OBJECT_CLASS_PROP_NAME
public static final java.lang.String MANAGED_OBJECT_CLASS_PROP_NAME
Define the property name for managed object class.
The method getPropertyNames() returns this constant.
MANAGED_OBJECT_CLASS_PROP_TYPE
public static final java.lang.String MANAGED_OBJECT_CLASS_PROP_TYPE
Member Summary
FieldsString MANAGED_OBJECT_CLASS_PROP_NAME47String MANAGED_OBJECT_CLASS_PROP_TYPE47String MANAGED_OBJECT_INSTANCE_PROP_NAME48String MANAGED_OBJECT_INSTANCE_PROP_TYPE48String OSS_VERSION_PROP_NAME48String OSS_VERSION_PROP_TYPE48String PERFORMANCE_MONITOR_KEY_PROP_NAME48String PERFORMANCE_MONITOR_KEY_PROP_TYPE48String SYSTEM_DN_PROP_NAME49String SYSTEM_DN_PROP_TYPE49
47
BaseEventDescriptor
MANAGED_OBJECT_INSTANCE_PROP_NAME
Define the property type for managed object class.
The method getPropertyTypes() returns this constant.
MANAGED_OBJECT_INSTANCE_PROP_NAME
public static final java.lang.String MANAGED_OBJECT_INSTANCE_PROP_NAME
Define the property name for managed object instances.
The method getPropertyNames() returns this constant.
MANAGED_OBJECT_INSTANCE_PROP_TYPE
public static final java.lang.String MANAGED_OBJECT_INSTANCE_PROP_TYPE
Define the property type for managed object instance.
The method getPropertyTypes() returns this constant.
OSS_VERSION_PROP_NAME
public static final java.lang.String OSS_VERSION_PROP_NAME
Define the property name for the version.
The method getPropertyNames() returns this constant.
OSS_VERSION_PROP_TYPE
public static final java.lang.String OSS_VERSION_PROP_TYPE
Define the property type for the version.
The method getPropertyTypes() returns this constant.
PERFORMANCE_MONITOR_KEY_PROP_NAME
public static final java.lang.String PERFORMANCE_MONITOR_KEY_PROP_NAME
Define the property name for performance monitor key.
This property is only available if the event is applicable for one measurement job.
The method getPropertyNames() returns this constant.
PERFORMANCE_MONITOR_KEY_PROP_TYPE
public static final java.lang.String PERFORMANCE_MONITOR_KEY_PROP_TYPE
Define the property type for performance monitor key.
The method getPropertyTypes() returns this constant.
48
PerformanceDataAvailableEvent
SYSTEM_DN_PROP_NAME
SYSTEM_DN_PROP_NAME
public static final java.lang.String SYSTEM_DN_PROP_NAME
Define the property name for system distinguished name.
The method getPropertyNames() returns this constant.
SYSTEM_DN_PROP_TYPE
public static final java.lang.String SYSTEM_DN_PROP_TYPE
Define the property type for system distinguished name.
The method getPropertyTypes() returns this constant.
PerformanceDataAvailableEventSyntaxpublic interface PerformanceDataAvailableEvent extends BaseEvent44
All Superinterfaces: BaseEvent44, java.lang.Cloneable, Event235, java.io.Serializable
DescriptionThis interface represents the payload of the event that is sent when a measurement report file has been created.
Author: Stefan Ýberg
Version: 0.2, 2001-02-08
See Also: PerformanceDataAvailableEventDescriptor50
Methods
getReportInformation()
public ReportInfo96 getReportInformation()
Gets information about the report.
The report information contains all information that is needed to retrieve measurement report data.
Member Summary
MethodsReportInfo getReportInformation()49
49
PerformanceDataAvailableEventDescriptor
EVENT_TYPE_VALUE
Returns: ReportInfo Measurement report information.
PerformanceDataAvailableEventDe-scriptorSyntaxpublic interface PerformanceDataAvailableEventDescriptor extends BaseEventDescriptor46
All Superinterfaces: BaseEventDescriptor46, EventPropertyDescriptor237, java.io.Serial-izable
DescriptionThe PerformanceDataAvailableEventDescriptor interface is equivalent to an enumerated type i.e. it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
The interface also contains the definition of methods that can be used at run-time to dynamically discover the properties of the event and their types. The interface has also two methods to create a JMS message and to covert from a JMS message to a PerformanceDataAvailableEvent.
Author: Stefan Ýberg
Version: 0.2, 2001-03-06
Fields
EVENT_TYPE_VALUE
public static final java.lang.String EVENT_TYPE_VALUE
Defines the event type of Performance Data Available Events.
The method getEventType() returns this constant.
Member Summary
FieldsString EVENT_TYPE_VALUE50
MethodsPerformanceDataAvail-
ableEvent
fromJMS(Message)51
50
PerformanceDataEvent
fromJMS(Message)
ent.
Methods
fromJMS(Message)
public PerformanceDataAvailableEvent49 fromJMS(javax.jms.Message msg)
throws javax.oss.IllegalArgumentException
Extract the payload from the JMS message.
If the JMS message is
• an ObjectMessage the payload will be extracted and converted to PerformanceDataAvailableEv
Parameters:The - message that contains the payload.
Returns: PerformanceDataAvailableEvent Returns the payload of the message.
Throws:IllegalArgumentException239 - Is raised if the payload could not bee extracted from the message.
PerformanceDataEventSyntaxpublic interface PerformanceDataEvent extends BaseEvent44
All Superinterfaces: BaseEvent44, java.lang.Cloneable, Event235, java.io.Serializable
DescriptionThe performance data event defines the payload of the events that contains measurement reports.
Author: Stefan Ýberg
Version: 0.2, 2001-02-08
See Also: PerformanceDataEventDescriptor52
Member Summary
MethodsObject getPerformanceMonitorReport()52
ReportFormat getReportFormat()52
51
PerformanceDataEventDescriptor
getPerformanceMonitorReport()
Methods
getPerformanceMonitorReport()
public java.lang.Object getPerformanceMonitorReport()
Get the measurement report.
If the measurement result is in XML format a String object will be returned.
Returns: Object The measurement result.
getReportFormat()
public ReportFormat93 getReportFormat()
Gets the measurement report format.
Returns: ReportFormat The measurement report format.
PerformanceDataEventDescriptorSyntaxpublic interface PerformanceDataEventDescriptor extends BaseEventDescriptor46
All Superinterfaces: BaseEventDescriptor46, EventPropertyDescriptor237, java.io.Serial-izable
DescriptionThe PerformanceDataEventDescriptor interface is equivalent to an enumerated type i.e. it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
The interface also contains the definition of methods that can be used at run-time to dynamically discover the properties of the event and their types. The interface has also two methods to create a JMS message and to covert from a JMS message to a PerformanceDataEvent.
Author: Stefan Ýberg
Version: 0.2, 2001-03-06
Member Summary
FieldsString EVENT_TYPE_VALUE53
MethodsPerformanceDataEvent fromJMS(Message)53
52
PerformanceMonitor
EVENT_TYPE_VALUE
manage
dminis-
Fields
EVENT_TYPE_VALUE
public static final java.lang.String EVENT_TYPE_VALUE
Defines the event type of Performance Data Available Events.
The method getEventType() returns this constant.
Methods
fromJMS(Message)
public PerformanceDataEvent51 fromJMS(javax.jms.Message msg)
throws javax.oss.IllegalArgumentException
Extract the payload from the JMS message.
If the JMS message is
• an ObjectMessage the payload will be extracted and converted to PerformanceDataEvent.
Parameters:The - message that contains the payload.
Returns: PerformanceDataAvailableEvent Returns the payload of the message.
Throws:IllegalArgumentException239 - Is raised if the payload could not bee extracted from the message.
PerformanceMonitorSyntaxpublic interface PerformanceMonitor extends javax.ejb.EJBObject, PerformanceMonitorMethods63
All Superinterfaces: javax.ejb.EJBObject, PerformanceMonitorMethods63, java.rmi.Remote
DescriptionThe PerformanceMonitor interface is a EJB remote interface and the central interface of this package to measurement jobs.
This interface defines administrative functions that a performance monitoring agent shall support. The atration functions are:
• Creating a measurement job • Deleting a measurement job • Suspending/resuming a measurement job • Get measurement job
53
PerformanceMonitor
fromJMS(Message)
er to
the can also h the job
ent may m over- a defined ut that ob is ment
cur-ta that
re-
ervable d below. ed.
re-duled e mea- client in
all be the pos-ea-
rement
is sent to rt and ovide
• Get supported report formats • Get supported observable objects • Retrieval of measurement reports
Creating a measurement job: On creation of a measurement job, all information has to be supplied in ordcollect the required data from the selected resources as specified by the measurement job.
Deleting a measurement job: A measurement job is automatically deleted by the system when it reachesjob end time and all scheduled measurement reports have been generated. A created measurement jobbe deleted by manual intervention at any time. When deleted, the measurement process associated witis stopped, and all allocated resources are freed.
Suspending/resuming a measurement job: On normal operation, the measurement job collects measuremdata according to the actual values of the measurement job parameters. However, the system operator decide for some reason to discard temporarily the collection of measurement data (e.g. in case of systeload or congestion, measurement results not used,...). The system operator therefore is able to suspendmeasurement job at any time. This implies that the measurement job definition remains in the system, bno measurement gathering activities are performed for this measurement job. When the measurement jresumed, measurement data collection is started again at the next granularity period within the measureschedule. These operations are optional.
Get a measurement job: The users of the interface shall be able to get a list of all measurements that arerently defined, together with all available actual information as stored. This information consists of the dais supplied on creation/modification and the actual state information of the measurement job.
Get report formats: The bean implementation shall provide the functions to determine the current measument report format.
Get supported observable objects: A discover mechanisms is provided to find the supported observable object classes and observable object instances. Observable object instances can be found by using obsobject class or by specifying a base object where the observable object instances are hierarchical locateMechanism to find the performance attributes associated with an Observable Object class is also provid
Retrieval of measurement reports: Each measurement job will collect measurement data at a particular fquency, known as the granularity period of the measurement. At the end of the granularity period a schemeasurement report shall be generated for each measurement job that is actively collecting performancsurement data. These measurement reports of the measurement data collection can be forwarded to thetwo standard ways:
• the scheduled measurement reports can be sent to the client as soon as they are available, • the measurement reports can be stored and transferred to or retrieved when required.
The measurement reports shall be forward to the client in one or both of the above standard ways. It shpossible for the client to specify the details for its measurement retrieval. It is also necessary to support sibility for multiple destinations for transfer of data, in the case of several clients required the produced msurement reports.
The first case will forward the measurement report in a event to the client. This event contains the measureport data and is issued when the report mode is set to event.
The second case requires implementation of local storage of the measurement reports and that a event the clients when the data is available. This event contains the identity/location of the measurement reposhall be issued when the local stored measurement report is created. The bean implementation shall prfunction to find available stored measurement reports.
Author: Stefan Ýberg
54
PerformanceMonitorByClassesValue
fromJMS(Message)
a t job. If
ill be
Version: 0.3, 2001-02-15
PerformanceMonitorByClassesValueSyntaxpublic interface PerformanceMonitorByClassesValue extends PerformanceMonitorValue79
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, PerformanceMonitorValue79, java.io.Serializable
DescriptionThis interface is the value representation of a measurement job that monitor a set of specified attributes on a set of observable object classes.
This interface extends the PerformanceMonitorValue interface with a new attribute:
• a list of measurement attributes to monitor. • a list of Observable Object classes. • a scope that define from where to find the observable object classes.
The new attributes, of the value object, are a list of observed object classes that shall be monitored, withscope, and an optional list of measurement attributes, that identify what is monitored by the measurementhe measurement attribute list is omitted, all measurement attributes in the observed object instances wmonitored (scanned).
Author: Stefan Ýberg
Version: 0.1, 2001-02-08
See Also: PerformanceMonitor53
Member Summary
FieldsString MEASUREMENT_ATTRIBUTES56String OBSERVABLE_OBJECT_CLASSES56String SCOPE56String VALUE_TYPE56
MethodsPerformanceAttribute-
Descriptor[]
getMeasurementAttributes()56
String[] getObservedObjectClasses()56String getScope()56
void setMeasurementAttributes(PerformanceAttributeDescriptor[])57void setObservedObjectClasses(String[])57void setScope(String)57
55
PerformanceMonitorByClassesValue
MEASUREMENT_ATTRIBUTES
Fields
MEASUREMENT_ATTRIBUTES
public static final java.lang.String MEASUREMENT_ATTRIBUTES
Constant for attribute measurement attributes.
OBSERVABLE_OBJECT_CLASSES
public static final java.lang.String OBSERVABLE_OBJECT_CLASSES
Constant for attribute observable object classes.
SCOPE
public static final java.lang.String SCOPE
Constant for attribute defining the scope.
VALUE_TYPE
public static final java.lang.String VALUE_TYPE
Constant that can be used to match what is returned from PerormanceMonitor::getPerformanceMonitor-Types().
Methods
getMeasurementAttributes()
public PerformanceAttributeDescriptor90[] getMeasurementAttributes()
Returns a list of measurement attributes.
Returns: PerformanceAttributeDescriptor[] List of measurement attribute.
getObservedObjectClasses()
public java.lang.String[] getObservedObjectClasses()
Returns a list of observable object class names.
Returns: String[] List of observable object class names.
getScope()
public java.lang.String getScope()
Returns the distinguished name of the object where the scope start from.
56
PerformanceMonitorByObjectsValue
setMeasurementAttributes(PerformanceAttributeDescriptor[])
Returns: String The distinguished name of the object where the scope start from.
setMeasurementAttributes(PerformanceAttributeDescriptor[])
public void setMeasurementAttributes(PerformanceAttributeDescriptor90[]
measurmentAttributeNames)
Sets the measurement attributes to be monitored.
The supplied measurement attribute must be supported of all monitored objects.
The measurement attributes will be validated when the value object is passed to the performance monitorbean.
Parameters:measurmentAttributeNames - List of measurement attribute.
setObservedObjectClasses(String[])
public void setObservedObjectClasses(java.lang.String[] observedObjectClasses)
Sets the observable object classes that shall be monitored.
The observable object classes will be validated when the value object is passed to the performance monitorbean.
Parameters:observedObjectClasses - List of observable object class names.
setScope(String)
public void setScope(java.lang.String base)
Sets the distinguished name of the object where the scope shall start from.
Parameters:base - The distinguished name of the object where the scope shall start from.
PerformanceMonitorByObjectsValueSyntaxpublic interface PerformanceMonitorByObjectsValue extends PerformanceMonitorValue79
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, PerformanceMonitorValue79, java.io.Serializable
DescriptionThis interface is the value representation of a measurement job that monitor a set of specified attributes on a set of observable object instances.
This interface extends the PerformanceMonitorValue interface with a new attribute:
• a list of measurement attributes to monitor. • a list of observable object instances.
57
PerformanceMonitorByObjectsValue
MEASUREMENT_ATTRIBUTES
onitor-
The new attributes, of the value object, are a list of observed object instances that shall be monitored and an optional list of measurement attributes, that identify what is monitored by the measurement job. If the measure-ment attribute list is omitted, all measurement attributes in the observed object instances will be monitored (scanned). The observable object instances should be of the same type.
Author: Stefan Ýberg
Version: 0.6, 2001-04-10
See Also: PerformanceMonitor53
Fields
MEASUREMENT_ATTRIBUTES
public static final java.lang.String MEASUREMENT_ATTRIBUTES
Constant for attribute measurement attributes.
OBSERVED_OBJECTS
public static final java.lang.String OBSERVED_OBJECTS
Constant for attribute observable object.
VALUE_TYPE
public static final java.lang.String VALUE_TYPE
Constant that can be used to match what is returned from PerormanceMonitor::getPerformanceMTypes().
Member Summary
FieldsString MEASUREMENT_ATTRIBUTES58String OBSERVED_OBJECTS58String VALUE_TYPE58
MethodsPerformanceAttribute-
Descriptor[]
getMeasurementAttributes()59
String[] getObservedObjects()59void setMeasurementAttributes(PerformanceAttributeDescriptor[])59void setObservedObjects(String[])59
58
PerformanceMonitorHome
getMeasurementAttributes()
Methods
getMeasurementAttributes()
public PerformanceAttributeDescriptor90[] getMeasurementAttributes()
Returns a list of measurement attributes.
Returns: PerformanceAttributeDescriptor[] List of measurement attribute.
getObservedObjects()
public java.lang.String[] getObservedObjects()
Returns a list of observable object distinguished names.
Returns: String[] List of observable object distinguished names.
setMeasurementAttributes(PerformanceAttributeDescriptor[])
public void setMeasurementAttributes(PerformanceAttributeDescriptor90[]
measurmentAttributeNames)
Sets the measurement attributes to be monitored.
The supplied measurement attribute must be supported of all monitored objects.
The measurement attributes will be validated when the value object is passed to the performance monitorbean.
Parameters:measurmentAttributeNames - List of measurement attribute.
setObservedObjects(String[])
public void setObservedObjects(java.lang.String[] observedObjects)
Sets the observable object that shall be monitored.
The observable objects will be validated when the value object is passed to the performance monitor bean.
Parameters:observedObjects - List of observable object distinguished names.
PerformanceMonitorHomeSyntaxpublic interface PerformanceMonitorHome extends javax.ejb.EJBHome
All Superinterfaces: javax.ejb.EJBHome, java.rmi.Remote
59
PerformanceMonitorHome
create()
an.
DescriptionThe Performance Monitor Home interface is the factory to create new remote interface to Performance Monitor beans.
The Performance Monitor Home interface is registered in JNDI as part of the Performance Monitor Beans deployment process. The PerformanceMonitorHome is registered under naming attributes which can be used to find the PerformanceMonitorHome interface.
The following code illustrates how to find a PerformanceMonitorHome interface and checking the version of the EJB before the remote interface is created.
Context initial = new InitialContext();java.lang.Object objref = initial.lookup(“Ericsson/RAN/PerformanceMonitor”);PerformanceMonitorHome pmHome =(PerformanceMonitorHome)PortableRemoteObject.narrow(objr
ef, PerformanceMonitorHome.class);// Check the versionVersion ver = pmHome.getVersion();if ( ver.isCompatible( “OSS QoS API version 1.0” ){
// Create the remote interface of Performance MonitorPerformanceMonitor pmSession = pmHome.create();// Do something
}
Author: Stefan Ýberg
Version: 0.2, 2001-01-15
Methods
create()
public PerformanceMonitor53 create()
throws javax.ejb.CreateException, java.rmi.RemoteException
Creates a new instance of the Performance Monitor bean.
Returns: PerformanceMonitor The remote interface to the new object.
Throws:javax.ejb.CreateException - Is raised if a failure to create a new performance monitor be
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
Member Summary
MethodsPerformanceMonitor create()60
Version getVersion()61
60
PerformanceMonitorKey
getVersion()
getVersion()
public Version245 getVersion()
throws java.rmi.RemoteException
Retrieve information of the supported API version.
Returns: Version The version object for the remote interface.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
PerformanceMonitorKeySyntaxpublic interface PerformanceMonitorKey extends ManagedEntityKey240
All Superinterfaces: java.lang.Cloneable, ManagedEntityKey240, java.io.Serializable
DescriptionThis interface is the primary key of a performance monitor instance.
It identifies the created measurement job. The key of the measurement job is a unique identifier of the measure-ment job.
Author: Stefan Ýberg
Version: 0.2, 2001-02-08
Methods
getPerformanceMonitorPrimaryKey()
public java.lang.String getPerformanceMonitorPrimaryKey()
Returns the primary key of the measurement job.
Returns: String The primary key of the measurement job in string format.
Member Summary
MethodsString getPerformanceMonitorPrimaryKey()61
void setPerformanceMonitorPrimaryKey(String)62
61
PerformanceMonitorKeyResult
setPerformanceMonitorPrimaryKey(String)
setPerformanceMonitorPrimaryKey(String)
public void setPerformanceMonitorPrimaryKey(java.lang.String key)
Sets the primary key of the measurement job.
Parameters:key - The primary key of the measurement job in string format.
PerformanceMonitorKeyResultSyntaxpublic interface PerformanceMonitorKeyResult extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface encapsulates all the information necessary to indicate the result of a BEST EFFORT operation on a specific measurement job.
The performance monitor key result is used in operations involving multiple measurement jobs, for example in the deletion or creation of multiple measurement jobs.
The interface contains the primary key of the measurement job, a boolean value indicating if the operation was successful for that measurement job and the reason why the operation failed.
Author: Stefan Ýberg
Version: 0.1, 2001-02-28
Methods
getFailureReason()
public java.lang.String getFailureReason()
Returns the reason of the failure.
Returns: String The reason of the failure.
Member Summary
MethodsString getFailureReason()62
PerformanceMonitorKey getPerformanceMonitorKey()63boolean isSuccess()63
62
PerformanceMonitorMethods
getPerformanceMonitorKey()
getPerformanceMonitorKey()
public PerformanceMonitorKey61 getPerformanceMonitorKey()
Returns the primary key of the measurement job.
Returns: PerformanceMonitorKey The primary key of the measurement job.
isSuccess()
public boolean isSuccess()
Indicates if the operation was successful for the measurement job.
Returns: boolean Returns false if the operation failed on the measurement job.
PerformanceMonitorMethodsSyntaxpublic interface PerformanceMonitorMethods
All Known Subinterfaces: PerformanceMonitor53
DescriptionThe PerformanceMonitorMethods interface defines the business functions for the PerformanceMonitor remote interface and the bean implementation.
By providing the business operations in a separate interface allows the bean designers to get compile time checks that their bean will work with the remote interface.
Author: Stefan Ýberg
Version: 0.4, 2001-03-06
Member Summary
FieldsString GET_CURRENT_RESULT_REPORT64String MAKE_PERFORMANCE_MONITOR_BY_CLASSES_VALUE65String RESUME_PERFORMANCE_MONITOR65String SUSPEND_PERFORMANCE_MONITOR65String TRY_CREATE_PERFORMANCE_MONITORS65String TRY_REMOVE_PERFORMANCE_MONITORS65String TRY_RESUME_PERFORMANCE_MONITORS65String TRY_SUSPEND_PERFORMANCE_MONITORS65
MethodsPerformanceMonitorKey createPerformanceMonitor(PerformanceMonitorValue)65
ReportFormat getCurrentReportFormat()67Object getCurrentResultReport(PerformanceMonitorKey, ReportFormat)67
63
PerformanceMonitorMethods
GET_CURRENT_RESULT_REPORT
Fields
GET_CURRENT_RESULT_REPORT
public static final java.lang.String GET_CURRENT_RESULT_REPORT
Constant for the optional operation getCurrentResultReport.
BaseEventDescriptor getEventDescriptor(String)67String[] getEventTypes()68
PerformanceAttribute-Descriptor[]
getObservableAttributes(String)68
ObservableObjectClas-sIterator
getObservableObjectClasses()68
ObservableObjectIter-ator
getObservableObjects(String, String)69
PerformanceMonitor-Value
getPerformanceMonitor(PerformanceMonitorKey, String[])69
PerformanceMonitor-ValueIterator
getPerformanceMonitors(PerformanceMonitorKey[], String[])70
String[] getPerformanceMonitorTypes()70ReportInfoIterator getPerformanceReportInfo(PerformanceMonitorKey, Calendar)70
String[] getQueryTypes()71ReportFormat[] getReportFormats()71
int[] getReportModes()71int[] getSupportedGranularities(PerformanceMonitorValue)72
String[] getSupportedOptionalOperations()72boolean isObservableObjectsSupported(String[])73
PerformanceMonitorBy-ClassesValue
makePerformanceMonitorByClassesValue()73
PerformanceMonitorBy-ObjectsValue
makePerformanceMonitorByObjectsValue()73
PerformanceMonitor-Value
makePerformanceMonitorValue(String)73
QueryValue makeQueryValue(String)74PerformanceMonitor-
ValueIterator
queryPerformanceMonitors(QueryValue, String[])74
void removePerformanceMonitor(PerformanceMonitorKey)75void resumePerformanceMonitor(PerformanceMonitorKey)75void suspendPerformanceMonitor(PerformanceMonitorKey)75
PerformanceMonitor-KeyResult[]
tryCreatePerformanceMonitors(PerformanceMonitorValue[])76
PerformanceMonitor-KeyResult[]
tryRemovePerformanceMonitors(PerformanceMonitorKey[])77
PerformanceMonitor-KeyResult[]
tryResumePerformanceMonitors(PerformanceMonitorKey[])77
PerformanceMonitor-KeyResult[]
trySuspendPerformanceMonitors(PerformanceMonitorKey[])78
Member Summary
64
PerformanceMonitorMethods
MAKE_PERFORMANCE_MONITOR_BY_CLASSES_VALUE
MAKE_PERFORMANCE_MONITOR_BY_CLASSES_VALUE
public static final java.lang.String MAKE_PERFORMANCE_MONITOR_BY_CLASSES_VALUE
Constant for the optional operation makePerformanceMonitorByClassesValue.
RESUME_PERFORMANCE_MONITOR
public static final java.lang.String RESUME_PERFORMANCE_MONITOR
Constant for the optional operation resumePerformanceMonitor.
SUSPEND_PERFORMANCE_MONITOR
public static final java.lang.String SUSPEND_PERFORMANCE_MONITOR
Constant for the optional operation suspendPerformanceMonitor.
TRY_CREATE_PERFORMANCE_MONITORS
public static final java.lang.String TRY_CREATE_PERFORMANCE_MONITORS
Constant for the optional operation tryCreatePerformanceMonitors.
TRY_REMOVE_PERFORMANCE_MONITORS
public static final java.lang.String TRY_REMOVE_PERFORMANCE_MONITORS
Constant for the optional operation tryRemovePerformanceMonitors.
TRY_RESUME_PERFORMANCE_MONITORS
public static final java.lang.String TRY_RESUME_PERFORMANCE_MONITORS
Constant for the optional operation resumePerformanceMonitors.
TRY_SUSPEND_PERFORMANCE_MONITORS
public static final java.lang.String TRY_SUSPEND_PERFORMANCE_MONITORS
Constant for the optional operation suspendPerformanceMonitors.
Methods
createPerformanceMonitor(PerformanceMonitorValue)
public PerformanceMonitorKey61 createPerformanceMonitor(PerformanceMonitorValue79
pmValue)
throws javax.ejb.CreateException, javax.ejb.DuplicateKeyException, java.rmi
.RemoteException
65
PerformanceMonitorMethods
createPerformanceMonitor(PerformanceMonitorValue)
ncesd by that
s mustill be
nt.
periods.ecified
rom theortingurementent data
rom the ore for-
from thepast andweeklyerval isnularity dailyely and
on dutytates are
that cre-y these
Creates a new measurement job.
On creation of a measurement job, all needed information has to be supplied in order to collect the requireddata from the selected resources as specified by the measurement job.
If the value object is of the type “PerformanceMonitorByObjectsValue” all observable object instamust be of the same object class. The attributes that should be monitored needs to be supporteobject class. If the attribute list is omitted all attributes will be monitored.
If the value object is of the type “PerformanceMonitorByClassesValue” all observable object classesupport the attributes that should be monitored. If the attribute list is omitted all common attributes wmonitored.
If the name of the measurement job is set it needs to be unique within the performance monitor age
The set of observable object instances and measurement attribute has a set of supported granularityThese granularity periods can be retrieved from the operation getSupportedGranularities(). The spgranularity period must be one of the supported granularity periods.
The specified report mode must be one of the supported reports modes, that can be retrieved fmethod getReportModes(). If the report mode is set to ReportMode.FILE_SINGEL and the repperiod has not been set, the reporting period will be the same as the granularity period of the measjob. If the granularity period is set to zero (0), then no reports will be generated and the measuremcan only be gathered on request from the client (getCurrentResultReport).
The specified report format must be one of the supported reports formats, that can be retrieved fmethod getReportFormats(). If the report mode is set to ReportMode.FILE_MULTIPLEEVENT_MULTIPLE the client can not set the report format. The result reports will be generated in thmat that the getCurrentReportFormat() returns.
The implementation shall support a measurement job start time (schedule) of up to at least 30 days measurement job creation date. It shall also validate that the start and end time is not a time in the that the end time is greater then start time. The recording intervals may repeat on a daily and/or basis and specify the time periods during which the measurement data is collected. The daily intdefined by start times and end times, which lie between 00.00 and 24.00 hours, aligned on graperiod boundaries. Thus the length of a daily interval will be a multiple of the granularity period. Theintervals can not be overlapped. If schedule is not specified the measurement job will start immediatrun indefinitely.
On creation of a measurement job the state is set to active and depending of the schedule it will beor off duty. If the state is set to suspended on creation the state will be set to suspended, other signored.
The value object that is passed to this method should have been created by calling the operations ates value object, such as createPerformanceMonitorValue(). If the value object is not created bmethods then it is implementation dependant if the create operation will work.
Parameters:pmValue - The input parameters to create a measurement job.
Returns: PerformanceMonitorKey The primary key of the created measurement job.
Throws:javax.ejb.CreateException - Is raised if the measurement job could not be create, this includes invalide parameter values and unsupported parameters.
javax.ejb.DuplicateKeyException - Is raised if an measurement job cannot be created because a measurement job with the same key already exists.
66
PerformanceMonitorMethods
getCurrentReportFormat()
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getCurrentReportFormat()
public ReportFormat93 getCurrentReportFormat()
throws java.rmi.RemoteException
Returns the current measurement result format that the performance monitor agent use.
This function can be used to determined the measurement result format that the performance monitor agentcurrently is using for result reports with many measurement jobs.
Returns: ReportFormat The current measurement result file format.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getCurrentResultReport(PerformanceMonitorKey, ReportFormat)
public java.lang.Object getCurrentResultReport(PerformanceMonitorKey61 pmKey,
ReportFormat93 format)
throws javax.oss.UnsupportedOperationException, javax.oss.pm.util.IllegalSt
ateException, java.rmi.RemoteException
Generate a result report of the current measurement result values.
An external system may for some reason be interested in the current values of the measurement job, inde-pendently of the scheduled data collection and subsequent reporting, e.g. for tracing the increment of someof the counters. To this aim, this method generates a result report of the current values of the measurementjob for the same network resources as defined in the measurement job. The current measurement result isreturned in a format, which is identical to scheduled result reports, which are generated by the measurementjob at the end of the granularity period.
This operation does not affect the measurement job, and may only be issued when the measurement job isactive and not suspended. If the measurement job is suspended, the method will raise the IllegalState-Exception exception.
If the report format type is set to XML or ASCII a string object will be returned.
Parameters:pmKey - Primary key of the measurement job.
format - Defines the report format of the current measurement values.
Returns: Object The measurement result of the current values of the measurement job for the same resources as defined in the measurement job.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
IllegalStateException167 - Is raised if the measurement job is suspended.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getEventDescriptor(String)
public BaseEventDescriptor46 getEventDescriptor(java.lang.String eventType)
throws java.rmi.RemoteException
67
PerformanceMonitorMethods
getEventTypes()
ilable-
r” will
ormance
vable
es.
Get the event descriptor of a event type.
For a event type of “PerformanceDataAvailableEvent” a event descriptor of “PerformanceDataAvaEventDescriptor” will be returned.
For a event typ of “PerformanceDataEvent” a event descriptor of “PerformanceDataEventDescriptobe returned, if supported.
Parameters:eventType - The name of the event type.
Returns: BaseEventDescriptor Event descriptor of a event type.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getEventTypes()
public java.lang.String[] getEventTypes()
throws java.rmi.RemoteException
Get the supported event types.
This operation gives information on which event types that are supported by this implementation.
This operation must return “PerformanceDataAvailableEvent”.
Returns: String[] List of event type names (interface name) that are supported.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getObservableAttributes(String)
public PerformanceAttributeDescriptor90[] getObservableAttributes(java.lang.String
observableObjectClassName)
throws java.rmi.RemoteException
Returns all measurement attributes that can be monitored in the observable object class, in the perfmonitoring agent.
Parameters:observableObjectClassName - The name of the observable object class.
Returns: PerformanceAttributeDescriptor[] List of all supported measurement attributes in the obserobject class.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getObservableObjectClasses()
public ObservableObjectClassIterator169 getObservableObjectClasses()
throws javax.ejb.CreateException, java.rmi.RemoteException
Returns all supported observed object classes in the performance monitoring agent.
Returns: ObservableObjectClassIterator Iterator that contains all supported observable object class
68
PerformanceMonitorMethods
getObservableObjects(String, String)
Throws:javax.ejb.CreateException - Is raised if the ObservableObjectClassIterator could not be create.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getObservableObjects(String, String)
public ObservableObjectIterator167 getObservableObjects(java.lang.String
observableObjectClassName, java.lang.String base)
throws javax.ejb.CreateException, java.rmi.RemoteException
Returns the supported observable object instances of the specific object class that are located below thespecified distinguished name in the performance monitoring agent.
If base is not specified then all instances of that class are returned.
Parameters:observableObjectClassName - The class name of the observable object instances to be found.
base - The distinguished name of the object where the search shall start from.
Returns: ObservableObjectIterator Iterator that contains all supported observable objects.
Throws:javax.ejb.CreateException - Is raised if the ObservableObjectIterator could not be create.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getPerformanceMonitor(PerformanceMonitorKey, String[])
public PerformanceMonitorValue79 getPerformanceMonitor(PerformanceMonitorKey61 pmKey,
java.lang.String[] attributes)
throws javax.oss.IllegalArgumentException, javax.ejb.ObjectNotFoundExceptio
n, java.rmi.RemoteException
Gets the attribute values of a specific measurement job.
The input parameters specify which attributes to get on the measurement job. If the attribute id list is nullthen all attribute values of the measurement jobs are returned.
If an attribute id is specified and this attribute id does not exist in a requested measurement job, the Illegal-ArgumentException will be raised.
Parameters:pmKey - Primary key of the measurement job.
attributes - A list of the attributes to be returned.
Returns: PerformanceMonitoringValue The attribute values for the requested measurement job.
Throws:IllegalArgumentException239 - Is raised when the input parameters are not valid.
javax.ejb.ObjectNotFoundException - Is raised if the measurement job is not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
69
PerformanceMonitorMethods
getPerformanceMonitors(PerformanceMonitorKey[], String[])
e gener-
getPerformanceMonitors(PerformanceMonitorKey[], String[])
public PerformanceMonitorValueIterator88 getPerformanceMonitors(PerformanceMonitorKey61[]
pmKey, java.lang.String[] attributes)
throws javax.ejb.CreateException, javax.ejb.FinderException, java.rmi.Remot
eException
Gets a list of attribute values of the specific measurement jobs.
The input parameters specify which attributes to get on the measurement jobs. If the attribute id list is nullthen all attribute values of the measurement jobs are returned. if the array of measurement job keys is nullthen all measurement jobs are returned.
If an attribute id is specified and this attribute does not exist in a requested measurement job, the measure-ment job will not be returned.
Parameters:pmKey - Primary keys of the measurement jobs.
attributes - A list of the attributes to be returned.
Returns: PerformanceMonitorValueIterator Iterator that contains attribute values for each requested measurement job.
Throws:javax.ejb.CreateException - Is raised if the PerformanceMonitorValueIterator could not be create.
javax.ejb.FinderException - Is raised if one or several measurement jobs where not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getPerformanceMonitorTypes()
public java.lang.String[] getPerformanceMonitorTypes()
throws java.rmi.RemoteException
Get the supported entity value types.
This operation gives information on which entity value types that are supported by this implementation.
This operation must return “PerformanceMonitorByObjectsValue” entity value type.
Returns: String[] List of entity value type names (interface name) that are supported.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getPerformanceReportInfo(PerformanceMonitorKey, Calendar)
public ReportInfoIterator97 getPerformanceReportInfo(PerformanceMonitorKey61 pmKey,
java.util.Calendar date)
throws javax.ejb.CreateException, java.rmi.RemoteException
Returns a list of available measurement result in the performance monitor agent.
During the recording intervals specified for measurement jobs, scheduled measurement reports arated at the end of each granularity period if the measurement jobs are not suspended.
70
PerformanceMonitorMethods
getQueryTypes()
rame-result
Measurement jobs that have the distribution set to file will add its measurement report to a measurementresult file. A list of reference to these generated measurement result files is returned, to allow retrieval ofthe measurement result files.
The storage capacity and duration as well as the method how the data may be deleted are implementationdependent.
If a performance monitor key is specified all result files containing that measurement job is returned. This isonly applicable if the performance monitor agent stores measurement reports per measurement job.
If the date is specified all result files created after that date is returned.
If some of the input parameters should not be specified a ’null’ value should be specified. If both paters are specified, a logical ’AND’ will be used to find the result files. If both parameters are null, all files will be returned.
Parameters:pmKey - The primary key of a measurement job, that shall be included in the reports.
date - Specifies the minimum creation date for the reports.
Returns: ReportInfoIterator Iterator that contains all measurement result files.
Throws:javax.ejb.CreateException - Is raised if the ReportInfoIterator could not be create.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getQueryTypes()
public java.lang.String[] getQueryTypes()
throws java.rmi.RemoteException
Get name of the supported query value types.
This operation gives information on supported query value types by this implementation.
This operation shall return “QueryPerformanceMonitorValue” and “QueryByDNValue”.
Returns: String[] List of query value type names (interface name) that are supported.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getReportFormats()
public ReportFormat93[] getReportFormats()
throws java.rmi.RemoteException
Returns the supported measurement result formats of the performance monitor agent.
Returns: ReportFormat[] List of supported measurement result formats.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getReportModes()
public int[] getReportModes()
throws java.rmi.RemoteException
71
PerformanceMonitorMethods
getSupportedGranularities(PerformanceMonitorValue)
are
Returns the supported report modes of the performance monitor agent.
The implementaion must support one of the file report modes, ReportMode.FILE_SINGEL or Report-Mode.FILE_MULTIPLE. The other report modes are optional. The report mode Report-Mode.NO_REPORT_MODE can not be returned by this operation.
Returns: int[] List of supported report modes.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
See Also: ReportMode99
getSupportedGranularities(PerformanceMonitorValue)
public int[] getSupportedGranularities(PerformanceMonitorValue79 pmValue)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Returns the supported granularity periods for the provided definition of a measurement job.
This operation returns a list of granularity periods that can be used when a measurement job shall be cre-ated, with the specified definition of the measurement job.
If no granularity period is supported for the specified instances and attributes, null shall be returned.
The returned granularity periods shall be a factor or a multiple of a hour.
Parameters:pmValue - The attributes of the measurement job except the granularity period.
Returns: int[] List of supported granularity periods.
Throws:IllegalArgumentException239 - Is raised when the input parameters are not valid.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getSupportedOptionalOperations()
public java.lang.String[] getSupportedOptionalOperations()
throws java.rmi.RemoteException
Get the supported optional operations.
Some of the operations on the performance monitor bean are optional. This operation gives information onwhich operations that are implemented and will not throw UnsupportedOperationException.
The following operation prototypes can be returned:
• PerformanceMonitorByClassesValue makePerformanceMonitorByClassesValue() • PerformanceMonitorKeyResult[] tryCreatePerformanceMonitors( PerformanceMonitorValue[] ) • PerformanceMonitorKeyResult[] tryRemovePerformanceMonitors( PerformanceMonitorKey[] ) • void suspendPerformanceMonitor(PerformanceMonitorKey ) • PerformanceMonitorKeyResult[] trySuspendPerformanceMonitors( PerformanceMonitorKey[] ) • void resumePerformanceMonitor(PerformanceMonitorKey ) • PerformanceMonitorKeyResult[] tryResumePerformanceMonitors( PerformanceMonitorKey[] ) • Object getCurrentResultReport( PerformanceMonitorKey , ReportFormat )
Returns: String[] List of operation names that will not throw UnsupportedOperationException, if theycalled.
72
PerformanceMonitorMethods
isObservableObjectsSupported(String[])
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
isObservableObjectsSupported(String[])
public boolean isObservableObjectsSupported(java.lang.String[] dnList)
throws java.rmi.RemoteException
Indicate if the observable objects are can be observed.
This operation can be used by the client to determine if this bean can create a measurement job with the listof observable objects.
Parameters:dnList - List of observable objects distinguished names.
Returns: boolean returns true if the list of observable objects can be observed, else false.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
makePerformanceMonitorByClassesValue()
public PerformanceMonitorByClassesValue55 makePerformanceMonitorByClassesValue()
throws java.rmi.RemoteException
Creates a new value object for a measurement job that monitor observable object classes.
Returns: PerformanceMonitorValueByObjects The created value object. The value object is empty.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
UnsupportedOperationException244
makePerformanceMonitorByObjectsValue()
public PerformanceMonitorByObjectsValue57 makePerformanceMonitorByObjectsValue()
throws java.rmi.RemoteException
Creates a new value object for a measurement job that monitor observable object instances.
Returns: PerformanceMonitorValueByObjects The created value object. The value object is empty.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
makePerformanceMonitorValue(String)
public PerformanceMonitorValue79 makePerformanceMonitorValue(java.lang.String value)
throws java.rmi.RemoteException
Creates a new value object for a measurement job.
Parameters:value - The name of one of the supported value types that are returned by getPerformanceMonitorTypes.
73
PerformanceMonitorMethods
makeQueryValue(String)
ance-
rovided
h, if theeasure-meter. If
the that are
tion.
e
Returns: PerformanceMonitorValue The created value object. The value object is empty.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
makeQueryValue(String)
public QueryValue244 makeQueryValue(java.lang.String type)
throws java.rmi.RemoteException
Creates a query value instance for the query type.
If the input parameter is equal to “QueryPerformanceMonitorValue” a instance of the QueryPerformMonitorValue interface shall be returned.
Parameters:type - The name of one of the supported query types that are returned by getQueryTypes().
Returns: QueryValue The created query instance. The query instance is empty.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
queryPerformanceMonitors(QueryValue, String[])
public PerformanceMonitorValueIterator88 queryPerformanceMonitors(QueryValue244 query,
java.lang.String[] attrNames)
throws javax.oss.IllegalArgumentException, javax.ejb.CreateException, java.
rmi.RemoteException
Queries for multiple measurement jobs using a query value instance.
The operation returns a list of attribute values of the specific measurement jobs that match the pquery.
The first input parameter specifies a query value instance that each measurement jobs must matcmeasurement jobs attribute values shall be returned. If the firts input parameter is null, then all mment jobs are returned. The attribute values to be returned are specified by the second input parathe attribute list is null then all attribute values of the measurement jobs are returned.
If the first input parameter is a “QueryPerformanceMonitorValue” or a “QueryByDNValue”, thenattribute names, in the second input parameter, must be an attribute of the measurment job typeretuned by the operaton QueryPerformanceMonitorValue::getPerformanceMonitorValueType().
This operation does only support the query types that are returned from the getQueryTypes() opera
Parameters:query - Search attributes with values to be match in each measurement job.
attributes - A list of the attributes to be returned.
Returns: PerformanceMonitorValueIterator A iterator of measurement job values.
Throws:IllegalArgumentException239 - Is raised if the query type is not supported.
javax.ejb.CreateException - Is raised if the PerformanceMonitorValueIterator could not bcreate.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
74
PerformanceMonitorMethods
removePerformanceMonitor(PerformanceMonitorKey)
removePerformanceMonitor(PerformanceMonitorKey)
public void removePerformanceMonitor(PerformanceMonitorKey61 pmKey)
throws javax.ejb.ObjectNotFoundException, javax.ejb.RemoveException, java.r
mi.RemoteException
Remove measurement job.
The measurement process associated with the measurement job is stopped, all allocated resources are freed.The stored measurement result reports, that are related to the measurement job shall not be removed. Themeasurement result reports should be removed only when the storage duration of the stored measurementresult reports expires.
A measurement job is automatically removed by the system when it reaches the monitoring end-time, andall scheduled or explicitly requested measurement reports have been generated.
Parameters:pmKey - Primary key of the measurement job to be removed.
Throws:javax.ejb.ObjectNotFoundException - Is raised if the measurement job was not found.
javax.ejb.RemoveException - Is raied if the measurement job could not be removed.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
resumePerformanceMonitor(PerformanceMonitorKey)
public void resumePerformanceMonitor(PerformanceMonitorKey61 pmKey)
throws javax.oss.UnsupportedOperationException, javax.ejb.ObjectNotFoundExc
eption, java.rmi.RemoteException
Re-enables the measurement job to collect measurement data.
The measurement job in the request starts to collect measurement data at the next granularity period withinthe measurement schedule.
This implies that the measurement job definition, which are remained in the system, are used when themeasurement job is resumed.
If the measurement job is already active the measurement will remain active.
Parameters:pmKey - Primary key of the measurement job to be resumed.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.ObjectNotFoundException - Is raised if the measurement job was not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
suspendPerformanceMonitor(PerformanceMonitorKey)
public void suspendPerformanceMonitor(PerformanceMonitorKey61 pmKey)
throws javax.oss.UnsupportedOperationException, javax.ejb.ObjectNotFoundExc
eption, java.rmi.RemoteException
Inhibits the measurement job from collection of measurement data.
75
PerformanceMonitorMethods
tryCreatePerformanceMonitors(PerformanceMonitorValue[])
This function can be used to temporarily discard the collection of measurement data (e.g. in case of systemoverload or congestion, measurement results not used,...). The measurement job can be suspended at anytime. This implies that the measurement job definitions remains in the system, but that no measurementgathering activities are performed for this monitoring. When the measurement job is resumed, measurementdata collection is started again at the next granularity period within the measurement schedule.
The resume function will re-enable measurement data collection according to the measurement job sched-ule.
Requesting the current measurement result values of a measurement job is NOT possible when the mea-surement job is suspended.
No scheduled measurement reports are generated when the measurement job is suspended.
If the measurement job is already suspended the measurement will remain suspended.
Parameters:pmKey - Primary keys of the measurement job to be suspended.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.ObjectNotFoundException - Is raised if the measurement job was not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
tryCreatePerformanceMonitors(PerformanceMonitorValue[])
public PerformanceMonitorKeyResult62[]
tryCreatePerformanceMonitors(PerformanceMonitorValue79[] pmValues)
throws javax.oss.UnsupportedOperationException, javax.ejb.CreateException,
javax.ejb.DuplicateKeyException, java.rmi.RemoteException
Try to create measurement jobs.
This operation try to create a number of measurement jobs. The operation has a best effort behavior andreturn a list results that indicate if the operation was successful or not on each measurement job.
The measurement jobs that should be created shall be done in accordance with the behavior of the create-PerformanceMonitor(...), which creates a single measurement job.
Parameters:pmValues - The input parameters to create measurement jobs.
Returns: PerformanceMonitorResultKey[] List of result information of the measurement jobs.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.CreateException - Is raised if the measurement jobs could not be create, this includes invalide parameter values and unsupported parameters.
javax.ejb.DuplicateKeyException - Is raised if an measurement job cannot be created because a measurement job with the same key already exists.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
76
PerformanceMonitorMethods
tryRemovePerformanceMonitors(PerformanceMonitorKey[])
tryRemovePerformanceMonitors(PerformanceMonitorKey[])
public PerformanceMonitorKeyResult62[]
tryRemovePerformanceMonitors(PerformanceMonitorKey61[] pmKeys)
throws javax.oss.UnsupportedOperationException, javax.ejb.FinderException,
javax.ejb.RemoveException, java.rmi.RemoteException
Try to remove measurement jobs.
This operation try to remove a number of measurement jobs. The operation has a best effort behavior andreturn a list results that indicate if the operation was successful or not on each measurement job.
The measurement jobs that should be removed shall be done in accordance with the behavior of theremovePerformanceMonitor(...), which removes a single measurement job.
Parameters:pmKeys - List of primary keys of the measurement jobs to delete.
Returns: PerformanceMonitorResultKey[] List of measurement jobs that could not be removed else null is returned.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.FinderException - Is raised if the measurement jobs was not found.
javax.ejb.RemoveException - Is raied if the measurement jobs could not be removed.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
tryResumePerformanceMonitors(PerformanceMonitorKey[])
public PerformanceMonitorKeyResult62[]
tryResumePerformanceMonitors(PerformanceMonitorKey61[] pmKeys)
throws javax.oss.UnsupportedOperationException, javax.ejb.FinderException,
java.rmi.RemoteException
Try to re-enables the measurement jobs to collect measurement data.
This operation try to re-enable a number of measurement jobs. The operation has a best effort behavior andreturn a list results that indicate if the operation was successful or not on each measurement job.
The measurement jobs that should be re-enable shall be done in accordance with the behavior of theresumePerformanceMonitor(...), which resume a single measurement job.
Each measurement job in the request starts to collect measurement data at the next granularity period withinthe measurement schedule.
This implies that the measurement job definition, which are remained in the system, are used when themeasurement job is resumed.
If the measurement jobs are already active the measurement will remain active.
Parameters:pmKeys - List of primary keys of the measurement jobs to be resumed.
Returns: PerformanceMonitorKeyResult[] List of measurement jobs that could not be resumed else null is returned.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
77
PerformanceMonitorState
trySuspendPerformanceMonitors(PerformanceMonitorKey[])
javax.ejb.FinderException - Is raised if the measurement jobs was not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
trySuspendPerformanceMonitors(PerformanceMonitorKey[])
public PerformanceMonitorKeyResult62[]
trySuspendPerformanceMonitors(PerformanceMonitorKey61[] pmKeys)
throws javax.oss.UnsupportedOperationException, javax.ejb.FinderException,
java.rmi.RemoteException
Try to inhibit measurement jobs from collection of measurement data.
This operation try to inhibit a number of measurement jobs. The operation has a best effort behavior andreturn a list results that indicate if the operation was successful or not on each measurement job.
The measurement jobs that should be inhibit shall be done in accordance with the behavior of the suspend-PerformanceMonitor(...), which removes a single measurement job.
Parameters:pmKeys - List of primary keys of the measurement jobs to be suspended.
Returns: PerformanceMonitorResultKey[] List of measurement jobs that could not be suspended else null is returned.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.FinderException - Is raised if the measurement jobs was not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
PerformanceMonitorStateSyntaxpublic interface PerformanceMonitorState
DescriptionDefines the state constants for performance monitor.
The measurement job can have several states: Active and on duty, Active but of duty and suspended.
Author: Stefan Ýberg
Version: 0.1, 2001-02-06
See Also: PerformanceMonitorValue79
Member Summary
Fieldsint ACTIVE_OFF_DUTY79
78
PerformanceMonitorValue
ACTIVE_OFF_DUTY
rement
Fields
ACTIVE_OFF_DUTY
public static final int ACTIVE_OFF_DUTY
Constant for a measurement job that is active and off duty.
ACTIVE_ON_DUTY
public static final int ACTIVE_ON_DUTY
Constant for a measurement job that is active and on duty.
SUSPENDED
public static final int SUSPENDED
Constant for a measurement job that is suspended.
PerformanceMonitorValueSyntaxpublic interface PerformanceMonitorValue extends java.lang.Cloneable, ManagedEntityValue241
All Known Subinterfaces: PerformanceMonitorByClassesValue55, PerformanceMonitorByObjectsValue57
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, java.io.Serializable
DescriptionThis interface is the base value representation of a measurement job.
The PerformanceMonitor manages measurement jobs. A client can create and retrieve measurement jobs indi-rectly by using the methods of an PerformanceMonitor.
A measurement job shall include:
• a granularity specifying the rate at which performance data is read (scanned). • a reporting mode indicating the manner in which clients are notified of the generation of a measu
results. • a report format indicating the format of the result reports to be generated. • a schedule specifying the schedule of the monitoring activity.
int ACTIVE_ON_DUTY79int SUSPENDED79
Member Summary
79
PerformanceMonitorValue
SUSPENDED
ata
asure- system asure-lient fre-lies.
make a cifies
port-ed
The m shall f no start active the sus-or more time
interval, record- run week. The imple-
he fol-
• a key that identify the measurement job. • a state of the measurement job.
The granularity period is the time between the initiation of two successive gatherings of measurement dwithin the timeframe specified in the scheduling attributes.
The reporting mode is used to specify the reporting method of the measurement result reports of the mement job. The reporting mode can be either file or event or both. If the reporting mode is set to event thewill emit an event that carries the measurement result reports. If the reporting mode is set to file, the mement job will capture the measurement result reports into a data storage and then emit an event to the cabout the availability of the data. The frequency of this event is determined by the data storage creationquency and can not be set by the client. If the reporting mode is set to both file and event both ways appWhen a client receives an event of data availability, the client can retrieve the data, by using the URL to connection to the system. If reporting mode is set to ReportMode.FILE_SINGEL the reporting period spehow often measurement result report will be generated.
The report format defines the format of the result reports to be generated. If the report mode is set to ReMode.FILE_MULTIPLE or EVENT_MULTIPLE the client should not set the report format, it will be assignby the server.
The measurement schedule specifies the time frames during which the measurement job will be active.measurement job is active as soon as the start time - if supplied in the schedule - is reached. The systesupport a measurement job start time of up to at least 30 days from the measurement job creation date. Itime is provided, the measurement job shall become active immediately. The measurement job remainsuntil the stop time - if supplied in the schedule - is reached. If no measurement job stop time is specifiedmeasurement job will run indefinitely and can only be stopped by system intervention, i.e. by deleting orpending the measurement job. The time frame defined by the measurement schedule may contain one recording intervals. These recording intervals may repeat on a daily and/or weekly basis and specify theperiods during which the measurement data is collected. The start time and end time define a recording which lie between 00.00 and 24.00 hours, aligned on granularity period boundaries. Thus the length of aing interval will be a multiple of the granularity period. If daily interval is omitted, the measurement job willcontinuously through the day. If weekly schedule is omitted the measurement job will run all days of the Alternatively the weekly schedule will indicate which days of the week the measurement job will be run. timer-synchronization between the client and the server is not part of this interface and is left over to thementers.
The measurement job can have several states: Active and on duty, Active but of duty and suspended. Tlowing shows how the states are changed in accordance to the schedule.
(A) Duration (A schedule represents by startTime and stopTime)
State Transition table (1), the startTime and stopTime is set
---------------------++------------------------+Time Stream || Operation |
|| ---suspend()--> ||| <--resume()---- |
---------------------++-----------+------------+1. before startTime || off-duty | suspended |---------------------++-----------+------------+<> startTime2. within schedule || on-duty | suspended |---------------------++-----------+------------+<> stopTime
State Transition table (2), the startTime is not set and the endTime is set.
80
PerformanceMonitorValue
SUSPENDED
---------------------++------------------------+Time Stream || Operation |
|| ---suspend()--> ||| <--resume()---- |
---------------------++-----------+------------+<> startTime not set1. within schedule || on-duty | suspended |---------------------++-----------+------------+<> stopTime
If startTime is not set means that monitoring will start immediately.
State Transition table (3), the startTime is set and the endTime is not set.
---------------------++------------------------+Time Stream || Operation |
|| ---suspend()--> ||| <--resume()---- |
---------------------++-----------+------------+1. before startTime || off-duty | suspended |---------------------++-----------+------------+<> startTime2. within schedule || on-duty | suspended |---------------------++-----------+------------+<> forever
(B) Daily Scheduling (Represents by HourSchedule)
The daily scheduling is set to have 4 elements, two start times and two stop times.
State Transition table (4)
---------------------++------------------------+Time Stream || Operation |
|| ---suspend()--> ||| <--resume()---- |
---------------------++-----------+------------+1. off schedule || off-duty | suspended |---------------------++-----------+------------+<> 1st element2. within schedule || on-duty | suspended |---------------------++-----------+------------+<> 2nd element3. off schedule || off-duty | suspended |---------------------++-----------+------------+<> 3rd element4. within schedule || on-duty | suspended |---------------------++-----------+------------+<> final element5. It will be back to 1. because of day-line crossing.
(C) Weekly Scheduling (Represents by WeeklySchedule)
The weekly scheduling is set to Monday and Friday and the daily scheduling is set to have 4 elements, as above.
State Transition table (5)
81
PerformanceMonitorValue
SUSPENDED
---------------------++------------------------+Time Stream || Operation |
|| ---suspend()--> ||| <--resume()---- |
---------------------++-----------+------------+1. off schedule || off-duty | suspended |
on Sunday || | |---------------------++-----------+------------+2. off schedule || off-duty | suspended |
on Monday || | |---------------------++-----------+------------+<> 1st element3. within schedule || on-duty | suspended |---------------------++-----------+------------+<> 2nd element4. off schedule || off-duty | suspended |---------------------++-----------+------------+<> 3rd element5. within schedule || on-duty | suspended |---------------------++-----------+------------+<> final element6. off schedule || off-duty | suspended |
on Monday || | |---------------------++-----------+------------+7. off schedule || off-duty | suspended |on Tuesday-Thursday || | |
---------------------++-----------+------------+8. off schedule || off-duty | suspended |
on Friday || | |---------------------++-----------+------------+<> 1st element9. within schedule || on-duty | suspended |---------------------++-----------+------------+<> 2nd element10. off schedule || off-duty | suspended |---------------------++-----------+------------+<> 3rd element11. within schedule || on-duty | suspended |---------------------++-----------+------------+<> final element12. off schedule || off-duty | suspended |
on Friday || | |---------------------++-----------+------------+13. off schedule || off-duty | suspended |on Saturday || | |
---------------------++-----------+------------+14. It will be back to 1. because of weekly-line crossing.
For example the PerformanceMonitor interface support an operations to retrieve all suspended measurement jobs and to get the all attributes of the measurement jobs. Code on the client side would look like this:
PerformanceMonitorValueIterator pmvIterator;PerformanceMonitorValue[] pmValues;pmsession = & // getting a reference to a performance monitor bean.//retrieve all suspended measurement jobs//and provide at most 10 values in the initial set.QueryPerformanceMonitorValue qpmv = pmsession.makeQueryValue(QueryPerformanceMoni
torValue.QUERY_TYPE );qpmv.setState( PerformanceMonitorState.SUSPENDED );qpmv.setPerformanceMonitorValueType( PerformanceMonitorValue.BASE_VALUE_TYPE );pmvIterator = pmsession.queryPerformanceMonitors(qpmv, null);//retrieve the 10 initial measurement jobspmValues = pmvIterator.getNext( 10 );while(pmValues.length) {
for( int I=0; I < pmValues.length; I++) {// Print the name measurement jobs.System.out.println( pmValues[I].getMeasurementName() );// Do some more...
}pmValues = pmvIterator.getNext( 10 );
}pmvIterator.remove();
Author: Stefan Ýberg
82
PerformanceMonitorValue
BASE_VALUE_TYPE
Version: 0.2, 2001-01-12
See Also: PerformanceMonitor53
Fields
BASE_VALUE_TYPE
public static final java.lang.String BASE_VALUE_TYPE
Constant that defines the base value type.
GRANULARITY_PERIOD
public static final java.lang.String GRANULARITY_PERIOD
Constant for attribute granularity period.
Member Summary
FieldsString BASE_VALUE_TYPE83String GRANULARITY_PERIOD83String MEASUREMENT_NAME84String REPORT_BY_EVENT84String REPORT_BY_FILE84String REPORT_FORMAT84String REPORTING_PERIOD84String SCHEDULE84String STATE84
Methodsint getGranularityPeriod()84
String getMeasurementName()85PerformanceMonitorKey getPerformanceMonitorKey()85
int getReportByEvent()85int getReportByFile()85
ReportFormat getReportFormat()85int getReportPeriod()85
Schedule getSchedule()85int getState()86
boolean isScheduleSet()86void setGranularityPeriod(int)86void setMeasurementName(String)86void setReportByEvent(int)86void setReportByFile(int)87void setReportFormat(ReportFormat)87void setReportPeriod(int)87void setSchedule(Schedule)88
83
PerformanceMonitorValue
MEASUREMENT_NAME
MEASUREMENT_NAME
public static final java.lang.String MEASUREMENT_NAME
Constant for attribute measurement name.
REPORT_BY_EVENT
public static final java.lang.String REPORT_BY_EVENT
Constant for attribute report by event.
REPORT_BY_FILE
public static final java.lang.String REPORT_BY_FILE
Constant for attribute report by file.
REPORT_FORMAT
public static final java.lang.String REPORT_FORMAT
Constant for attribute report format.
REPORTING_PERIOD
public static final java.lang.String REPORTING_PERIOD
Constant for attribute report period.
SCHEDULE
public static final java.lang.String SCHEDULE
Constant for attribute schedule.
STATE
public static final java.lang.String STATE
Constant for attribute performance monitor state.
Methods
getGranularityPeriod()
public int getGranularityPeriod()
Gets the granularity period of the measurement job.
Returns: int The granularity period in seconds.
84
PerformanceMonitorValue
getMeasurementName()
getMeasurementName()
public java.lang.String getMeasurementName()
Returns the name of the measurement job.
Returns: String The name of the measurement job.
getPerformanceMonitorKey()
public PerformanceMonitorKey61 getPerformanceMonitorKey()
Gets the identification key of the measurement job.
Returns: PerformanceMonitorKey The primary key of the measurement job.
getReportByEvent()
public int getReportByEvent()
Gets the event reporting mode.
Returns: int Returns the event reporting mode or ReportMode.NO_REPORT_MODE if event report mode is not set.
See Also: ReportMode99
getReportByFile()
public int getReportByFile()
Gets the file reporting mode.
Returns: int Returns the file reporting mode or ReportMode.NO_REPORT_MODE if file report mode is not set.
See Also: ReportMode99
getReportFormat()
public ReportFormat93 getReportFormat()
Gets the report format of the measurement job.
Returns: ReportFormat The report format of the measurement job.
getReportPeriod()
public int getReportPeriod()
Returns the reporting period for result report of the measurement job.
Returns: int Reporting period in number of granularity periods.
getSchedule()
public Schedule171 getSchedule()
85
PerformanceMonitorValue
getState()
Returns the schedule of the measurement job.
Returns: Date Schedule of the measurement job.
getState()
public int getState()
Gets the state of the measurement job.
Returns: int The state of the measurement job.
See Also: PerformanceMonitorState78
isScheduleSet()
public boolean isScheduleSet()
Indicate if the measurement job has a schedule.
Returns: boolean Returns true if the measurement job has a schedule, else it returns false.
setGranularityPeriod(int)
public void setGranularityPeriod(int granularityPeriod)
Sets the granularity period for the measurement job.
The granularity period is the time between the initiation of two successive gatherings of measurement data,within the timeframe specified in the measurement scheduling. Examples of granularity period can be 5minutes, 15 minutes, 30 minutes, 1 hour. The granularity period of 5 minutes is used in most cases, but forsome measurements it may only make sense to collect data in a larger granularity period.
The granularity period will be validated when the value object is passed to the performance monitor bean.
The granularity period is specified in seconds.
Parameters:granularityPeriod - The granularity period, in seconds, of the measurement job.
setMeasurementName(String)
public void setMeasurementName(java.lang.String name)
Sets the name of the measurement job.
The measurement name will be validated when the value object is passed to the performance monitor bean.It is optional to set the name.
Parameters:name - The name of the measurement job.
setReportByEvent(int)
public void setReportByEvent(int reportMode)
throws IllegalArgumentException
Sets the event reporting mode.
86
PerformanceMonitorValue
setReportByFile(int)
If the reporting mode is set to event the system will emit a event that carries the measurement result reports.
Parameters:reportMode - The event reporting mode.
Throws:IllegalArgumentException - Is raised if the reporting mode is not a event reporting mode.
See Also: ReportMode99
setReportByFile(int)
public void setReportByFile(int reportMode)
throws IllegalArgumentException
Sets the file reporting mode.
If the reporting mode is set to file, the measurement job will capture the measurement result reports into adata storage and then emit an event to the client about the availability of the data. The frequency of thisevent is determined by the data storage creation frequency and can not be set by the client. When the clientreceives the event of data availability, the client can retrieve the data, by using the URL to make a connec-tion to the system.
Parameters:reportMode - The file reporting mode.
Throws:IllegalArgumentException - Is raised if the reporting mode is not a file reporting mode.
See Also: ReportMode99
setReportFormat(ReportFormat)
public void setReportFormat(ReportFormat93 format)
Sets the report format of the measurement job.
The report format defines the format of the result reports to be generated. If the report mode is set toReportMode.FILE_MULTIPLE or EVENT_MULTIPLE the client should not set the report format.
Parameters:format - Report format of the measurement job.
setReportPeriod(int)
public void setReportPeriod(int period)
throws IllegalArgumentException
Sets the reporting period of result report of the measurement job.
The reporting period specifies how often measurement result report will be generated and is valid if report-ing mode is set to ReportMode.FILE_SINGEL.
With the reporting mode set to ReportMode.FILE_SINGEL, the reporting period is the number of granular-ity periods between the initiation of two successive result report generation. The result report shall includeall data that have been collected since the last result report generation.
87
PerformanceMonitorValueIterator
setSchedule(Schedule)
If the report period is not set, a value equal to the granularity period of the measurement job is used. Ifreporting period is set to zero and report mode is set only to ReportMode.FILE_SINGEL no reports will begenerated.
Parameters:period - Reporting period in number of granularity periods.
Throws:IllegalArgumentException - Is raised if report period is less then zero (0).
See Also: ReportMode99
setSchedule(Schedule)
public void setSchedule(Schedule171 schedule)
Sets the schedule of the measurement job.
The measurement schedule specifies the time frames during which the measurement job will be active. Themeasurement job is active as soon as the start time - if set - is reached. If no start time is provided, the mea-surement job shall become active immediately. The measurement job remains active until the stop time - ifset - is reached. If no stop time is specified the measurement job will run indefinitely and can only bestopped by system intervention, i.e. by deleting or suspending the measurement job. The time framedefined by the measurement schedule may contain one or more recording intervals. These recording inter-vals may repeat on weekly basis. If weekly schedule is omitted the measurement job will run all days of theweek. Alternatively the weekly schedule will indicate which days of the week the measurement job will berun. The daily schedule of the measurement schedule specifies the time frames during the day which themeasurement job will be active. The time frame defined by the measurement schedule may contain one ormore recording intervals. These recording intervals specify the time periods during which the measurementdata is collected. The start time and end time define a recording interval, which lie between 00.00 and 24.00hours, aligned on granularity period boundaries. Thus the length of a recording interval will be a multipleof the granularity period. If daily interval is omitted, the measurement job will run continuously through theday.
Parameters:schedule - Schedule of the measurement job.
PerformanceMonitorValueIteratorSyntaxpublic interface PerformanceMonitorValueIterator extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface manages retrieval of multiple measurement jobs.
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive batches of results in sizes determined by the client. The iterator keeps track of how far through the results the client has progressed.
88
PerformanceMonitorValueIterator
getNext(int)
tion can
umber
The semantic of the iterator is that it is returning a snapshot of the data matching the query expression at the moment the query was performed. If the underlying data are modified while the iteration is in progress, it will not affect the behavior of the iterator or the data values of the iterator.
For example the PerformanceMonitor interface support an operation to retrieve all supported measurement jobs with a specific state. Code on the client side would look like this:
PerformanceMonitorValueIterator pmvIterator;PerformanceMonitorValue[] pmvs; // Performance monitor listpmsession = & // getting a reference to a performance monitor bean.//retrieve all suspended measurement jobs//and provide at most 10 values in the initial set.pmvIterator = pmsession.getPerformanceMonitors(null, PerformanceMonitorState.SUSP
ENDED, null);//retrieve the 10 initial measurement jobspmvs = pmvIterator.getNext( 10 );while(pmvs.length) {
for( int I=0; I < pmvs.length; I++) {// Resume the measurement jobs.pmsession.resume( pmvs[I].getPerformanceMonitorKey() );
}pmvs = pmvIterator.getNext( 10 );
}pmvIterator.remove();
Author: Stefan Ýberg
Version: 0.3, 2001-02-06
Methods
getNext(int)
public PerformanceMonitorValue79[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of measurement jobs.
The function takes one argument that specifies the most number of items to return. The implementadecide to return less or the requested number of items.
If zero is specified and empty list is returned.
If the iteration is empty or has reached then end, null is returned.
If the argument is greater than the number of item in the iterator then all or implementation decided nof items are returned.
Member Summary
MethodsPerformanceMonitor-
Value[]
getNext(int)89
void remove()90
89
PerformanceAttributeDescriptor
remove()
riod of ach mea-collected
ates);
If the agreement plus the cursor of the iterator is greater than the number of item in the iterator, all or imple-mentation decided number of items from the cursor to the end is returned.
Parameters:how_many - Maximum of items to return, the implementation can decide to return less.
Returns: PerformanceMonitorValue[] List of measurement jobs.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the iterator.
When the client has finished iterating through the collection, he shall call this operation to allow resourcesto be freed.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
javax.ejb.RemoveException - Is raised if the implementation is an EJB and removal of the EJB could not be done.
PerformanceAttributeDescriptorSyntaxpublic interface PerformanceAttributeDescriptor extends java.io.Serializable,
java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionRepresent a measurement attribute that can be monitored in the observable object class.
The measurement attribute name is short form of the measurement name and it is used to identify the measure-ment attribute in the measurement result reports.
The type of the measurement can be:
• Integer • Real • String
Each measurement job will be collecting result data at a particular frequency, known as the granularity pethe measurement. At the end of the granularity period a scheduled result report shall be generated for esurement job that is actively collecting performance measurement data. The measurement data can be in a number of ways:
• cumulative incremental counters triggered by the occurrence of the measured event; • status inspection (i.e. a mechanism for high frequency sampling of internal counters at pre-defined r• gauges (i.e. high tide mark, low tide mark); • discrete event registration, where data related to a particular event is captured.
90
PerformanceAttributeDescriptor
CUMULATIVE_COUNTER
lue (usu-
e valueistrationesult at
• time ticks, ???
Author: Stefan Ýberg
Version: 0.3, 2001-03-06
Fields
CUMULATIVE_COUNTER
public static final java.lang.String CUMULATIVE_COUNTER
The node maintains a running count of the event being counted. The counter is reset to a defined vaally “0”) at the beginning of the granularity period.
DISCRETE_EVENT_REGISTRATION
public static final java.lang.String DISCRETE_EVENT_REGISTRATION
This is a measurement of a specified event where every Nth event would be taken into account. Thof N is dependent on the frequency of occurrence of the event being measured. Discrete event regmeasurements shall be reset at the beginning of the granularity period and will only have a valid rthe end of the granularity period.
GAUGE
public static final java.lang.String GAUGE
Member Summary
FieldsString CUMULATIVE_COUNTER91String DISCRETE_EVENT_REGISTRATION91String GAUGE91
int INTEGER92int REAL92
String STATUS_INSPECTION92int STRING92
String TIME_TICKS92
MethodsString getCollectionMethod()92String getName()93
int getType()93boolean isArray()93
void setName(String)93void setType(int)93
91
PerformanceAttributeDescriptor
INTEGER
Gauges represent dynamic variables that may change in either direction. Gauges can be integer or real val-ued. If a gauge is required to produce low and high tide marks for a granularity period (e.g. minimum andmaximum call duration), then it shall be reinitialized at the beginning of the granularity period. If a gauge isrequired to produce a consecutive readout over multiple granularity periods (e.g. cabinet temperature), thenit shall only be reinitialized at the start of a recording interval.
INTEGER
public static final int INTEGER
Constant that indicates if the attribute is of integer type.
REAL
public static final int REAL
Constant that indicates if the attribute is of real type.
STATUS_INSPECTION
public static final java.lang.String STATUS_INSPECTION
Nodes maintain internal counts for resource management purposes. These counts are read at a predeter-mined rate, the rate is usually based upon the expected rate of change of the count value. Status inspectionmeasurements shall be reset at the beginning of the granularity period and will only have a valid result atthe end of the granularity period.
STRING
public static final int STRING
Constant that indicates if the attribute is of string type.
TIME_TICKS
public static final java.lang.String TIME_TICKS
???
Methods
getCollectionMethod()
public java.lang.String getCollectionMethod()
Returns the collection method.
Returns: String Returns the collection method.
92
ReportFormat
getName()
getName()
public java.lang.String getName()
Returns the performance attribute name.
Returns: String The name of the attribute.
getType()
public int getType()
Returns the type of attribute.
Returns: int Returns the id of type.
isArray()
public boolean isArray()
Checks if the attribute is an array.
Returns: boolean Returns true if the attribute is an array.
setName(String)
public void setName(java.lang.String name)
Sets the performance attribute name.
Parameters:name - The name of the attribute.
setType(int)
public void setType(int type)
Sets the type of attribute.
Valid values are:
• PerformanceAttributeDescriptor.INTEGER • PerformanceAttributeDescriptor.REAL • PerformanceAttributeDescriptor.STRING
Parameters:type - The id of type.
ReportFormatSyntaxpublic interface ReportFormat extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
93
ReportFormat
ASCII
DescriptionThis interface represent the format of the measurements reports.
Author: Stefan Ýberg
Version: 0.4, 2000-03-06
Fields
ASCII
public static final int ASCII
Constant that indicate if the report format is of ASCII type.
ASN1
public static final int ASN1
Constant that indicate if the report format is of ASN1 type.
BINARY
public static final int BINARY
Constant that indicate if the report format is of BINARY type.
XML
public static final int XML
Constant that indicate if the report format is of XML type.
Member Summary
Fieldsint ASCII94int ASN194int BINARY94int XML94
MethodsString getOwner()95String getSpecification()95String getTechnology()95
int getType()95String getVersion()96
94
ReportFormat
getOwner()
at. Forata-
erfor-
at. Fors.
s.
Methods
getOwner()
public java.lang.String getOwner()
Get the vendor name or the organization that have defined the format.
Returns the vendor name or organization name of the report format. For example: if the report format is3GPP XML or ANS1 format this operation should return “3GPP”.
Returns: String The name of the Owner of the report format.
getSpecification()
public java.lang.String getSpecification()
Returns information about the specification of the report format.
This operation shall allow the client to get more detailed information on how to parse the report formexample this operation should return “DOCTYPE MeasDataCollection SYSTEM MeasDCollection.dtd” if the report format is according to 3GPP XML format, see 3GPP TS 32.104: “3G Pmance Management (PM)”, R99
If no applicable information is available, then an empty string should be returned.
Returns: String Information on how to parse the report format.
getTechnology()
public java.lang.String getTechnology()
Gets the technology area that this report format is used for.
This operation indicates the technology area of the nodes in a measurement report of this report formexample the operation should return “3G” for 3rd generation networks and “ATM” for a ATM network
The operation can return an empty string if the report format is applicable for many technology area
Returns: String The name of the technology.
getType()
public int getType()
Gets the report format type.
The type of the report format can have one of the following values:
• XML • ASN1 • ASCII • BINARY
Returns: int The report format type.
95
ReportInfo
getVersion()
moved
menta-
getVersion()
public java.lang.String getVersion()
Get the report format version.
Returns: String The version of the report format.
ReportInfoSyntaxpublic interface ReportInfo extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionContains information related to a measurement report file.
Author: Stefan Ýberg
Version: 0.3, 2000-02-06
Methods
getExpirationDate()
public java.util.Calendar getExpirationDate()
Gets the expiration date of the measurement report.
When the expiration date of the measurement report occurs, the measurement report file will be refrom the performance monitor agent.
If null is return, no expiration date exist for the measurement report and the retention period is impletion dependent.
Returns: Date Expiration date of the measurement report.
Member Summary
MethodsCalendar getExpirationDate()96
ReportFormat getReportFormat()97URL getURL()97
96
ReportInfoIterator
getReportFormat()
getReportFormat()
public ReportFormat93 getReportFormat()
Returns the report format of the measurement report.
Returns: ReportFormat The report format of the measurement report.
getURL()
public java.net.URL getURL()
Returns a pointer (URL) to the measurement report.
Returns: URL Reference to the measurement report.
ReportInfoIteratorSyntaxpublic interface ReportInfoIterator extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface manages retrieval of information for multiple measurement reports.
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive batches of results in sizes determined by the client. The iterator keeps track of how far through the results the client has progressed.
The semantic of the iterator is that it is returning a snapshot of the data matching the query expression at the moment the query was performed. If the underlying data are modified while the iteration is in progress, it will not affect the behavior of the iterator or the data values of the iterator.
The report information that is contained in this iterator must be sorted on report data creation date. If the report data is stored in files, the oldest file shall be returned first by the iterator.
For example the PerformanceMonitor interface support an operation to retrieve information of all measurement result files. Code on the client side would look like this:
97
ReportInfoIterator
getNext(int)
tion can
umber
imple-
ReportInfoIterator riIterator;ReportInfo[] ris; // Measurement report file information listInputStream stream;pmsession = & // getting a reference to a performance monitor bean.//retrieve information of all measurement reports//and provide at most 10 values in the initial set.riIterator = pmsession.getPerformanceReportIds(null, null);//retrieve the 10 initial report keysris = riIterator.getNext( 10 );while(ris.length) {
for( int I=0; I < ris.length; I++) {// Open the steam and get the data.stream=ris[I].openstream();// read the data..// close the streamstream.close();
}ris = riIterator.getNext( 10 );
}riIterator.remove();
Author: Stefan Ýberg
Version: 0.3, 2001-02-06
Methods
getNext(int)
public ReportInfo96[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of measurement report information.
The function takes one argument that specifies the most number of items to return. The implementadecide to return less or the requested number of items.
If zero is specified and empty list is returned.
If the iteration is empty or has reached then end, null is returned.
If the argument is greater than the number of item in the iterator then all or implementation decided nof items are returned.
If the agreement plus the cursor of the iterator is greater than the number of item in the iterator, all ormentation decided number of items from the cursor to the end is returned.
Member Summary
MethodsReportInfo[] getNext(int)98
void remove()99
98
ReportMode
remove()
set to et to
an event ge cre-ing the
Parameters:how_many - Maximum of items to return, the implementation can decide to return less.
Returns: ReportInfo[] List of measurement report keys.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurrs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the iterator.
When the client has finished iterating through the collection, he shall call this operation to allow resourcesto be freed.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
javax.ejb.RemoveException - Is raised if the implementation is an EJB and removal of the EJB could not be done.
ReportModeSyntaxpublic interface ReportMode
DescriptionDefines enumeration values for report mode.
The report mode for the measurement results can be done in four different ways. The following report modes exists:
• event per measurement job. • event for multiple measurement jobs. • report file per measurement job. • report file for multiple measurement jobs.
The report mode can be divided into two major categories: by event and by file. If the reporting mode is event the system will emit an event that carries the measurement result report. If the reporting mode is sfile, the measurement job will capture the measurement result reports into a data storage and then emit to the client about the availability of the data. The frequency of this event is determined by the data storaation frequency. When a client receives an event of data availability, the client can retrieve the data, by usURL to connect to the system.
Author: Stefan Ýberg
Version: 0.1, 2001-02-06
See Also: PerformanceMonitorValue79
99
QueryPerformanceMonitorValue
EVENT_MULTIPLE
Fields
EVENT_MULTIPLE
public static final int EVENT_MULTIPLE
Constant for report mode of event for multiple measurement jobs.
EVENT_SINGEL
public static final int EVENT_SINGEL
Constant for report mode of event per measurement job.
FILE_MULTIPLE
public static final int FILE_MULTIPLE
Constant for report mode of report file for multiple measurement jobs.
FILE_SINGEL
public static final int FILE_SINGEL
Constant for report mode of report file per measurement job.
NO_REPORT_MODE
public static final int NO_REPORT_MODE
Constant for no report mode defined.
QueryPerformanceMonitorValueSyntaxpublic interface QueryPerformanceMonitorValue extends QueryValue244
Member Summary
Fieldsint EVENT_MULTIPLE100int EVENT_SINGEL100int FILE_MULTIPLE100int FILE_SINGEL100int NO_REPORT_MODE100
100
QueryPerformanceMonitorValue
QUERY_TYPE
All Known Subinterfaces: QueryByDNValue103
All Superinterfaces: java.lang.Cloneable, QueryValue244, java.io.Serializable
DescriptionThis interface represents the attributes of a measurement job that can be used to make queries for measurement jobs.
The attributes will be used to filter out the measurement jobs that match the values of the attributes. The attributes are concatenated using logical AND-operation.
Author: Stefan Ýberg
Version: 0.1, 2001-02-08
Fields
QUERY_TYPE
public static final java.lang.String QUERY_TYPE
Constant that defines string representation of the query type.
Member Summary
FieldsString QUERY_TYPE101
Methodsint getGranularityPeriod()102
String getMeasurementName()102String getPerformanceMonitorValueType()102
int getState()102boolean isGranularityPeriodSet()102boolean isMeasurementNameSet()102boolean isStateSet()102
void setGranularityPeriod(int)103void setMeasurementName(String)103void setPerformanceMonitorValueType(String)103void setState(int)103
101
QueryPerformanceMonitorValue
getGranularityPeriod()
Methods
getGranularityPeriod()
public int getGranularityPeriod()
Gets the query value of the measurement job granularity period.
Returns: int The granularity period in seconds.
getMeasurementName()
public java.lang.String getMeasurementName()
Returns the query value of the measurement job name.
Returns: String The query value of the measurement job name.
getPerformanceMonitorValueType()
public java.lang.String getPerformanceMonitorValueType()
Gets the query value of the measurement job value type.
Returns: String The query value of the measurement job value type.
getState()
public int getState()
Gets the query value of the measurement job state.
Returns: int The query value of the measurement job state.
See Also: PerformanceMonitorState78
isGranularityPeriodSet()
public boolean isGranularityPeriodSet()
Returns true if query value the measurement job granularity period is set.
Returns: boolean Returns true if the query value is set, else false.
isMeasurementNameSet()
public boolean isMeasurementNameSet()
Returns true if query value the measurement job name is set.
Returns: boolean Returns true if the query value is set, else false.
isStateSet()
public boolean isStateSet()
102
QueryByDNValue
setGranularityPeriod(int)
Returns true if query value the measurement job state is set.
Returns: boolean Returns true if the query value is set, else false.
setGranularityPeriod(int)
public void setGranularityPeriod(int granularityPeriod)
Sets the query value of the measurement job granularity period.
The granularity period is specified in seconds.
Parameters:granularityPeriod - The query value of the measurement job granularity period.
setMeasurementName(String)
public void setMeasurementName(java.lang.String name)
Sets the query value of the measurement job name.
The measurement job name can include a wild card (“*”) in the end of the name.
Parameters:name - The query value of the measurement job name.
setPerformanceMonitorValueType(String)
public void setPerformanceMonitorValueType(java.lang.String type)
Sets the query value of the measurement job value type.
The measurement job value type can be a base type of the requested measurement jobs.
Parameters:type - The query value of the measurement job value type.
setState(int)
public void setState(int state)
Sets the query value of the measurement job state.
Parameters:state - The query value of the measurement job state.
See Also: PerformanceMonitorState78
QueryByDNValueSyntaxpublic interface QueryByDNValue extends QueryPerformanceMonitorValue100
All Superinterfaces: java.lang.Cloneable, QueryPerformanceMonitorValue100, QueryValue244, java.io.Serializable
103
QueryByDNValue
getDistinguishedNames()
job. The
DescriptionThis interface is used to query for measurement jobs by specifying distinguished names.
The distinguished names will be used to filter out the measurement jobs that match the values of the DN and other provided attributes. The attributes are concatenated using logical AND-operation.
This query value is only applicable on measurement jobs of the “PerformanceMonitorByObjectValue”.
Author: Stefan Ýberg
Version: 0.1, 2001-02-08
Methods
getDistinguishedNames()
public java.lang.String[] getDistinguishedNames()
Returns the query value of the distinguished names.
Returns: String[] List of distinguished names.
setDistinguishedNames(String[])
public void setDistinguishedNames(java.lang.String[] names)
Sets the query value of the distinguished names.
The distinguished names will be checked with each observable object instance of all measurement DNs can be fully qualified DNs or start of a DN.
Parameters:name - The query value of the measurement job name.
Member Summary
MethodsString[] getDistinguishedNames()104
void setDistinguishedNames(String[])104
104
onitor nfigu-
nforma-ociated
hese
s a sys-
figura-
its con-first tions reshold nt data
n its sys-the sys-
y the all , all e mon-ed by
C H A P T E R 9Package
javax.oss.pm.thresholdDescription
Package javax.oss.pm.threshold Description This package describes a mechanism that allows a system to monitor measurement data for threshold crossings and to generate alarms when these crossings are detected. This mechanism is known as a “threshold mjob”. A job embodies a client’s request for a threshold monitoring construct. These jobs contain all the coration information needed for the system to establish threshold monitoring on measurement data. This ition includes the identification of the measurement data, the threshold criteria, and all configurations asswith the monitoring and alarming aspects of the job.
These jobs are administered through a collection of operations provided by a threshold monitor agent. Toperations perform the following administrative duties:
• The ability to create, delete, resume and suspend a threshold monitor job, • The ability to retrieve threshold monitor jobs by their keys, • The ability to query threshold monitor jobs, • The ability to discover system performance measurements via a discovery mechanism that expose
tem’s observable objects, • The ability to determine the supported granularities of a system based on a threshold monitor job con
tion, and finally • The ability to execute bulk operations.
Create, delete, suspend, and resume a threshold monitor jobThis package supports the creation of a threshold monitor job. This quantity must be created with all of figuration information supplied at creation time. In order to create a threshold monitor job, a client must populate an empty job structure with his threshold configuration requirements. All configuration modificamust be applied to this structure prior to the execution of the creation operation since set operations on thmonitor jobs are not supported. Once the job is created, it will immediately begin monitoring measuremeaccording to its schedule.
A threshold job instance is automatically deleted by the system when it reaches the end time specified imonitoring schedule. If no end time is specified, it will continue to run until it is manually deleted from thetem. These jobs can be manually deleted from the system at any time. Once a threshold job is deleted, tem is free to terminate all monitoring processes associated with the job.
During normal operation, the system will monitor measurement data according to the criteria specified bthreshold monitor job. However, at some point, a system operator may decide to temporarily “suspend” monitoring activity due to system overload, congestion, or some other condition. During this time periodmonitoring activities will be put on hold (suspended) and no threshold alarms will be generated. Once thitoring processes have been reactivated, all monitoring will resume at the next granularity period specifithe threshold jobs.
105
javax.oss.pm.threshold
three second hed d for an
e system d con-ism
ve) on ation. its and d roll-letion ndition
itoring ow:
Retrieve threshold monitor jobs using keysAt any point in time, a user of the package can retrieve one or more threshold monitor jobs that are defined in the system by specifiying their keys. The retrieved threshold monitor jobs contain all of their original configura-tion information as well as the state of the monitoring activity at the time of the retrieval.
Retrieve threshold monitor jobs using a query mechanismThe query mechanism supplied by the monitor agent allows the client to retrieve threshold monitor jobs by sup-plying a query value. The API mandates a query value that supports the retrieval of threshold jobs by specifying an observable object list or a state. Vendor extensions may choose to supply additional query values.
Discover supported performance measurementsThe discovery mechanism to determine a system’s monitorable performance measurements comprisesoperations. The first one returns all the observed object classes supported by the monitoring agent. Theone returns the observable object instances of a specific object class that are located below a distinguisname. The third one returns meta-data describing the performance measurements that can be monitoreobservable object class.
Determine supported system granularities based on a threshold monitor job configuration The package provides a mechanism that enables a client to determine the granularities supported by thfor a given threshold monitor job configuration. The client first populates a job structure with his thresholfiguration requirements minus the granularity value. The client then passes this structure to the mechanwhich returns a list of granularities supported for that job configuration.
Execute bulk operationsThe package provides for the ability to perform operations (create, remove, suspend, resume and retriemultiple threshold monitor jobs using a single command. This type of activity is classified as a bulk operAll bulk operations use a best effort strategy. This strategy allows the jobs to be treated as individual unnot as a set. This means that a failure involving one of the jobs does not cause the operation to abort anback the successful jobs. A result from the bulk operation will be returned to the client following the compof the operation. The result will contain a list of keys and statuses. Each status indicates a pass or fail cofor each job supplied. Failed job operations will also return text describing the reason for the failure.
Package interfacesThe threshold monitor package consists of four types of interfaces:
• EJB interfaces • Value Object interfaces • Event interfaces • Utility interfaces
EJB interfacesThe EJB interfaces are the main interfaces of the package and are the client’s view of the threshold monagent’s monitoring capabilities as described above. The interfaces are pictured in the diagram listed bel
106
javax.oss.pm.threshold
A more detailed view of the business interface, ThresholdMonitorMethods, is shown in the diagram below:
107
javax.oss.pm.threshold
r job nitor ms,
its
Value Object interfacesThe Value Object interface is a well known enterprise design pattern that is used to encapsulate business data. One reason to use this pattern is to reduce the number of remote invocations needed to access this data. The value object interface in the context of this package encapsulates a client’s view of the threshold monitoquantity and is used by the client when defining and retrieving information associated with threshold mojobs. The diagram below shows a hierarchy of threshold monitor value interfaces. In the following diagrathese interfaces are shown with the stereotype of “type” in order to provide a clearer specification of theassociated behaviors. No actual implementation of state data exists.
108
javax.oss.pm.threshold
The above diagram displays value objects that represent two types of threshold monitor jobs, the Simple-ThresholdMonitorValue and the ComplexThresholdMonitorValue. The SimpleThresholdMonitorValue moni-tors a measurement of a single observable object instance for threshold crossings and will generate an alarm when a crossing is detected. This threshold monitor job is currently the only one mandated by the API. For a view of the complete structure, see the first diagram below. The ComplexThresholdMonitorValue is an example of a vendor specific extension. It represents a complex job with the capability of monitoring multiple observable object measurements for threshold crossings and generating alarms based on criteria specified by a trigger rule.
109
javax.oss.pm.threshold
This example is included to illustrate how vendor specific extensions can be applied to the QoS API. For a view of the complete structure, see the second diagram below.
110
javax.oss.pm.threshold
Event interfacesThe event interfaces provide a client with mechanisms to access threshold monitor job alarm information and to discover the filterable properties of threshold alarm events. These interfaces are realized by events that are transported to the client via JMS. The event interfaces associated with this package are shown below (See Pack-age javax.oss.fm.monitor for more details).
111
javax.oss.pm.threshold
Utility interfacesThe utility interfaces are used by the client to access and construct threshold monitor job information. These interfaces are shown in the following two diagrams displayed below. The first diagram shows interfaces that are used to describe the threshold monitor job quantity. The second diagram shows interfaces that are used by query and discovery mechanisms described earlier in this package.
112
javax.oss.pm.threshold
113
javax.oss.pm.threshold
Related DocumentationThe following external documents are applicable for the specification:
• 3GPP TS 32.104: 3G Performance Management (PM), R99
Class Summary
Interfaces
AlarmConfig115 The AlarmConfig interface represents the configuration information for an alarm that is generated by a threshold monitor job following a threshold violation.
ComplexThresholdMonitorValue118
The ComplexThresholdMonitorValue represents a configuration of a complex thresh-old monitor job quantity that generates an alarm based on the threshold crossing states of a group attibutes from observable objects of the same or different classes.
QueryBySimpleThresAttributesValue122
The QuerySimpleThresAttributesValue interface gives clients the capability to query on the one or more of the following simple threshold monitoring attributes: state, gran-ularity, job name, alarm configuration, a list of threshold definitions, and a list of observable object distinguished names.
QueryMonitorValue124 The QueryMonitorValue interface represents a query value that allows clients to query monitor jobs by one or more of the following basic monitoring attributes: state, granu-larity, and job name.
SimpleThresholdMonitorValue127
The SimpleThresholdMonitorValue represents the configuration of a simple threshold monitor job that monitors threshold states on attributes of the same attribute type and generates an alarm when a threshold crossing is detected.
114
AlarmConfig
ing the
caus-
nts
n of
est y.
r
d
AlarmConfigSyntaxpublic interface AlarmConfig extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionThe AlarmConfig interface represents the configuration information for an alarm that is generated by a thresh-old monitor job following a threshold violation. This information is specified by interfaces in the javax.oss.fm.monitor package and includes the following parameters:
• an event type representing the classification of the event. • a perceived severity indicating the level of urgency associated with the alarm. • a probable cause providing more information than the event type on the nature of the problem caus
alarm. • a specific problem type providing more information than probable cause on the nature of the problem
ing the alarm.
ThresholdDefinition130 The Threshold Definition interface provides a mechanism for the configuration of the parameters that specify the criteria that determines the setting and the clearing of threshold crossing states (threshold crossed and threshold cleared).
ThresholdDirection133 The Threshold Direction interface represents the constants associated with the direc-tion of a threshold.
ThresholdMonitor134 A ThresholdMonitor represents the system’s ability to monitor thresholds on elemein the network and produce alarms triggered by threshold values.
ThresholdMonitorHome135
The ThresholdMonitorHome is an interface that serves as a factory for the creatioenterprise beans that provide management services to threshold monitor jobs.
ThresholdMonitorKey136 The ThresholdMonitorKey defines an interface for a primary key that identifies thethreshold monitor job.
ThresholdMonitorKeyResult137
The ThresholdMonitorKeyResult defines an interface that specifies the result of a beffort operation with respect to specific threshold monitor job represented by its ke
ThresholdMonitorMethods139
The ThresholdMonitorMethods interface defines the business services provided fothreshold monitoring jobs.
ThresholdMonitorState151
Defines constants that represent the operational states associated with a thresholmonitor job.
ThresholdMonitorValue152
Represents the base level configuration associated with a threshold monitor job.
ThresholdMonitorValueIterator156
This interface manages the retrieval of multiple threshold monitor jobs.
TriggerRule158 The TriggerRule interface provides a mechanism for the configuration of rules thatoperate on the set of monitored components specified in a threshold monitor job.
Class Summary
115
AlarmConfig
DEFAULT_ALARM_TYPE
Alarm-
r thresh-
The constants that represent the possible values of attributes found in the alarm configuration are defined in interfaces specified in javax.oss.fm.monitor directory.
Author: Audrey Ward
Version: 0.6, 2001-01-17
See Also: AlarmType202, PerceivedSeverity212, ProbableCause213
Fields
DEFAULT_ALARM_TYPE
public static final java.lang.String DEFAULT_ALARM_TYPE
Represents the default alarm type which represents a quality of service alarm. The value is “Type.QUALITY_OF_SERVICE_ALARM”.
Methods
getAlarmType()
public java.lang.String getAlarmType()
Gets the event type associated with the alarm. Provides an event classification. The default value foold alarms is “qos alarm”.
Returns: String The alarm type associated with the alarm.
See Also: AlarmType202
Member Summary
FieldsString DEFAULT_ALARM_TYPE116
MethodsString getAlarmType()116short getPerceivedSeverity()117short getProbableCause()117
String getSpecificProblem()117void setAlarmType(String)117void setPerceivedSeverity(short)117void setProbableCause(short)117void setSpecificProblem(String)118
116
AlarmConfig
getPerceivedSeverity()
getPerceivedSeverity()
public short getPerceivedSeverity()
Gets the perceived level of urgency associated with the alarm.
Returns: short Returns a value that represents the severity level associated with an alarm.
See Also: PerceivedSeverity212
getProbableCause()
public short getProbableCause()
Gets the probable cause associated with the alarm. Provides more detail than event type.
Returns: short Returns a value that represents the probable cause of the alarm.
See Also: ProbableCause213
getSpecificProblem()
public java.lang.String getSpecificProblem()
Gets the specific problem associated with the alarm. Provides more detail than probable cause.
Returns: String Returns a value that represents the specific problem.
setAlarmType(String)
public void setAlarmType(java.lang.String eventType)
Sets the event type associated with the alarm. Provides an event classification. The setting of this parameteris optional. The default value for threshold alarms represents a Quality of Service Alarm.
Parameters:eventType - A string representing the alarm type.
See Also: AlarmType202
setPerceivedSeverity(short)
public void setPerceivedSeverity(short severity)
Sets the perceived level of urgency associated with the alarm. The setting of this parameter is mandatory.
Parameters:severity - A representation of the severity level associated with an alarm.
See Also: PerceivedSeverity212
setProbableCause(short)
public void setProbableCause(short cause)
Sets the probable cause associated with the alarm. Provides more detail than event type. The setting of thisparameter is optional.
117
ComplexThresholdMonitorValue
setSpecificProblem(String)
red for
g job
ermine
erv-. This
Parameters:cause - A representation of the probable cause associated with an alarm.
See Also: ProbableCause213
setSpecificProblem(String)
public void setSpecificProblem(java.lang.String problem)
Sets the specific problem associated with the alarm. Provides more detail than probable cause. The settingof this parameter is optional.
Parameters:problem - A string representation of the specific problem associated with the alarm.
ComplexThresholdMonitorValueSyntaxpublic interface ComplexThresholdMonitorValue extends ThresholdMonitorValue152
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, java.io.Serializable, ThresholdMonitorValue152
DescriptionThe ComplexThresholdMonitorValue represents a configuration of a complex threshold monitor job quantity that generates an alarm based on the threshold crossing states of a group attibutes from observable objects of the same or different classes. Each attribute has its own threshold definition and is associated with a specific observable object instance. An alarm is generated when the criteria defined in the trigger rule is satisfied. The implementation of this interface is optional. It is included to illustrate how the threshold monitor package of the QoS API could be extended.
This interface extends the ThresholdMonitorValue by specifying:
• a string array of distinguished names that identify the observable object instances that will be monitothreshold crossings.
• an array of threshold definitions. • an alarm configuration specifying the configuration of the alarm that is generated by the monitorin
when an alarm condition exists. • a trigger rule specifying the criteria that the monitoring job applies to its threshold components to det
if an alarm condition exists. A complex threshold monitoring job monitors threshold crossings on multiple attribute values. Every obsable object is assoicated with a threshold definition that identifies the attribute and the threshold criteriarelationship is managed by array position: String[0] goes with ThresholdDefintion[0], String[1] goes withThresholdDefintion[1], String[2] goes with ThresholdDefintion[2], etc.
Author: Audrey Ward
Version: 0.6, 2001-03-07
118
ComplexThresholdMonitorValue
ALARM_CONFIG
See Also: ThresholdMonitorValue152
Fields
ALARM_CONFIG
public static final java.lang.String ALARM_CONFIG
DEFINITIONS
public static final java.lang.String DEFINITIONS
OBSERVABLE_OBJECTS
public static final java.lang.String OBSERVABLE_OBJECTS
Constants required by Value Object pattern to allow for the selective retrieval of value attributes.
TRIGGER_RULES
public static final java.lang.String TRIGGER_RULES
Methods
getAlarmConfig()
public AlarmConfig115 getAlarmConfig()
Member Summary
FieldsString ALARM_CONFIG119String DEFINITIONS119String OBSERVABLE_OBJECTS119String TRIGGER_RULES119
MethodsAlarmConfig getAlarmConfig()119
String[] getObservableObjects()120ThresholdDefinition[] getThresholdDefinitions()120
TriggerRule getTriggerRule()120void setAlarmConfig(AlarmConfig)120void setObservableObjects(String[])121void setThresholdDefinitions(ThresholdDefinition[])121void setTriggerRule(TriggerRule)121
119
ComplexThresholdMonitorValue
getObservableObjects()
criteria
itored.
o deter-
ermine
viola-
ean.
d
Gets the configuration of the alarm that will be generated by the threshold monitor job for a threshold viola-tion.
Returns: AlarmConfig Returns an interface representing the alarm configuration associated with the threshold monitor job’s alarm.
See Also: AlarmConfig115
getObservableObjects()
public java.lang.String[] getObservableObjects()
Sets the array of observable object instances that will be monitored for threshold crossings based ondefined in a corresponding threshold definition.
Returns: String [] Returns a string [] containing the distinguished names of the observable object instances whose attributes are monitored.
getThresholdDefinitions()
public ThresholdDefinition130[] getThresholdDefinitions()
Gets the threshold definitions that define the threshold crossing criteria and the attributes to be mon
Returns: ThresholdDefinition Returns an interface representing an array of threshold definitions.
See Also: ThresholdDefinition130
getTriggerRule()
public TriggerRule158 getTriggerRule()
Gets the trigger rule associated with the threshold monitor job. The rule defines criteria that is used tmine when an alarm is triggered.
Returns: TriggerRule Returns an interface representing a rule that defines criteria that is used to detwhen to trigger an alarm.
See Also: TriggerRule158
setAlarmConfig(AlarmConfig)
public void setAlarmConfig(AlarmConfig115 alarmConfig)
throws javax.oss.IllegalArgumentException
Sets the configuration of the alarm that will be generated by the threshold monitor job for a thresholdtion.
The alarm configuration will be validated when the value object is passed to the threshold monitor b
Parameters:alarmConfig - An interface representing the alarm configuration generated by the threshold monitor job.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
120
ComplexThresholdMonitorValue
setObservableObjects(String[])
rigger
d
See Also: AlarmConfig115
setObservableObjects(String[])
public void setObservableObjects(java.lang.String[] observableobjects)
throws javax.oss.IllegalArgumentException
Sets the array of observable object instances that will be monitored for threshold crossings based on criteriadefined in a corresponding threshold definition.
Parameters:observableobjects - A string [] containing the distinguished names of the observable object instance.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
setThresholdDefinitions(ThresholdDefinition[])
public void setThresholdDefinitions(ThresholdDefinition130[] threshDefinitions)
throws javax.oss.IllegalArgumentException
Sets the threshold definitions that define the threshold crossing criteria and the attribute to be monitored.
The threshold definiton will be validated when the value object is passed to the threshold monitor bean.
Parameters:threshDefinitions - An interface representing an array of threshold definitions.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
See Also: ThresholdDefinition130
setTriggerRule(TriggerRule)
public void setTriggerRule(TriggerRule158 rule)
throws javax.oss.IllegalArgumentException
Sets the trigger rule associated with the threshold monitor job. The rule defines criteria that is used to deter-mine when an alarm is triggered.
The trigger rule will be validated when the value object is passed to the threshold monitor bean. If clientdoes not set the rule, then the threshold monitor will apply the default rule’TRIGGER_ON_EACH_CROSSED’ to its attributes.
Parameters:rule - An interface representing the rule that defines criteria that is used to determine when to tan alarm.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
See Also: TriggerRule158
121
QueryBySimpleThresAttributesValue
getAlarmConfig()
se
monitor
ation.
QueryBySimpleThresAttributesValueSyntaxpublic interface QueryBySimpleThresAttributesValue extends QueryMonitorValue124
All Superinterfaces: java.lang.Cloneable, QueryMonitorValue124, QueryValue244, java.io.Serial-izable
DescriptionThe QuerySimpleThresAttributesValue interface gives clients the capability to query on the one or more of the following simple threshold monitoring attributes: state, granularity, job name, alarm configuration, a list of threshold definitions, and a list of observable object distinguished names. In order to select a spefic type of threshold monitor job, a job type can also be specified. The query expression is formed by “ANDing” theattributes together.
If none of the parameters are specified, then all of the monitor jobs are returned.
Author: Audrey Ward
Version: 0.6, 2001-04-21
Methods
getAlarmConfig()
public AlarmConfig115 getAlarmConfig()
Gets the query attribute that represents an alarm configuration that is used to query for threshold jobs.
Returns: AlarmConfig Returns the query attribute that represents a threshold monitor alarm configur
Member Summary
MethodsAlarmConfig getAlarmConfig()122
String[] getObservableObjects()123ThresholdDefinition[] getThresholdDefinitions()123
boolean isAlarmConfigSet()123boolean isObservableObjectsSet()123boolean isThresholdDefinitionsSet()123
void setAlarmConfig(AlarmConfig)123void setObservableObjects(String[])124void setThresholdDefinitions(ThresholdDefinition[])124
122
QueryBySimpleThresAttributesValue
getObservableObjects()
See Also: AlarmConfig115
getObservableObjects()
public java.lang.String[] getObservableObjects()
Gets the query attribute that represents a list of observable object distinguished names that is used to queryfor threshold monitor jobs.
Returns: String [] Returns a threshold monitor query attribute that is a string [] containing the distinguished names of the observable object instances.
getThresholdDefinitions()
public ThresholdDefinition130[] getThresholdDefinitions()
Gets the query attribute that represents a list of threshold definitions that is used to query for threshold mon-itor jobs.
Returns: ThresholdDefinition Returns a query attribute that represents a list of threshold definitions.
See Also: ThresholdDefinition130
isAlarmConfigSet()
public boolean isAlarmConfigSet()
Returns true if the query attribute for the alarm configuration is set.
Returns: boolean Returns true if the query attribute is set, else false.
isObservableObjectsSet()
public boolean isObservableObjectsSet()
Returns true if the query attribute for the list of observable objects is set.
Returns: boolean Returns true if the query attribute is set, else false.
isThresholdDefinitionsSet()
public boolean isThresholdDefinitionsSet()
Returns true if the query attribute for the list of threshold definitions is set.
Returns: boolean Returns true if the query attribute is set, else false.
setAlarmConfig(AlarmConfig)
public void setAlarmConfig(AlarmConfig115 alarmConfig)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents an alarm configuration that is used to query for threshold monitorjobs.
123
QueryMonitorValue
setObservableObjects(String[])
Parameters:alarmConfig - A query attribute that represents an threshold monitor alarm configuration.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
See Also: AlarmConfig115
setObservableObjects(String[])
public void setObservableObjects(java.lang.String[] observableobjects)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents a list of observable object distinguished names that is used to queryfor threshold monitor jobs.
Parameters:observableobjects - A string [] containing the distinguished names of observable object instances. Distinguished names are not required to be fully qualified.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
setThresholdDefinitions(ThresholdDefinition[])
public void setThresholdDefinitions(ThresholdDefinition130[] threshDefinitions)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents a list of threshold definitions that is used to query for threshold mon-itor jobs.
Parameters:threshDefinitions - A query attribute that represents a list of threshold definitions.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
See Also: ThresholdDefinition130
QueryMonitorValueSyntaxpublic interface QueryMonitorValue extends QueryValue244
All Known Subinterfaces: QueryBySimpleThresAttributesValue122
All Superinterfaces: java.lang.Cloneable, QueryValue244, java.io.Serializable
124
QueryMonitorValue
getGranularityPeriod()
DescriptionThe QueryMonitorValue interface represents a query value that allows clients to query monitor jobs by one or more of the following basic monitoring attributes: state, granularity, and job name. In order to return a specific type of monitor job, a type attribute can be specified. The query expression is formed by “ANDing” theseattributes together.
This query should be renamed to QueryMonitorValue and moved to the javax.oss.pm.util directory.
If none of the parameters are specified, then all of the monitor jobs are returned.
Author: Audrey Ward
Version: 0.6, 2001-04-21
Methods
getGranularityPeriod()
public int getGranularityPeriod()
Gets the query attribute that represents the monitor job granularity period.
Returns: int The granularity period in seconds.
getMonitorName()
public java.lang.String getMonitorName()
Returns the query attribute that represents the monitor job name.
Returns: String The query attribute for the monitor job name.
Member Summary
Methodsint getGranularityPeriod()125
String getMonitorName()125String getMonitorValueType()126
int getState()126boolean isGranularityPeriodSet()126boolean isMonitorNameSet()126boolean isStateSet()126
void setGranularityPeriod(int)126void setMonitorName(String)127void setMonitorValueType(String)127void setState(int)127
125
QueryMonitorValue
getMonitorValueType()
getMonitorValueType()
public java.lang.String getMonitorValueType()
Gets the query attribute that represents the monitor job value type.
Returns: String The query attribute for the monitor job value type.
getState()
public int getState()
Sets the query attribute that represents a monitor job state. This attribute is used to query for monitor jobs ina given state.
Returns: int An integer that represents a particular state associated with a monitored job.
isGranularityPeriodSet()
public boolean isGranularityPeriodSet()
Returns true if query attribute for the monitor job granularity period is set.
Returns: boolean Returns true if the query attribute is set, else false.
isMonitorNameSet()
public boolean isMonitorNameSet()
Returns true if query attribute for the monitor job name is set.
Returns: boolean Returns true if the query attribute is set, else false.
isStateSet()
public boolean isStateSet()
Returns true if the query attribute for the monitor job state is set.
Returns: boolean Returns true if the query attribute is set, else false.
setGranularityPeriod(int)
public void setGranularityPeriod(int granularityPeriod)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents the monitor job granularity period.
The granularity period is specified in seconds.
Parameters:granularityPeriod - The query attribute for the monitor job granularity period.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
126
SimpleThresholdMonitorValue
setMonitorName(String)
r jobs in
setMonitorName(String)
public void setMonitorName(java.lang.String name)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents a monitor job name.
The monitor job name can include a wild card (“*”) at the end of the name.
Parameters:name - The query attribute for the monitor job name.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
setMonitorValueType(String)
public void setMonitorValueType(java.lang.String type)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents the monitor job value type.
Parameters:type - The query attribute for the monitor job value type.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
setState(int)
public void setState(int state)
throws javax.oss.IllegalArgumentException
Sets the query attribute that represents a monitor job state. This attribute is used to query for monitoa given state.
Parameters:state - An integer that represents a particular state associated with a monitored job.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked method could not be completed because a bad argument was provided.
SimpleThresholdMonitorValueSyntaxpublic interface SimpleThresholdMonitorValue extends ThresholdMonitorValue152
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, java.io.Serializable, ThresholdMonitorValue152
127
SimpleThresholdMonitorValue
ALARM_CONFIG
name
g job
in a
DescriptionThe SimpleThresholdMonitorValue represents the configuration of a simple threshold monitor job that monitors threshold states on attributes of the same attribute type and generates an alarm when a threshold crossing is detected.
This interface extends the ThresholdMonitorValue by specifying:
• an attribute specifier that identifies the monitored attributes by specifying a measurement attributeand the observable instances that contain this attribute.
• a threshold definition • an alarm configuration specifying the configuration of the alarm that is generated by the monitorin
when a threshold crossing is detected. A simple threshold monitoring job monitors threshold crossings on attribute values based on criteria setcorresponding threshold definition.
Author: Audrey Ward
Version: 0.6, 2001-01-17
See Also: ThresholdMonitorValue152
Fields
ALARM_CONFIG
public static final java.lang.String ALARM_CONFIG
DEFINITION
public static final java.lang.String DEFINITION
Member Summary
FieldsString ALARM_CONFIG128String DEFINITION128String OBSERVABLE_OBJECT129
MethodsAlarmConfig getAlarmConfig()129
String getObservableObject()129ThresholdDefinition getThresholdDefinition()129
void setAlarmConfig(AlarmConfig)129void setObservableObject(String)130void setThresholdDefinition(ThresholdDefinition)130
128
SimpleThresholdMonitorValue
OBSERVABLE_OBJECT
itored.
ored.
viola-
d
OBSERVABLE_OBJECT
public static final java.lang.String OBSERVABLE_OBJECT
Constants required by Value Object pattern to allow for the selective retrieval of value attributes.
Methods
getAlarmConfig()
public AlarmConfig115 getAlarmConfig()
Gets the configuration of the alarm that will be generated by the threshold monitor job for a threshold viola-tion.
Returns: AlarmConfig Returns an interface representing the alarm configuration associated with the threshold monitor job’s alarm.
See Also: AlarmConfig115
getObservableObject()
public java.lang.String getObservableObject()
Gets the observable object for which the threshold definition applies.
Returns: String Represents the name of the observable object that contains the attribute to be mon
getThresholdDefinition()
public ThresholdDefinition130 getThresholdDefinition()
Gets the threshold definition that defines the threshold crossing criteria and the attribute to be monit
Returns: ThresholdDefinition Returns an interface representing a threshold definition.
See Also: ThresholdDefinition130
setAlarmConfig(AlarmConfig)
public void setAlarmConfig(AlarmConfig115 alarmConfig)
throws javax.oss.IllegalArgumentException
Sets the configuration of the alarm that will be generated by the threshold monitor job for a thresholdtion.
Parameters:alarmConfig - An interface representing the alarm configuration generated by the threshold monitor job.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
129
ThresholdDefinition
setObservableObject(String)
See Also: AlarmConfig115
setObservableObject(String)
public void setObservableObject(java.lang.String observableObject)
throws javax.oss.IllegalArgumentException
Sets the observable object for which the threshold definition applies.
Parameters:observableObject - Represents the name of the observable object that contains the attribute to be monitored.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
setThresholdDefinition(ThresholdDefinition)
public void setThresholdDefinition(ThresholdDefinition130 threshDefinition)
throws javax.oss.IllegalArgumentException
Sets the threshold definition that defines the threshold crossing criteria and the attribute to be monitored.
Parameters:threshDefinition - An interface representing a threshold definition.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
See Also: ThresholdDefinition130
ThresholdDefinitionSyntaxpublic interface ThresholdDefinition extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionThe Threshold Definition interface provides a mechanism for the configuration of the parameters that specify the criteria that determines the setting and the clearing of threshold crossing states (threshold crossed and threshold cleared). A threshold enters a threshold crossed state when it reaches the threshold value specified by the setValue operation. It will remain in this state until it enters a threshold cleared state. A threshold cleared state is achieved when a threshold reaches a value that is calculated using the offset and the threshold value. If the direction of the threshold is raising, the value is computed by subtracting the the offset from the threshold value. Once the threshold reaches this value, it will remain in a threshold cleared state until it rises to the thresh-old value again. If the direction is falling, the offset is added to the threshold value and it will remain in the threshold cleared state until it descends to the threshold value again.
130
ThresholdDefinition
getAttributeName()
Author: Audrey Ward
Version: 0.6, 2001-01-17
See Also: ThresholdDirection133
Methods
getAttributeName()
public java.lang.String getAttributeName()
Gets the attribute name to be monitored.
Returns: String Returns a string that represents an attribute name.
getDirection()
public int getDirection()
Gets the direction of the threshold crossing associated with the threshold definition. The direction can beeither rising or failing.
Returns: ThresholdDirection Returns an int that represents the direction of the threshold crossing.
See Also: ThresholdDirection133
getOffset()
public java.lang.Object getOffset()
Gets the offset associated with the threshold definition.
Returns: Object Returns an object that represents the offset quantity.
Member Summary
MethodsString getAttributeName()131
int getDirection()131Object getOffset()131String getType()132Object getValue()132
void setAttributeName(String)132void setDirection(int)132void setOffset(Object)132void setType(String)133void setValue(Object)133
131
ThresholdDefinition
getType()
getType()
public java.lang.String getType()
Gets the type of the attribute value.
Returns: String Returns the attribute type.
getValue()
public java.lang.Object getValue()
Gets the value that attribute values must reach in order to achieve a threshold crossing state.
Returns: Object Returns an object that represents the threshold value quantity.
setAttributeName(String)
public void setAttributeName(java.lang.String name)
Sets the attribute name to be monitored.
Parameters:name - A string that represents an attribute name.
setDirection(int)
public void setDirection(int direction)
Sets the direction of the threshold crossing associated with the threshold definition. The direction is can beeither rising or failing.
Parameters:direction - An int that represents the direction of the threshold crossing.
See Also: ThresholdDirection133
setOffset(Object)
public void setOffset(java.lang.Object offset)
Sets the offset associated with the threshold definition. This value along with the direction specifies thehysteresis that the attribute value is allowed to oscillate within without being classified in a threshold cross-ing state. If the threshold direction is rising, the following applies: Once a threshold attribute enters athreshold crossing state (reaches the threshold value), no subsequent crossings are registered until thethreshold attribute value has descended to the value of the threshold value MINUS the Offset. When itreaches this point, the threshold attribute is no longer considered to be in a threshold crossing state and itenters a threshold cleared state. The reverse applies for the falling direction. Note: Value and Offset MUSTbe of the same type.
Parameters:offset - An Object that represents the offset quantity.
132
ThresholdDirection
setType(String)
setType(String)
public void setType(java.lang.String type)
Sets the type of the attribute value.
Parameters:type - A string that represents the attribute type. Note: must be the same type as Offset.
setValue(Object)
public void setValue(java.lang.Object value)
Sets the value that attributes values must reach in order to achieve a threshold crossing state.
Parameters:value - An Object that represents the threshold value quantity. Note: must be the same type as Offset.
ThresholdDirectionSyntaxpublic interface ThresholdDirection
DescriptionThe Threshold Direction interface represents the constants associated with the direction of a threshold. The direction of the threshold can be rising or falling. The direction combined with the hysteresis determines the conditions for entering a threshold crossing or threshold cleared state.
Author: Audrey Ward
Version: 0.6, 2001-01-17
See Also: ThresholdDefinition130
Fields
FALLING
public static final int FALLING
Member Summary
Fieldsint FALLING133int RISING134
133
ThresholdMonitor
RISING
d pro-
rvices
it . Upon
r-
onitor
Represents a falling direction for a threshold crossing.
RISING
public static final int RISING
Represents a rising direction for a threshold crossing.
ThresholdMonitorSyntaxpublic interface ThresholdMonitor extends javax.ejb.EJBObject, ThresholdMonitorMethods139
All Superinterfaces: javax.ejb.EJBObject, java.rmi.Remote, ThresholdMonitorMethods139
DescriptionA ThresholdMonitor represents the system’s ability to monitor thresholds on elements in the network anduce alarms triggered by threshold values. This set of services is called a threshold monitor job.
This interface defines the administrative methods that a threshold monitor agent shall support. These seare as follows:
• Creating a threshold monitor job • Deleting a threshold monitor job • Getting a threshold monitor job
Creating a threshold monitor job: In order to create a threshold monitor job, all of its information must besupplied.
Deleting a threshold monitoring job: A threshold monitor job is automatically deleted by the system whenreaches the job’s scheduled endtime. A threshold monitor job can also be deleted manually at any timedeletion, all processing associated with the job is stopped, and its allocated resources are freed.
Get a threshold monitor job: A simple query mechanism can be utilized at any time to retrieve all the infomation that represents a threshold monitor job including its state.
Get supported granularities based for a threshold monitor job: A query mechanism is provided to deter-mine the supported granularities of the server for given a template describing information in threshold mjob.
Author: Audrey Ward
Version: 0.6, 2001-01-16
Member Summary
MethodsVersion getVersion()135
134
ThresholdMonitorHome
getVersion()
Methods
getVersion()
public Version245 getVersion()
throws RemoteException
Gets the version of the OSS through Java API that the bean represents.
Returns: Version Returns the version of the OSS through Java API that the bean represents.
Throws:RemoteException - This exception is raised when an unexpected system exception occurs.
See Also: Version245
ThresholdMonitorHomeSyntaxpublic interface ThresholdMonitorHome extends javax.ejb.EJBHome
All Superinterfaces: javax.ejb.EJBHome, java.rmi.Remote
DescriptionThe ThresholdMonitorHome is an interface that serves as a factory for the creation of enterprise beans that pro-vide management services to threshold monitor jobs. The ThresholdMonitorHome is registered in JNDI to pro-vide clients with access to threshold monitor management services.
The following code illustrates how to find a ThresholdMonitorHome interface.
Context initial = new InitialContext();java.lang.Object objref = initial.lookup(“Motorola/OMC/ThresholdMonitor”);ThresholdMonitorHome tmHome =(ThresholdMonitorHome)PortableRemoteObject.narrow
(objref, ThresholdMonitorHome.class);// Create the remote interface of Threshold MonitorThresholdMonitor pmSession = tmHome.create();// Do something
Author: Audrey Ward
Version: 0.6, 2001-01-16
Member Summary
MethodsThresholdMonitor create()136
Version getVersion()136
135
ThresholdMonitorKey
create()
Methods
create()
public ThresholdMonitor134 create()
throws CreateException, RemoteException
Creates a new instance of the threshold monitoring management facility.
Returns: ThresholdMonitor Returns the remote interface to the bean implementation that provides the threshold monitoring management services.
Throws:CreateException - This exception raised to report a failure to create a threshold monitoring management facility.
RemoteException - This exception is raised when an unexpected system exception occurs.
getVersion()
public Version245 getVersion()
throws RemoteException
Gets the version of the OSS through Java API that the bean represents.
Returns: Version Returns the version of the OSS through Java API that the bean represents.
Throws:RemoteException - This exception is raised when an unexpected system exception occurs.
See Also: Version245
ThresholdMonitorKeySyntaxpublic interface ThresholdMonitorKey extends ManagedEntityKey240
All Superinterfaces: java.lang.Cloneable, ManagedEntityKey240, java.io.Serializable
DescriptionThe ThresholdMonitorKey defines an interface for a primary key that identifies the threshold monitor job.
Author: Audrey Ward
Version: 0.6, 2001-01-16
Member Summary
MethodsString getThresholdMonitorPrimaryKey()137
136
ThresholdMonitorKeyResult
getThresholdMonitorPrimaryKey()
Methods
getThresholdMonitorPrimaryKey()
public java.lang.String getThresholdMonitorPrimaryKey()
Returns the primary key of the threshold monitor job.
Returns: String Returns the primary key of the threshold monitor job in string format.
setThresholdMonitorPrimaryKey(String)
public void setThresholdMonitorPrimaryKey(java.lang.String key)
Sets the primary key of the threshold monitor job.
Parameters:key - The primary key of the threshold monitor job in string format.
ThresholdMonitorKeyResultSyntaxpublic interface ThresholdMonitorKeyResult extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThe ThresholdMonitorKeyResult defines an interface that specifies the result of a best effort operation with respect to specific threshold monitor job represented by its key.
Author: Audrey Ward
Version: 0.6, 2001-03-26
void setThresholdMonitorPrimaryKey(String)137
Member Summary
MethodsString getFailureReason()138
ThresholdMonitorKey getThresholdMonitorKey()138boolean isSuccess()138
void setFailureReason(String)138void setSuccess(Boolean)138
Member Summary
137
ThresholdMonitorKeyResult
getFailureReason()
Methods
getFailureReason()
public java.lang.String getFailureReason()
Returns the reason for the failure.
Returns: String Returns the reason for the failure.
getThresholdMonitorKey()
public ThresholdMonitorKey136 getThresholdMonitorKey()
Returns the primary key of the threshold monitor job.
Returns: ThresholdMonitorKey Returns the primary key of the threshold monitor job.
isSuccess()
public boolean isSuccess()
Returns the status of the best effort operation with respect to the threshold monitor job.
Returns: boolean Returns the status of the operation on the threshold monitor job.
setFailureReason(String)
public void setFailureReason(java.lang.String failure_reason)
Returns the reason for the failure of the operation on the threshold monitor job.
Parameters:failure_reason - Returns a string representation describing the reason for the failure.
setSuccess(Boolean)
public void setSuccess(java.lang.Boolean is_success)
Sets the status of the operation on a threshold monitor job.
Parameters:is_success - A boolean that indicates if the operation on the threshold monitor job was a success.
setThresholdMonitorKey(ThresholdMonitorKey)
public void setThresholdMonitorKey(ThresholdMonitorKey136 key)
Sets the primary key of the threshold monitor job.
void setThresholdMonitorKey(ThresholdMonitorKey)138
Member Summary
138
ThresholdMonitorMethods
setThresholdMonitorKey(ThresholdMonitorKey)
will
Parameters:key - Sets the primary key of the threshold monitor job.
ThresholdMonitorMethodsSyntaxpublic interface ThresholdMonitorMethods
All Known Subinterfaces: ThresholdMonitor134
DescriptionThe ThresholdMonitorMethods interface defines the business services provided for threshold monitoring jobs.
This interface is extended by the ThresholdMonitor remote interface and the bean implementation.
It is designed in this manner to allow for compile time checks on the business methods by both the bean imple-mentation and the remote interface. This pattern provides some assurance that a bean’s implementationwork with its remote interface.
Author: Audrey Ward
Version: 0.6, 2001-02-17
Member Summary
FieldsString RESUME_THRESHOLD_MONITOR140String SIMPLE_THRESHOLD_MONITOR_TYPE140String SUSPEND_THRESHOLD_MONITOR140String TRY_CREATE_THRESHOLD_MONITORS140String TRY_REMOVE_THRESHOLD_MONITORS141String TRY_RESUME_THRESHOLD_MONITORS141String TRY_SUSPEND_THRESHOLD_MONITORS141
MethodsThresholdMonitorKey createThresholdMonitor(ThresholdMonitorValue)141
AlarmEventPropertyDe-scriptor
getEventDescriptor(String)142
String[] getEventTypes()142PerformanceAttribute-
Descriptor[]
getObservableAttributes(String)143
ObservableObjectClas-sIterator
getObservableObjectClasses()143
ObservableObjectIter-ator
getObservableObjects(String, String)143
String[] getQueryTypes()144int[] getSupportedGranularities(ThresholdMonitorValue)144
String[] getSupportedOptionalOperations()144ThresholdMonitorValue getThresholdMonitor(ThresholdMonitorKey, String[])145
139
ThresholdMonitorMethods
RESUME_THRESHOLD_MONITOR
Fields
RESUME_THRESHOLD_MONITOR
public static final java.lang.String RESUME_THRESHOLD_MONITOR
Constant for the optional operation resumeThresholdMonitor.
SIMPLE_THRESHOLD_MONITOR_TYPE
public static final java.lang.String SIMPLE_THRESHOLD_MONITOR_TYPE
Constant representing the SimpleThresholdMonitorValue type.
SUSPEND_THRESHOLD_MONITOR
public static final java.lang.String SUSPEND_THRESHOLD_MONITOR
Constant for the optional operation suspendThresholdMonitor.
TRY_CREATE_THRESHOLD_MONITORS
public static final java.lang.String TRY_CREATE_THRESHOLD_MONITORS
Constant for the optional operation tryCreateThresholdMonitors.
ThresholdMonitorVal-ueIterator
getThresholdMonitors(ThresholdMonitorKey[], String)145
String[] getThresholdMonitorTypes()146boolean isObservableObjectsSupported(String[])146
QueryValue makeQueryValue(String)146SimpleThresholdMoni-
torValue
makeSimpleThresholdMonitorValue()147
ThresholdMonitorValue makeThresholdMonitorValue(String)147ThresholdMonitorVal-
ueIterator
queryThresholdMonitors(QueryValue, String[])147
void removeThresholdMonitor(ThresholdMonitorKey)148void resumeThresholdMonitor(ThresholdMonitorKey)148void suspendThresholdMonitor(ThresholdMonitorKey)149
ThresholdMonitorKey-Result[]
tryCreateThresholdMonitors(ThresholdMonitorValue[])149
ThresholdMonitorKey-Result[]
tryRemoveThresholdMonitors(ThresholdMonitorKey[])150
ThresholdMonitorKey-Result[]
tryResumeThresholdMonitors(ThresholdMonitorKey[])150
ThresholdMonitorKey-Result
trySuspendThreholdMonitors(ThresholdMonitorKey[])151
Member Summary
140
ThresholdMonitorMethods
TRY_REMOVE_THRESHOLD_MONITORS
itor objectn.
eriod.eated.
0 daysording
ementsd 24.00iple of
ill set ton of jobs,
TRY_REMOVE_THRESHOLD_MONITORS
public static final java.lang.String TRY_REMOVE_THRESHOLD_MONITORS
Constant for the optional operation tryRemoveThresholdMonitors.
TRY_RESUME_THRESHOLD_MONITORS
public static final java.lang.String TRY_RESUME_THRESHOLD_MONITORS
Constant for the optional operation resumeThresholdMonitors.
TRY_SUSPEND_THRESHOLD_MONITORS
public static final java.lang.String TRY_SUSPEND_THRESHOLD_MONITORS
Constant for the optional operation suspendThresholdMonitors.
Methods
createThresholdMonitor(ThresholdMonitorValue)
public ThresholdMonitorKey136 createThresholdMonitor(ThresholdMonitorValue152 value)
throws javax.ejb.CreateException, javax.oss.IllegalArgumentException, javax
.ejb.DuplicateKeyException, java.rmi.RemoteException
Creates a new threshold monitor job.
On creation of a threshold monitor job, all mandatory information must be supplied in order for the job tomonitor thresholds and to generate alarms.
If the value object is of the type “SimpleThresholdMonitorValue”, the threshold monitor job will monattributes that are classified by a single performance attribute descriptor and a list of observableinstances. The threshold criteria for the attributes will be listed in a corresponding threshold definitio
If the name of the threshold monitor job is set, it must be unique within the threshold monitor agent.
The setting of the granularity period is optional. If it is not set the server will determine a granularity pIf it is set, it must be a server supported granularity period or the threshold monitor job will not be crUse the getSupportedGranularities method to discover the supported granularities.
The implementation shall support a threshold monitor job start time (schedule) of up to at least 3from the job creation date. It shall also validate that the end time is not a time in the past. The recintervals may repeat on a daily and/or weekly basis and specify the time periods during which the elare monitored. The daily interval is defined by start times and end times, which lie between 00.00 anhours and are aligned on granularity period boundaries. Thus length of a daily interval will be a multthe granularity period.
On creation of a threshold monitor job, the state is set to active and depending on the schedule it won duty or off duty. If the state is set to suspended on creation and the agent supports the suspensiothe state job will be suspended and the schedule will be ignored until the job is resumed.
141
ThresholdMonitorMethods
getEventDescriptor(String)
ll be
d
The value objects should be created using the create value object methods (createSimpleThresholdMonitor-Value()) present in this interface to avoid problems.
Parameters:value - The value object that represents the configuration associated with a threshold monitor job.
Returns: ThresholdMonitorKey The primary key of the newly created threshold monitor job.
Throws:javax.ejb.CreateException - Is raised if the job could not be created.
IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.DuplicateKeyException - Is raised if an measurement job cannot be created because a measurement job with the same key already exists.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getEventDescriptor(String)
public AlarmEventPropertyDescriptor184 getEventDescriptor(java.lang.String eventType)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Get the event descriptor associated with an event category.
For an event category of “AlarmEvent”, the event descriptor “AlarmEventPropertyDescriptor” wireturned.
Parameters:eventType - The name of the event type.
Returns: AlarmEventPropertyDescriptor Returns an alarm event property descriptor.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
See Also: AlarmEventPropertyDescriptor184
getEventTypes()
public java.lang.String[] getEventTypes()
throws java.rmi.RemoteException
Get the supported event types.
This operation gives information on which event types are supported by the implementation.
This operation must return an “AlarmEvent”.
Returns: String[] List of event type names (interface name) that are supported.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
See Also: AlarmEvent183
142
ThresholdMonitorMethods
getObservableAttributes(String)
getObservableAttributes(String)
public PerformanceAttributeDescriptor90[] getObservableAttributes(java.lang.String
observableObjectClassName)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Returns all attributes that can be monitored in the observable object class.
Parameters:observableObjectClassName - The name of the observable object class.
Returns: PerformanceAttributeDescriptor[] List of all supported attributes in the observable object class.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getObservableObjectClasses()
public ObservableObjectClassIterator169 getObservableObjectClasses()
throws javax.ejb.CreateException, java.rmi.RemoteException
Returns all supported observed object classes in the monitoring agent.
Returns: ObservableObjectClassIterator Iterator that contains all supported observable object classes.
Throws:javax.ejb.CreateException - Is raised if the ObservableObjectClassIterator could not be created.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getObservableObjects(String, String)
public ObservableObjectIterator167 getObservableObjects(java.lang.String
observableObjectClassName, java.lang.String root)
throws javax.ejb.CreateException, javax.oss.IllegalArgumentException, java.
rmi.RemoteException
Returns the supported observable object instances of the specific object class that are located below thespecified distinguished name in the monitoring agent.
If root is not specified then all instances of that class are returned.
Parameters:observableObjectClassName - The class name of the observable object instances to be found.
root - The distinguished name of the object where the search shall begin.
Returns: ObservableObjectIterator Iterator that contains all supported observable objects.
Throws:javax.ejb.CreateException - Is raised if the ObservableObjectIterator could not be created.
IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
143
ThresholdMonitorMethods
getQueryTypes()
d
pportedation-
hey
getQueryTypes()
public java.lang.String[] getQueryTypes()
throws java.rmi.RemoteException
Returns the supported name queries.
Note: The only mandatory named query is QueryByStateAndOOValue.
Returns: String[] Returns the names of the supported query types. Currently, there are no defined named queries in the interface so this method will return a null. It is supplied for completeness and could be used if the API is extended.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getSupportedGranularities(ThresholdMonitorValue)
public int[] getSupportedGranularities(ThresholdMonitorValue152 value)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Query for the granularities supported by the system based on the threshold value to be monitored.
If no granularities are supported by the system for a given threshold value, then the system will return anull.
Parameters:value - A value representing the configuration of a threshold monitor job quantity.
Returns: int[] An array of ints representing the server’s supported granularity periods (in seconds).
Throws:IllegalArgumentException239 - Is thrown to report that the method could not be completebecause a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getSupportedOptionalOperations()
public java.lang.String[] getSupportedOptionalOperations()
throws java.rmi.RemoteException
Get the supported optional operations.
Some of the operations on the threshold monitor bean are optional. This operation returns a list of suoptional operations. Calling unsupported optional operations will result in the “UnsupportedOperException”.
The following operation prototypes can be returned:
• ThresholdMonitorKeyResult[] tryCreateThresholdMonitors ( ThresholdMonitorValue[] ) • ThresholdMonitorKeyResult[] tryRemoveThresholdMonitors( ThresholdMonitorKey[] ) • ThresholdMonitorKeyResult[] trySuspendPerformanceMonitors( ThresholdMonitorKey[] ) • ThresholdMonitorKeyResult[] tryResumePerformanceMonitors( ThresholdMonitorKey[] ) • void suspendPerformanceMonitor( ThresholdMonitorKey tmKey ) • void resumePerformanceMonitor( ThresholdMonitorKey tmKey )
Returns: String[] List of operation names that will not throw the UnsupportedOperationException, if tare called.
144
ThresholdMonitorMethods
getThresholdMonitor(ThresholdMonitorKey, String[])
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getThresholdMonitor(ThresholdMonitorKey, String[])
public ThresholdMonitorValue152 getThresholdMonitor(ThresholdMonitorKey136 tmKey,
java.lang.String[] attributes)
throws javax.ejb.ObjectNotFoundException, javax.oss.IllegalArgumentExceptio
n, java.rmi.RemoteException
Gets the attribute values of a specific threshold monitor job.
The input parameters specify the attributes of the threshold monitor job to return. If the attribute id list isnull, all the attribute values in the threshold monitor job are returned.
Parameters:tmKey - Primary key of the threshold monitor job.
attributes - A list of the requested attributes.
Returns: ThresholdMonitoringValue A value object containing the requested attributes of the threshold monitor job.
Throws:javax.ejb.ObjectNotFoundException - Is raised if the threshold monitor job is not found.
IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
getThresholdMonitors(ThresholdMonitorKey[], String)
public ThresholdMonitorValueIterator156 getThresholdMonitors(ThresholdMonitorKey136[]
tmKeys, java.lang.String attributes)
throws javax.oss.IllegalArgumentException, javax.ejb.FinderException, java.
rmi.RemoteException
Gets the attribute values of a specific threshold monitor jobs.
The input parameters specify the attributes of the threshold monitor jobs to return. If the attribute id list isnull, all the attribute values in the threshold monitor jobs are returned. If the array of threshold monitor jobkeys is null, all threshold monitor jobs are returned.
Parameters:tmKeys - An array of primary keys for the threshold monitor jobs.
attributes - A list of the requested attributes.
Returns: ThresholdMonitoringValueIterator[] An iterator of threshold monitor job objects containing the requested attributes specified by the attributes parameter.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.FinderException - Is raised if one or several threshold monitor jobs were not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
145
ThresholdMonitorMethods
getThresholdMonitorTypes()
h the list
d
d
getThresholdMonitorTypes()
public java.lang.String[] getThresholdMonitorTypes()
throws java.rmi.RemoteException
Gets the supported entity value types.
This operation gives information on which entity value types are supported by the implementation.
This operation must at least return the “SimpleThresholdMonitorValue” entity value type.
Returns: String[] List of entity value type names (interface name) that are supported.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
isObservableObjectsSupported(String[])
public boolean isObservableObjectsSupported(java.lang.String[] dnList)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Indicate if the observable objects are can be observed.
This operation can be used by the client to determine if this bean can create a measurement job witof observable objects.
Parameters:dnList - List of observable objects distinguished names.
Returns: boolean returns true if the list of observable objects can be observed, else false.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
makeQueryValue(String)
public QueryValue244 makeQueryValue(java.lang.String type)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Creates a Query Value Instance matching a Query type.
Note: The only mandatory named query is QueryByStateAndOOValue.
Parameters:type - The name of the Query Type (example: “QueryByStateAndOOValue”).
Returns: QueryValue A query value that is identified by the query type.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
146
ThresholdMonitorMethods
makeSimpleThresholdMonitorValue()
makeSimpleThresholdMonitorValue()
public SimpleThresholdMonitorValue127 makeSimpleThresholdMonitorValue()
throws javax.oss.IllegalArgumentException, javax.ejb.CreateException, java.
rmi.RemoteException
Creates a SimpleThresholdMonitorValue object. This method should not be confused with the creation of athreshold monitoring job. The Session bean is used as a factory for the creation of threshold value typeobjects that are used to create threshold monitoring jobs.
Returns: SimpleThresholdMonitorValue Returns an empty simple threshold monitor construct.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.CreateException - Is raised if the value type could not be created.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
makeThresholdMonitorValue(String)
public ThresholdMonitorValue152 makeThresholdMonitorValue(java.lang.String valuetype)
throws javax.oss.IllegalArgumentException, javax.ejb.CreateException, java.
rmi.RemoteException
Creates a value type object that represents a specific threshold monitor value type. This method should notbe confused with the creation of a threshold monitoring job. The Session bean is used as a factory for thecreation of threshold value type objects that are used to create threshold monitoring jobs.
It is mandatory that the API support the creation of the SimpleThresholdMonitorType.
Parameters:valuetype - A string that represents a specific threshold monitor entity value type.
Returns: ThresholdMonitorValue a threshold monitor entity value type. This returned object is empty.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.CreateException - Is raised if the value type could not be created.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
queryThresholdMonitors(QueryValue, String[])
public ThresholdMonitorValueIterator156 queryThresholdMonitors(QueryValue244 query,
java.lang.String[] attrNames)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Query multiple managed entities using a query name and a set of parameters.
Note: The only mandatory named query is QueryByStateAndOOValue.
Parameters:query - Representing the query value.
attrNames - The string names of the fields in the managed entity value that will be returned as part of the query result.
147
ThresholdMonitorMethods
removeThresholdMonitor(ThresholdMonitorKey)
Returns: ThresholdMonitoringValueIterator[] An iterator of threshold monitor job objects containing the requested attributes specified by the attributes parameter.
Throws:IllegalArgumentException239 - Is thrown to report that the method could not be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
removeThresholdMonitor(ThresholdMonitorKey)
public void removeThresholdMonitor(ThresholdMonitorKey136 tmKey)
throws javax.ejb.ObjectNotFoundException, javax.oss.IllegalArgumentExceptio
n, javax.ejb.RemoveException, java.rmi.RemoteException
Removes a specific threshold monitor job.
The monitoring process associated with the threshold monitor job is stopped and its allocated resources arefreed.
Parameters:tmKey - The primary key of the threshold monitor job.
Throws:javax.ejb.ObjectNotFoundException - Is raised if the threshold monitor job was not found.
IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.RemoveException - Is raised if the threshold monitor job could not be removed.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
resumeThresholdMonitor(ThresholdMonitorKey)
public void resumeThresholdMonitor(ThresholdMonitorKey136 tmKey)
throws javax.oss.UnsupportedOperationException, javax.ejb.ObjectNotFoundExc
eption, javax.oss.IllegalArgumentException, java.rmi.RemoteException
Reactivates the monitoring activity for a threshold monitor job.
The threshold monitoring activity begins at the next granularity period defined by the schedule in thethreshold monitor job. This implies that the threshold monitoring job definition must remain in the system.
If the threshold monitoring job is already active, the job will remain active.
Parameters:tmKey - The primary key of the threshold monitoring job to be resumed.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.ObjectNotFoundException - Is raised if the threshold monitor job was not found.
IllegalArgumentException239 - Is thrown to report that the method could not be completed because a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
148
ThresholdMonitorMethods
suspendThresholdMonitor(ThresholdMonitorKey)
e sys-b has
in the
d
if they
nitor
il
d
suspendThresholdMonitor(ThresholdMonitorKey)
public void suspendThresholdMonitor(ThresholdMonitorKey136 tmKey)
throws javax.oss.UnsupportedOperationException, javax.ejb.ObjectNotFoundExc
eption, javax.oss.IllegalArgumentException, java.rmi.RemoteException
Suspends all threshold monitoring activity in a threshold monitor job.
This function can be used to temporarily discontinue the monitoring of thresholds (e.g. in case of systemoverload or congestion, thresholds values not valid during this time period,...). The threshold monitor jobcan be suspended at any time. This implies that the threshold monitor job’s definition remains in thtem, but that all monitoring activities associated with the job are stopped. When the monitoring joresumed, the monitoring activity will continue at the next granularity period defined by the schedule.
The resume function will re-enable monitoring of thresholds according to the schedule defined threshold monitor job.
If the threshold monitor job is already suspended, the job will remain suspended.
Parameters:tmKey - The primary key of the threshold monitor job.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.ObjectNotFoundException - Is raised if the measurement job was not found.
IllegalArgumentException239 - Is thrown to report that the method could not be completebecause a bad argument was provided.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
tryCreateThresholdMonitors(ThresholdMonitorValue[])
public ThresholdMonitorKeyResult137[]
tryCreateThresholdMonitors(ThresholdMonitorValue152[] tmValues)
throws javax.oss.UnsupportedOperationException, javax.ejb.CreateException,
javax.oss.IllegalArgumentException, javax.ejb.DuplicateKeyException, java.r
mi.RemoteException
Best Effort - Creates multiple threshold monitor jobs each with a different threshold monitor value.
For each threshold monitor job that should be created, the behaviour is the same for each job aswhere created individually, by calling createThresholdMonitor( ... ).
Parameters:tmValues - The value objects that represent the configuration associated with the threshold mojobs.
Returns: ThresholdMonitorKeyResult[] A threshold monitor key result that contains both pass and faresults from the create operation.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
javax.ejb.CreateException - Is raised if the measurement jobs could not be created.
IllegalArgumentException239 - Is thrown to report that the invoked business method coulnot be completed because a bad argument was provided.
149
ThresholdMonitorMethods
tryRemoveThresholdMonitors(ThresholdMonitorKey[])
javax.ejb.DuplicateKeyException - Is raised if an measurement job cannot be created because a measurement job with the same key already exists.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
tryRemoveThresholdMonitors(ThresholdMonitorKey[])
public ThresholdMonitorKeyResult137[] tryRemoveThresholdMonitors(ThresholdMonitorKey136[]
tmKeys)
throws javax.oss.UnsupportedOperationException, javax.oss.IllegalArgumentEx
ception, javax.ejb.FinderException, javax.ejb.RemoveException, java.rmi.Rem
oteException
Best Effort - Remove threshold monitor jobs.
The monitor process associated with the threshold monitor jobs are stopped and its allocated resources arefreed.
Parameters:tmKeys - List of primary keys of the threshold monitor jobs to remove.
Returns: ThresholdMonitorKeyResult[] A threshold monitor key result that contains both pass and fail results from the remove operation.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
javax.ejb.FinderException - Is raised if the threshold monitor jobs were not found.
javax.ejb.RemoveException - Is raised if the threshold monitor jobs could not be removed.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
tryResumeThresholdMonitors(ThresholdMonitorKey[])
public ThresholdMonitorKeyResult137[] tryResumeThresholdMonitors(ThresholdMonitorKey136[]
tmKeys)
throws javax.oss.UnsupportedOperationException, javax.oss.IllegalArgumentEx
ception, javax.ejb.FinderException, java.rmi.RemoteException
Best effort - Reactivates the monitoring activity on a list of threshold monitoring jobs.
The threshold monitoring activity begins at the next granularity period defined by the schedules in thethreshold monitor jobs. This implies that the threshold monitor job definitions must remain in the system.
If the threshold monitor jobs are already active, the jobs will remain active.
Parameters:tmKeys - List of primary keys of the threshold monitor jobs to be resumed.
Returns: ThresholdMonitorKeyResult[] A threshold monitor key result that contains both pass and fail results from the resume operation.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
150
ThresholdMonitorState
trySuspendThreholdMonitors(ThresholdMonitorKey[])
IllegalArgumentException239 - Is thrown to report that the method could not be completed because a bad argument was provided.
javax.ejb.FinderException - Is raised if the monitoring jobs were not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
trySuspendThreholdMonitors(ThresholdMonitorKey[])
public ThresholdMonitorKeyResult137 trySuspendThreholdMonitors(ThresholdMonitorKey136[]
tmKeys)
throws javax.oss.UnsupportedOperationException, javax.oss.IllegalArgumentEx
ception, javax.ejb.FinderException, java.rmi.RemoteException
Best Effort - Suspends all threshold monitoring activity on a list of threshold monitor jobs.
Parameters:tmKeys - List of primary keys of the threshold monitor jobs to suspended.
Returns: ThresholdMonitorKeyResult[] A threshold monitor key result that contains both pass and fail results from the suspend operation.
Throws:UnsupportedOperationException244 - Is raised if this operation is not supported.
IllegalArgumentException239 - Is thrown to report that the method could not be completed because a bad argument was provided.
javax.ejb.FinderException - Is raised if the threshold monitor jobs were not found.
java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
ThresholdMonitorStateSyntaxpublic interface ThresholdMonitorState
DescriptionDefines constants that represent the operational states associated with a threshold monitor job.
The threshold monitor job can have several states:
• Active and on duty • Active but off duty • Suspended
Author: Audrey Ward
Version: 0.6, 2001-02-17
See Also: ThresholdMonitorValue152
151
ThresholdMonitorValue
ACTIVE_OFF_DUTY
ings.
Fields
ACTIVE_OFF_DUTY
public static final int ACTIVE_OFF_DUTY
Constant for a threshold monitor job that is active and off duty.
ACTIVE_ON_DUTY
public static final int ACTIVE_ON_DUTY
Constant for a threshold monitor job that is active and on duty.
SUSPENDED
public static final int SUSPENDED
Constant for a threshold monitor job that is suspended.
ThresholdMonitorValueSyntaxpublic interface ThresholdMonitorValue extends ManagedEntityValue241
All Known Subinterfaces: ComplexThresholdMonitorValue118, SimpleThresholdMonitorValue127
All Superinterfaces: java.lang.Cloneable, ManagedEntityValue241, java.io.Serializable
DescriptionRepresents the base level configuration associated with a threshold monitor job. This interface is meant to be abstract in that it should never be directly implemented.
Threshold monitor jobs are managed by the ThresholdMonitor. A client can manage threshold monitoring jobs indirectly by using the services provided by this interface.
All threshold monitoring jobs shall include:
• a granularity specifying the rate at which attribute data is scanned and monitored for threshold cross• a schedule specifying the schedule of the monitoring activity.
Member Summary
Fieldsint ACTIVE_OFF_DUTY152int ACTIVE_ON_DUTY152int SUSPENDED152
152
ThresholdMonitorValue
GRANULARITY
• a name representing a user definable property used to identify the job. • a state of the monitoring job. • a key that identifies the monitoring job.
Author: Audrey Ward
Version: 0.6, 2001-01-17
See Also: ThresholdMonitor134
Fields
GRANULARITY
public static final java.lang.String GRANULARITY
KEY
public static final java.lang.String KEY
NAME
public static final java.lang.String NAME
Member Summary
FieldsString GRANULARITY153String KEY153String NAME153String SCHEDULE154String STATE154
Methodsint getGranularity()154
Schedule getSchedule()154ThresholdMonitorKey getThresholdMonitorKey()154
String getThresholdName()154int getThresholdState()154
boolean isScheduleSet()155void setGranularity(int)155void setSchedule(Schedule)155void setThresholdName(String)156
153
ThresholdMonitorValue
SCHEDULE
SCHEDULE
public static final java.lang.String SCHEDULE
STATE
public static final java.lang.String STATE
Methods
getGranularity()
public int getGranularity()
Gets the granularity associated with the threshold monitor job.
Returns: int Returns an int representing the granularity period associated with the threshold monitor job.
getSchedule()
public Schedule171 getSchedule()
Returns the schedule of the measurement job.
Returns: Schedule Returns the schedule associated with the threshold monitor job.
See Also: Schedule171
getThresholdMonitorKey()
public ThresholdMonitorKey136 getThresholdMonitorKey()
Gets the unique identifier for the threshold monitor job.
Returns: ThresholdMonitorKey Returns an interface representing the unique key associated with the threshold monitor job.
getThresholdName()
public java.lang.String getThresholdName()
Gets the user friendly name of the threshold monitor job.
Returns: String Returns a string representing the name of the threshold monitor job.
getThresholdState()
public int getThresholdState()
Gets the state of the threshold monitor job.
Returns: int Returns an int representing the state of the threshold monitor job.
154
ThresholdMonitorValue
isScheduleSet()
See Also: ThresholdMonitorState151
isScheduleSet()
public boolean isScheduleSet()
Indicate if the threshold monitor job has a schedule.
Returns: boolean Returns true if the threshold monitor job has a schedule, else it returns false.
setGranularity(int)
public void setGranularity(int granularity)
throws javax.oss.IllegalArgumentException
Sets the granularity associated with the threshold monitor job.
The granularity will be validated when the value object is passed to the threshold monitor bean. If the gran-ularity is not set, the server will decide at what granularity to monitor the threshold data.
Parameters:granularity - An int representing the granularity of the threshold monitor job.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
setSchedule(Schedule)
public void setSchedule(Schedule171 schedule)
throws javax.oss.IllegalArgumentException
Sets the schedule of the threshold monitor job.
The monitoring schedule specifies the time frames during which the threshold monitor job will be active.The monitor job is active as soon as the start time - if set - is reached. If no start time is provided, the moni-tor job shall become active immediately. The monitor job remains active until the stop time - if set - isreached. If no stop time is specified, the monitor job will run indefinitely and can only be stopped by sys-tem intervention, i.e. by deleting or suspending the monitor job. The time frame defined by the monitoringschedule may contain one or more recording intervals. These recording intervals may repeat on weeklybasis. If weekly schedule is omitted, the monitor job will run all days of the week. Alternatively, the weeklyschedule will indicate which days of the week the monitor job will run. The daily schedule specifies thetime frames during the day when the monitor job will be active. The time frame may contain one or morerecording intervals. These recording intervals specify the time periods when the threshold monitor is activehence thresholds are monitored. The start time and end time define a recording interval that lies between00.00 and 24.00 hours and must be aligned on granularity period boundaries. Thus the length of a record-ing interval will be a multiple of the granularity period. If daily interval is omitted, the threshold monitorjob will run continuously through the day.
The schedule will be validated when the value object is passed to the threshold monitor bean.
Parameters:schedule - Schedule of the threshold monitor job.
155
ThresholdMonitorValueIterator
setThresholdName(String)
e query is in
s in a
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
See Also: Schedule171
setThresholdName(String)
public void setThresholdName(java.lang.String name)
throws javax.oss.IllegalArgumentException
Sets the user friendly name for the threshold monitor job. The setting of this parameter is optional. If aname is provided, it must be unique.
The name will be validated when the value object is passed to the threshold monitor bean. The setting ofthis parameter is optional.
Parameters:name - A user friendly string representing the name of the threshold monitor job.
Throws:IllegalArgumentException239 - Is thrown to report that the invoked business method could not be completed because a bad argument was provided.
ThresholdMonitorValueIteratorSyntaxpublic interface ThresholdMonitorValueIterator extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface manages the retrieval of multiple threshold monitor jobs.
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive pieces of the result in sizes that are defined by the client. The itera-tor keeps track of the client’s progress through the result set.
The semantics of the iterator are that it returns a snapshot of the data matching the criteria defined in thexpression at the moment the query was performed. If the underlying data is modified while the iterationprogress, it will not affect the behavior of the iterator or the values it contains.
For example the ThresholdMonitor interface supports an operation to retrieve all threshold monitoring jobgiven state. Code on the client side would look like the following:
156
ThresholdMonitorValueIterator
getNext(int)
ThresholdMonitorValueIterator tmvIterator;ThresholdMonitorValue[] tmvs; // Threshold monitoring job listtmsession = & // getting a reference to a threshold monitor bean.//retrieve all suspended threshold monitoring jobs//and provide at most 10 values in the initial set.tmvIterator = tmsession.getThresholdMonitors(null,ThresholdMonitorState.SUSPENDED, null);//retrieve the 10 initial threshold monitoring jobstmvs = tmvIterator.getNext( 10 );while (tmvs.size()) {
for( int I=0; I < tmvs.size(); I++) {// Resume the measurement jobs.tmsession.resume( tmvs[I].getThresholdMonitorKey() );
}tmvs = tmvIterator.getNext( 10 );
}tmvIterator.remove();
Author: Audrey Ward (taken from PerformanceMonitorValueIterator)
Version: 0.6, 2001-02-06
Methods
getNext(int)
public ThresholdMonitorValue152[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of threshold monitor jobs.
This method takes one argument that specifies the maximum number of items to be returned at one time.The implementation can decide to return less or the requested number of items.
If zero is specified, an empty list is returned.
If the iteration is empty or if it has reached the end, an empty list is returned.
If the argument is greater than the number of items in the iterator, then all or the implementation decidednumber of items are returned.
If the agreement plus the cursor of the iterator is greater than the number of items in the iterator, all or theimplementation decided number of items from the cursor to the end is returned.
Parameters:how_many - Maximum number of items to be returned, the implementation can decide to return less.
Member Summary
MethodsThresholdMonitor-
Value[]
getNext(int)157
void remove()158
157
TriggerRule
remove()
Returns: ThresholdMonitorValue[] List of threshold monitor jobs.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the iterator.
When the client has finished iterating through the collection, he shall call this operation to allow resourcesto be freed.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
javax.ejb.RemoveException - Is raised if the implementation is an EJB and removal of the EJB could not be done.
TriggerRuleSyntaxpublic interface TriggerRule extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionThe TriggerRule interface provides a mechanism for the configuration of rules that operate on the set of moni-tored components specified in a threshold monitor job. Alarms are triggered when a criteria specified by the rule is satisfied. All the rules defined in this interface are mutually exclusive. This interface is included to illustrate how the API could be extended to provide additional functionality. This interface is not implemented by the Reference Implementation.
Author: Audrey Ward
Version: 0.1, 2001-02-17
Member Summary
Fieldsint TRIGGER_RULE_ON_ALL_CROSSED159int TRIGGER_RULE_ON_ANY_CROSSED159int TRIGGER_RULE_ON_EACH_CROSSED159int TRIGGER_RULE_ON_NONE_CROSSED159
Methodsvoid setALLCrossed()159void setANYCrossed()159
158
TriggerRule
TRIGGER_RULE_ON_ALL_CROSSED
Fields
TRIGGER_RULE_ON_ALL_CROSSED
public static final int TRIGGER_RULE_ON_ALL_CROSSED
Constant for the rule that represents the setALLCrossed rule.
TRIGGER_RULE_ON_ANY_CROSSED
public static final int TRIGGER_RULE_ON_ANY_CROSSED
Constant for the rule that represents the setANYCrossed rule.
TRIGGER_RULE_ON_EACH_CROSSED
public static final int TRIGGER_RULE_ON_EACH_CROSSED
Constant for the rule that represents the setEACHCrossed rule.
TRIGGER_RULE_ON_NONE_CROSSED
public static final int TRIGGER_RULE_ON_NONE_CROSSED
Constant for the rule that represents the setNONECrossed rule.
Methods
setALLCrossed()
public void setALLCrossed()
This rule applies to the group of attributes defined in a threshold monitor job. If specifies that a singlethreshold alarm will be triggered when ALL of the its monitored components have reached a thresholdcrossed state. Another alarm will not be triggered until at least one of the monitored components hasreached the threshold cleared state. When this condition occurs, a threshold cleared alarm will be triggered.
setANYCrossed()
public void setANYCrossed()
void setEACHCrossed()160void setNONECrossed()160
Member Summary
159
TriggerRule
setEACHCrossed()
This rule applies to the group of attributes defined in a threshold monitor job. It specifies that a singlethreshold alarm will be triggered when ANY of its monitored components have reached a threshold crossedstate. Another alarm will not be triggered until ALL of the monitored components have reached the thresh-old cleared state. When this condition occurs, a threshold cleared alarm will be triggered.
setEACHCrossed()
public void setEACHCrossed()
Sets the rule that specifies that a threshold alarm will be triggered when ever any one of the monitoredattributes specified in the threshold monitor job has reached a threshold crossed state. Another alarm willnot be triggered for that attribute until it has reached a threshold cleared state. When this condition occurs,a threshold cleared alarm will be triggered. This rule is the default case when alarms are generated based onthe crossings of individual monitored attributes without considering the threshold crossings of otherattributes in the job.
setNONECrossed()
public void setNONECrossed()
This rule applies to the group of attributes defined in a threshold monitor job. It specifies that an alarm willbe triggered when NONE of its monitored components reach a threshold crossed state (the NOT of the set-ANYCrossed rule). Another alarm will not be triggered until at least ONE of its monitored componentshave reached the threshold crossed state. When this condition occurs, a threshold cleared alarm will be trig-gered. In other words, an alarm will be generated when all of the attributes are in a threshold cleared state.If any one of them goes to a threshold crossed state, a cleared alarm will be triggered.
160
C H A P T E R 10Package
javax.oss.pm.util
HourScheduleSyntaxpublic interface HourSchedule extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionThe daily schedule specifies the time periods during the day when the schedule is active.
The hour schedule consist of two arrays of start times and end times, which defines the intervals when the schedule shall be active. The start time and end time lie between 00.00 and 24.00 hours.
Author: Stefan Ýberg
Version: 0.2, 2001-02-15
Class Summary
Interfaces
DayOfWeekSchedule163 The day of week schedule specifies the weekly time frames during which the schedule will be active.
HourSchedule161 The daily schedule specifies the time periods during the day when the schedule is active.
ObservableObjectClassIterator169
This interface manages retrieval of multiple observable object classes.
ObservableObjectIterator167
This interface manages retrieval of distinguished names for multiple observable objects.
Schedule171 Specifies the time frames during which the schedule will be active.
Exceptions
IllegalStateException167
The IllegalStateException represents an exception that is thrown if an operation is per-formed on a measurement job that is in an illegal state with respect to the particular operation being performed.
161
HourSchedule
getStartTimes()
Methods
getStartTimes()
public java.util.Calendar[] getStartTimes()
Returns the start times when the daily schedule shall be active.
Returns: String[] Array of start times the daily schedule shall be active.
getStopTimes()
public java.util.Calendar[] getStopTimes()
Returns the stop times when the daily schedule shall not be active.
Returns: String[] Array of stop times the daily schedule shall not be active.
isActive()
public boolean isActive()
Checks if the schedule is active or not.
If the current time is within the defined schedule this method will return true. If the current time is outsidethe schedule false will be returned.
The check will use the following fields in the Calendar:
• Calendar.HOUR_OF_DAY, • Calendar.MINUTE, • Calendar.SECOND
and the time zone.
Returns: boolean Returns true if the schedule is active, else false.
setStartTimes(Calendar[])
public void setStartTimes(java.util.Calendar[] startTimes)
Sets the start times when the daily schedule shall be active.
Parameters:startTimes - Array of start times which defines when the daily schedule shall be active.
Member Summary
MethodsCalendar[] getStartTimes()162Calendar[] getStopTimes()162
boolean isActive()162void setStartTimes(Calendar[])162void setStopTimes(Calendar[])163
162
DayOfWeekSchedule
setStopTimes(Calendar[])
setStopTimes(Calendar[])
public void setStopTimes(java.util.Calendar[] stopTimes)
Sets the stop times when the daily schedule shall not be active.
Parameters:stopTimes - Array of stop times which defines when the daily schedule shall not be active.
DayOfWeekScheduleSyntaxpublic interface DayOfWeekSchedule extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionThe day of week schedule specifies the weekly time frames during which the schedule will be active.
Author: Stefan Ýberg
Version: 0.2, 2001-01-22
Member Summary
MethodsTimeZone getTimeZone()164boolean isActive()164boolean isFridayActive()164boolean isMondayActive()164boolean isSaturdayActive()164boolean isSundayActive()164boolean isThursdayActive()165boolean isTuesdayActive()165boolean isWednesdayActive()165
void setAllDaysActive()165void setFridayActive(boolean)165void setMondayActive(boolean)165void setSaturdayActive(boolean)165void setSundayActive(boolean)166void setThursdayActive(boolean)166void setTimeZone(TimeZone)166void setTuesdayActive(boolean)166void setWednesdayActive(boolean)166
163
DayOfWeekSchedule
getTimeZone()
Methods
getTimeZone()
public java.util.TimeZone getTimeZone()
Gets the time zone of the weekly schedule.
Returns: TimeZone The time zone of the weekly schedule.
isActive()
public boolean isActive()
Checks if the schedule is active or not.
If the current day of week is within the defined schedule this method will return true. If the current day ofweek is outside the schedule false will be returned.
Returns: boolean Returns true if the schedule is active, else false.
isFridayActive()
public boolean isFridayActive()
Indicate if the day of week schedule is active on Friday.
Returns: boolean Returns true if the day of week schedule is active on Friday, else it returns false.
isMondayActive()
public boolean isMondayActive()
Indicate if the day of week schedule is active on Monday.
Returns: boolean Returns true if the day of week schedule is active on Monday, else it returns false.
isSaturdayActive()
public boolean isSaturdayActive()
Indicate if the day of week schedule is active on Saturday.
Returns: boolean Returns true if the day of week schedule is active on Saturday, else it returns false.
isSundayActive()
public boolean isSundayActive()
Indicate if the day of week schedule is active on Sunday.
Returns: boolean Returns true if the day of week schedule is active on Sunday, else it returns false.
164
DayOfWeekSchedule
isThursdayActive()
isThursdayActive()
public boolean isThursdayActive()
Indicate if the day of week schedule is active on Thursday.
Returns: boolean Returns true if the day of week schedule is active on Thursday, else it returns false.
isTuesdayActive()
public boolean isTuesdayActive()
Indicate if the day of week schedule is active on Tuesday.
Returns: boolean Returns true if the day of week schedule is active on Tuesday, else it returns false.
isWednesdayActive()
public boolean isWednesdayActive()
Indicate if the day of week schedule is active on Wednesday.
Returns: boolean Returns true if the day of week schedule is active on Wednesday, else it returns false.
setAllDaysActive()
public void setAllDaysActive()
Sets all days of the week to be active in the day of weekly schedule.
setFridayActive(boolean)
public void setFridayActive(boolean fridayActive)
Sets if Friday shall be active in the day of weekly schedule.
Parameters:fridayActive - If true, Friday will be active in the day of weekly schedule. If false, Friday will not be active.
setMondayActive(boolean)
public void setMondayActive(boolean mondayActive)
Sets if Monday shall be active in the day of weekly schedule.
Parameters:mondayActive - If true, Monday will be active in the day of weekly schedule. If false, Monday will not be active.
setSaturdayActive(boolean)
public void setSaturdayActive(boolean saturdayActive)
Sets if Saturday shall be active in the day of weekly schedule.
165
DayOfWeekSchedule
setSundayActive(boolean)
Parameters:saturdayActive - If true, Saturday will be active in the day of weekly schedule. If false, Saturday will not be active.
setSundayActive(boolean)
public void setSundayActive(boolean sundayActive)
Sets if Sunday shall be active in the day of weekly schedule.
Parameters:sundayActive - If true, Sunday will be active in the day of weekly schedule. If false, Sunday will not be active.
setThursdayActive(boolean)
public void setThursdayActive(boolean thursdayActive)
Sets if Thursday shall be active in the day of weekly schedule.
Parameters:thursdayActive - If true, Thursday will be active in the day of weekly schedule. If false, Thursday will not be active.
setTimeZone(TimeZone)
public void setTimeZone(java.util.TimeZone tz)
Sets the time zone for the weekly schedule.
If the time zone is not set the local time zone will be used.
Parameters:tz - Time zone of the weekly schedule.
setTuesdayActive(boolean)
public void setTuesdayActive(boolean tuesdayActive)
Sets if Tuesday shall be active in the day of weekly schedule.
Parameters:tuesdayActive - If true, Tuesday will be active in the day of weekly schedule. If false, Tuesday will not be active.
setWednesdayActive(boolean)
public void setWednesdayActive(boolean wednesdayActive)
Sets if Wednesday shall be active in the day of weekly schedule.
Parameters:wednesdayActive - If true, Wednesday will be active in the day of weekly schedule. If false, Wednesday will not be active.
166
IllegalStateException
IllegalStateException()
IllegalStateExceptionSyntaxpublic class IllegalStateException extends java.lang.Exception
All Implemented Interfaces: java.io.Serializable
DescriptionThe IllegalStateException represents an exception that is thrown if an operation is performed on a measurement job that is in an illegal state with respect to the particular operation being performed.
Author: Stefan Ýberg
Version: 0.2, 2001-03-06
Constructors
IllegalStateException()
public IllegalStateException()
Constructs an IllegalStateException with no detail message
IllegalStateException(String)
public IllegalStateException(java.lang.String message)
Constructs an IllegalStateException with the specified detail message.
Parameters:message - The detail message.
ObservableObjectIteratorSyntaxpublic interface ObservableObjectIterator extends java.io.Serializable
Member Summary
ConstructorsIllegalStateException()167IllegalStateException(String)167
167
ObservableObjectIterator
IllegalStateException(String)
All Superinterfaces: java.io.Serializable
DescriptionThis interface manages retrieval of distinguished names for multiple observable objects.
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive batches of results in sizes determined by the client. The iterator keeps track of how far through the results the client has progressed.
The semantic of the iterator is that it is returning a snapshot of the data matching the query expression at the moment the query was performed. If the underlying data are modified while the iteration is in progress, it will not affect the behavior of the iterator or the data values of the iterator.
For example the PerformanceMonitor interface support an operation to retrieve all supported observable objects below a specific object. Code on the client side would look like this:
ObservableObjectIterator ooIterator;String[] ooDNs; // Observable object distinguished name listpmsession = & // getting a reference to a performance monitor bean.//retrieve all the observable objects//and provide at most 10 values in the initial set.ooIterator = pmsession.getObservableObjects(“cell”,
“network=Sweden, ”+“meController=MEC-Gbg-1, ”+“managedElement=RNC-Gbg-1, ”+“radioFunction=RF-1”);
//retrieve the 10 initial observable objectsooDNs = ooIterator.getNext( 10 );while(ooDNs.length) {
for( int I=0; I < ooDNs.length; I++) {System.out.println( ooDNs[I].toString() );
}ooDNs = ooIterator.getNext( 10 );
}ooIterator.remove();
Author: Stefan Ýberg
Version: 0.3, 2001-02-06
Member Summary
MethodsString[] getNext(int)169
void remove()169
168
ObservableObjectClassIterator
getNext(int)
Methods
getNext(int)
public java.lang.String[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of observable object distinguished names.
The function takes one argument that specifies the most number of items to return. The implementation candecide to return less or the requested number of items.
If zero is specified and empty list is returned.
If the iteration is empty or has reached then end, null is returned.
If the argument is greater than the number of item in the iterator then all or implementation decided numberof items are returned.
If the agreement plus the cursor of the iterator is greater than the number of item in the iterator, all or imple-mentation decided number of items from the cursor to the end is returned.
Parameters:how_many - Maximum of items to return, the implementation can decide to return less.
Returns: String[] List of observable object distinguished names.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the iterator.
When the client has finished iterating through the collection, he shall call this operation to allow resourcesto be freed.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
javax.ejb.RemoveException - Is raised if the implementation is an EJB and removal of the EJB could not be done.
ObservableObjectClassIteratorSyntaxpublic interface ObservableObjectClassIterator extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface manages retrieval of multiple observable object classes.
169
ObservableObjectClassIterator
getNext(int)
tion can
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive batches of results in sizes determined by the client. The iterator keeps track of how far through the results the client has progressed.
The semantic of the iterator is that it is returning a snapshot of the data matching the query expression at the moment the query was performed. If the underlying data are modified while the iteration is in progress, it will not affect the behavior of the iterator or the data values of the iterator.
For example the PerformanceMonitor interface support an operation to retrieve all supported observable object classes. Code on the client side would look like this:
ObservableObjectClassIterator oocIterator;String[] oocNames;pmsession = & // getting a reference to a performance monitor bean.//retrieve all the observable object classes//and provide at most 10 values in the initial set.oocIterator = pmsession.getObservableObjectClasses();//retrieve the 10 initial observable object classesoocNames = oocIterator.getNext( 10 );while(oocNames.length) {
for( int I=0; I < oocNames.length; I++) {System.out.println( oocNames[I]);
}oocNames = oocIterator.getNext( 10 );
}oocIterator.remove();
Author: Stefan Ýberg
Version: 0.3, 2001-02-06
Methods
getNext(int)
public java.lang.String[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of observable object classes names.
The function takes one argument that specifies the most number of items to return. The implementadecide to return less or the requested number of items.
If zero is specified and empty list is returned.
Member Summary
MethodsString[] getNext(int)170
void remove()171
170
Schedule
remove()
If the iteration is empty or has reached then end, null is returned.
If the argument is greater than the number of item in the iterator then all or implementation decided numberof items are returned.
If the agreement plus the cursor of the iterator is greater than the number of item in the iterator, all or imple-mentation decided number of items from the cursor to the end is returned.
Parameters:how_many - Maximum of items to return, the implementation can decide to return less.
Returns: String[] List of observable object class names.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurrs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the iterator.
When the client has finished iterating through the collection, he shall call this operation to allow resourcesto be freed.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurs.
javax.ejb.RemoveException - Is raised if the implementation is an EJB and removal of the EJB could not be done.
ScheduleSyntaxpublic interface Schedule extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionSpecifies the time frames during which the schedule will be active.
The schedule is active as soon as the start time - if supplied - is reached. The schedule remains active until the stop time - if supplied - is reached. If no stop time is specified the schedule will active indefinitely. The time frame defined by the schedule may contain one or more intervals. These intervals may repeat on a daily and/or weekly basis and specify the time periods during which the schedule is active. A daily schedule includes a start time and end time, which lie between 00.00 and 24.00 hours. If daily schedule is omitted, the schedule will run continuously through the day. If weekly schedule is omitted the schedule will run all days of the week. Alterna-tively the weekly schedule will indicate which days of the week the schedule will be active on.
The timer-synchronization between the client and the server is not part of this interface and is left over to the implementers. However the implementations need to handle different time zones.
Author: Stefan Ýberg
171
Schedule
getDailySchedule()
Version: 0.1, 2001-02-15
Methods
getDailySchedule()
public HourSchedule161 getDailySchedule()
Gets the daily schedule of the schedule.
Returns: HourSchedule The daily schedule of the schedule or null if daily schedule is not set.
getStartTime()
public java.util.Calendar getStartTime()
Returns the start time.
Returns: Date Start time of the schedule or null if the start time is not set.
getStopTime()
public java.util.Calendar getStopTime()
Returns the stop time of the schedule.
Returns: Date Stop time of the schedule or null if the stop time is not set.
getWeeklySchedule()
public DayOfWeekSchedule163 getWeeklySchedule()
Gets the weekly schedule of the schedule.
Returns: DayOfWeekSchedule The weekly schedule of the schedule or null if weekly schedule is not set.
Member Summary
MethodsHourSchedule getDailySchedule()172
Calendar getStartTime()172Calendar getStopTime()172
DayOfWeekSchedule getWeeklySchedule()172boolean isActive()173
void setDailySchedule(HourSchedule)173void setStartTime(Calendar)173void setStopTime(Calendar)173void setWeeklySchedule(DayOfWeekSchedule)173
172
Schedule
isActive()
isActive()
public boolean isActive()
Checks if the schedule is active or not.
If the current date and time is within the defined schedule this method will return true. If the current dateand time is outside the schedule false will be returned.
Returns: boolean Returns true if the schedule is active, else false.
setDailySchedule(HourSchedule)
public void setDailySchedule(HourSchedule161 dailySchedule)
Sets the daily schedule of the schedule.
The daily schedule specifies the time frames during the day that the schedule will be active. If daily sched-ule is omitted, the schedule will run continuously through the day.
If daily schedule is null the daily schedule will be cleared.
Parameters:dailySchedule - The daily schedule of the schedule.
setStartTime(Calendar)
public void setStartTime(java.util.Calendar startTime)
Sets the start time of the schedule.
The start time specifies when the schedule shall start to be active. If no start time is provided, the scheduleis active immediately.
If start time is null the start time will be cleared.
Parameters:startTime - Start time of the schedule.
setStopTime(Calendar)
public void setStopTime(java.util.Calendar stopTime)
Sets the stop time of the schedule.
The stop time specifies when the schedule shall stop. The schedule will remain active until the stop time - ifset - is reached. If no stop time is specified the schedule will be active indefinitely.
If stop time is null the stop time will be cleared.
Parameters:stopTime - Stop time of the measurement job.
setWeeklySchedule(DayOfWeekSchedule)
public void setWeeklySchedule(DayOfWeekSchedule163 weekSchedule)
Sets the weekly schedule of the schedule.
173
Schedule
setWeeklySchedule(DayOfWeekSchedule)
The weekly schedule specifies which day of the week the schedule will be active. If weekly schedule isomitted the schedule will run all days of the week.
If weekly schedule is null the weekly schedule will be cleared.
Parameters:weekSchedule - The weekly schedule of the schedule.
174
C H A P T E R 11Package
javax.oss.fm.monitorDescriptionThis package refers to systems capabilities to collect, maintain and forward alarm information that is received from the network.
The package defines an API for collecting alarms and synchronizing alarm data with Fault Management (FM) system. Additionally it is possible to change the acknowledgement state of the alarm - the operation that is useful for keeping track of alarms that are handled by the operator personnel or the management application. The functionality that this API provides is generally referred as “alarm monitoring” in the OSS domain.
The API can be used for providing standard interface between hierarchically higher- level FM system and a lower level FM system, or as an interface between FM system and more sophisticated network management application, such as Service Quality Manager.
Alarms and Fault Management A network element (NE) emits an alarm notification to the FM system when it’s self- checking routine has detected a possible fault in the NE. One defect in the NE can often cause several faults and therefore several alarms to be sent to the FM system.The FM system maintains Alarm List where all received alarms are stored. In addition to the collected alarm information, the Alarm List contains additional information for each alarm, such as alarm acknowledgement state, which is used for managing alarms.
When the NE detects that the possible fault in the NE has disappeared (e.g. as a consequence of circuit replacement done by maintenance personnel), it emits an ’alarm cleared’ notification to the FM system which can be correlated to the original alarm via alarmID-number. When both the perceived serverity of an alarm is ’CLEARED’ and alarm acknowledgement state is ’ACKNOWLEDGED’, the FM system may remove the alarm from Alarm List.
Note that an alarm explicitly mirrors a condition in the managed network element, and it’s therefore not meaningful to allow create or clear alarms by other means than by letting the NE do it. Therefore it’s not possible to create or clear alarms via this API.
API features The package defines the monitoring functions that Fault Management system shall support. The functions are:
• Acknowledge alarms in Alarm List; • Unacknowledge alarms in Alarm List; • Query Alarm List; • Query alarm count from Alarm List.
175
javax.oss.fm.monitor
Furthermore this package defines an Alarm Event and a List Rebuild Event used for keeping an alarm data between FM systems and clients consistent. These events are:
• New alarm (alarm event); • Changed alarm (alarm event); • Ack state changed (alarm event); • Cleared alarm (alarm event); • Alarm list rebuild event.
Function ’Acknowledge alarms in Alarm List’ The user of this API can set the alarm acknowledgement state for one or more alarms as ’ACKNOWLEDGED’ by using this function. The exact semantics of the alarm acknowledgement state and how the client should use it is not defined in this specification. However, the FM system is allowed to remove the alarm from Alarm List when it’s acknowledgement state set is ’ACKNOWLEDGED’ and perceived severity is ’CLEARED’. When this function has been executed, the FM system emits corresponding ’Ack state changed’ event.
Function ’Unacknowledge alarms in Alarm List’ The user of this API can set the alarm acknowledgement state for one or more alarms as ’UNACKNOWLEDGED’ by using this function. See the previous chapter ’Acknowledging alarms in Alarm List’ for more details about alarm acknowledgement state.
Function ’Query Alarm List’ The user of this API can retrieve Alarm List from FM system by using this function. The user may choose to retrieve all alarms, or it may ask to retrieve only a particular alarm subset by defining a set of query values that are used as an alarm filter. Alarms are retrieved by using the iterator-pattern.
This operation is designed to be used when a new alarm client has connected to the FM system and it needs to synchronize its empty alarm list with the FM system. Additionally the FM system may explicitly ask alarm clients to do alarm synchronization by emitting ’Alarm List Rebuild Event’. This is used when there have been such change in the Alarm List which can not be transferred to the alarm clients by other means such as alarm events.
Function ’Query alarm count from Alarm List’ The user of this API can retrieve the number of alarms in FM systems’ Alarm List by using this function. The user may choose to retrieve number of all alarms, or it may ask to retrieve only a number of alarms in particular alarm subset by defining a set of query values that are used as an alarm filter.
The main purpose of this function is to provide alarm client information about Alarm List and filter efficiency prior initiating alarm query. This is needed because the possible number of returned alarms can be very big in some systems. By calling this operation the alarm client can either be prepared to retrieve big number of alarms or it can define more efficient filter prior initiating the alarm query.
Alarm event ’NewAlarm’ API server notifies the subscribed API clients that a new alarm has been added into the Alarm List by sending an alarm which extended alarm type is ’NewAlarm’.
176
javax.oss.fm.monitor
Alarm event ’ChangedAlarm’ API server notifies subscribed API client regarding changes in e.g. perceived severity level in Alarm in Alarm List. The Alarm carried in the notification shall satisfy the current filter constraint of the subscription. The information carried in this notification contains all attributes that are filterable and are present in the original NewAlarmEvent.
Alarm event ’AckStateChanged’ API server notifies the subscribed API clients regarding changes in Alarm Acknowledgement State in Alarm in Alarm List via JMS. Prior receiving the al The Alarm carried in the event shall satisfy the current filter constraint of the subscription. If the alarm Acknowledgement State is changed to acknowledged, the Acknowledgement Information of the Alarm in Alarm List shall contain ackTime and ackState indicating acknowledged. It may contain ackUserId and ackSystemId. The Alarm carried in the event shall contain identical set of parameters as well. If the Acknowledgement State is changed to unacknowledged, the Acknowledgement Information of the Alarm in the Alarm List shall be absent or shall contain no information. The Alarm carried in the event shall have the Acknowledgement Information. It shall contain ackUserId, ackTime and ackState indicating unacknowledged. It may contain ackSystemId. The information carried in this notification contains all attributes that are filterable and are present in the original NewAlarmEvent.
Alarm event ’ClearedAlarm’ API server notifies subscribed API client of alarm clearing if the subject Alarm satisfies the optional filter constraint expressed in the subscribe operation. API server shall remove the Alarm whose perceivedSeverity is cleared and its Acknowledgement State is acknowledged from Alarm List. The information carried in this notification contains all attributes that are filterable and are present in the original NewAlarmEvent.
Event ’AlarmListRebuild’ API server maintains an Alarm List. If the API server rebuilds this list for any reason, it shall notify API client after the Alarm List is rebuilt. The conditions under which API client shall rebuild and the means by which API server shall rebuild its Alarm List are outside the scope of this API.
Package interfaces The fault monitor package consists of tree types of interfaces:
• EJB interfaces; • Value object interfaces; • Event interfaces.
<add object model figures here>
177
javax.oss.fm.monitor
ervice
on Set
.
.
Related documentation The following external documents are applicable for the specification:
• 3GPP TS 32.111-1: 3G Fault Management; Part 1: 3G Fault Management Requirements, R99; • 3GPP TS 32.111-2: 3G Fault Management; Part 2: Alarm Integration Reference Point: Information S
Version 1, R99; • 3GPP TS 32.106: 3G Fault Management; Part 3: Alarm Integration Reference Point: CORBA Soluti
Version 1:1, R99; • 3GPP TS 32.106-8 <for name convention regarding to distinguished name> • ITU-T Recommendation X.733; • ITU-T Recommendation X.736.
Class Summary
Interfaces
AlarmAckState179 This interface defines possible values for alarm acknowledgement state.
AlarmByFilterableAttributesQueryDesciptor180
This interface contains defionitions that are used for constructing alarm queries.
AlarmCountsValue181 This interface repesents number of alarms for each severity class gategory that are defined in javax.oss.fm.monitor.PerceivedSeverity interface.
AlarmEvent183 This interface represents the payload of the alarm event.
AlarmEventPropertyDescriptor184
The AlarmEventPropertyDescriptor interface is equivalent to an enumerated type - it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
AlarmListRebuiltEvent186
This interface presents the payload of the event that is sent when API server requests clients to re-syncronize alarm list.
AlarmListRebuiltEventPropertyDescriptor187
The AlarmListRebuildEventPropertyDescriptor interface is equivalent to an enumer-ated type - it is a public interface with string based static fields and is used to declare what event attributes are filterable and what are their types.
AlarmMonitor188 The AlarmMonitor refers to systems capabilities to collect, maintain and forward alarm information that is received from the network.
AlarmMonitorHome189 The Alarm Monitor Home interface is the factory to create new remote interfaces to Alarm Monitor beans.
AlarmMonitorMethods190 The AlarmMonitorMethods interface defines the business functions for the Alarm-Monitor remote interface and the bean implementation.
AlarmOperationResult194
This interface reperesents operation result ’bad alarm reference’.
AlarmType202 This interface identifies all TMN ITU-T defined alarm event types used by this API
AlarmValue195 Represents alarm attribute values.
AlarmValueIterator200 This interface manage retrival of alarm list.
AttributeValue204 This interface represents attribute value.
AttributeValueChange205
This interface represents changed attribute value including both old and new value
BackedUpStatusType206 It indicates if an object has a back up.
178
AlarmAckState
t
AlarmAckStateSyntaxpublic interface AlarmAckState extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface defines possible values for alarm acknowledgement state. The alarm acknowledgement state is a part of the alarm information that is stored in FM systems Alarm List. It is used for management purposes only to mark alarms that are handled by operator or client application. The state of the new alarm is always set as ’UNACKNOWLEDGED’. After the alarm perceived serverity is set as ’CLEARED’ and acknowledgemenstate as ’ACKNOWLEDGED’, the alarm can be removed from FM systems Alarm List.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: AlarmValue195
CorrelatedNotificationValue207
This interface represents correlated notification identifier.
ExtendedAlarmType208 This interface contains definitions for 3GPP defined event types used by this API.
FilterableAttributesValue209
The interface represents filterable alarm attribute values that are used as a filter in alarm query.
PerceivedSeverity212 This interface contains definitions for alarm severity classes.
ProbableCause213 This interface contains definions for probable causes that are used in reported alarms.
ThresholdIndicationType231
This interface contains definitions for threshold indication types.
TrendIndicationType232 This interface contains definitions for trend indication types for observed conditions.
Member Summary
Fieldsint ACKNOWLEDGED180int UNACKNOWLEDGED180
Class Summary
179
AlarmByFilterableAttributesQueryDesciptor
ACKNOWLEDGED
Fields
ACKNOWLEDGED
public static final int ACKNOWLEDGED
Operator or client application has marked the alarm as handled. E.g. after a new trouble ticket thataddresses the alarm has been created.
UNACKNOWLEDGED
public static final int UNACKNOWLEDGED
The alarm is currently not being handled by the operator or alarm client. This is the default state of the newalarm.
AlarmByFilterableAttributesQuery-DesciptorSyntaxpublic interface AlarmByFilterableAttributesQueryDesciptor extends QueryDescriptor244
All Superinterfaces: QueryDescriptor244
DescriptionThis interface contains defionitions that are used for constructing alarm queries.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: javax.oss.fm.AlarmMonitorMethods.getQueryTypes, javax.oss.fm.Alarm-MonitorMethods.makeQueryValue
Member Summary
FieldsString FILTERABLE_ATTRIBUTES_ARG_NAME181String FILTERABLE_ATTRIBUTES_ARG_TYPE181String QUERY_NAME_VALUE181
180
AlarmCountsValue
FILTERABLE_ATTRIBUTES_ARG_NAME
Fields
FILTERABLE_ATTRIBUTES_ARG_NAME
public static final java.lang.String FILTERABLE_ATTRIBUTES_ARG_NAME
String definition for filterable attributes argument name.
FILTERABLE_ATTRIBUTES_ARG_TYPE
public static final java.lang.String FILTERABLE_ATTRIBUTES_ARG_TYPE
String definition for filterable attributes argument interface type.
See Also: javax.oss.fm.FilterableAttributesValue
QUERY_NAME_VALUE
public static final java.lang.String QUERY_NAME_VALUE
Name of the AlarmByFilterrableAttributes query.
AlarmCountsValueSyntaxpublic interface AlarmCountsValue extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface repesents number of alarms for each severity class gategory that are defined in javax.oss.fm.monitor.PerceivedSeverity interface.
The interface defines return value for method javax.oss.fm.monitor.AlarmMonitorMethods.queryAlarmCount and it does not have other designed purpose.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: javax.oss.fm.monitor.AlarmMonitorMethods.queryAlarmCount, PerceivedSeverity212
Member Summary
Methodsint getClearedCount()182
181
AlarmCountsValue
getClearedCount()
Methods
getClearedCount()
public int getClearedCount()
Returns number of alarms which perceived severity classification is ’CLEARED’.
Returns: int - count
getCriticalCount()
public int getCriticalCount()
Returns number of alarms which perceived severity classification is ’CRITICAL’.
Returns: int - count
getIndeterminateCount()
public int getIndeterminateCount()
Returns number of alarms which perceived severity classification is ’INDETERMINATE’.
Returns: int - count
getMajorCount()
public int getMajorCount()
Returns number of alarms which perceived severity classification is ’MAJOR’.
Returns: int - count
getMinorCount()
public int getMinorCount()
Returns number of alarms which perceived severity classification is ’MINOR’.
Returns: int - count
getWarningCount()
public int getWarningCount()
int getCriticalCount()182int getIndeterminateCount()182int getMajorCount()182int getMinorCount()182int getWarningCount()182
Member Summary
182
AlarmEvent
getAlarm()
an be
Returns number of alarms which perceived severity classification is ’WARNING’.
Returns: int - count
AlarmEventSyntaxpublic interface AlarmEvent extends Event235
All Superinterfaces: java.lang.Cloneable, Event235, java.io.Serializable
DescriptionThis interface represents the payload of the alarm event. It is common to all alarm types.
Different alarm types are distinguished by the value of ExtendedAlarmType parameter attribute, which cread from every alarm event by invoking the getExtendedAlarmType() method.
Alarm types are defined in javas.oss.fm.monitor.ExtendedAlarmTypes interface.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: javax.oss.fm.monitor.AlarmEventPropertyDesrciptor, javas.oss.fm.monitor.ExtendedAlarmTypes, description for information how alarm events are used
Methods
getAlarm()
public AlarmValue195 getAlarm()
Returns the alarm information.
getExtendedAlarmType()
public java.lang.String getExtendedAlarmType()
Returns the extended alarm type that is used for distinguishing different type of alarm events.
Member Summary
MethodsAlarmValue getAlarm()183
String getExtendedAlarmType()183
183
AlarmEventPropertyDescriptor
EVENT_TYPE_VALUE
with es.
Valid return values are:
• ExtendedAlarmType.NEW_ALARM, • ExtendedAlarmType.ACK_STATE_CHANGE, • ExtendedAlarmType.CHANGED_ALARM, • ExtendedAlarmType.CLEARED_ALARM
AlarmEventPropertyDescriptorSyntaxpublic interface AlarmEventPropertyDescriptor extends EventPropertyDescriptor237
All Superinterfaces: EventPropertyDescriptor237, java.io.Serializable
DescriptionThe AlarmEventPropertyDescriptor interface is equivalent to an enumerated type - it is a public interfacestring based static fields and is used to declare what event attributes are filterable and what are their typ
Author: Juha Laine
Version: 0.7, 2001-04-23
Fields
EVENT_TYPE_VALUE
public static final java.lang.String EVENT_TYPE_VALUE
Name of event
Member Summary
FieldsString EVENT_TYPE_VALUE184String EXTENDED_ALARM_TYPE_PROP_NAME185String EXTENDED_ALARM_TYPE_PROP_TYPE185String MANAGED_OBJECT_CLASS_PROP_NAME185String MANAGED_OBJECT_CLASS_PROP_TYPE185String MANAGED_OBJECT_INSTANCE_PROP_NAME185String MANAGED_OBJECT_INSTANCE_PROP_TYPE185String PERCEIVED_SEVERITY_PROP_NAME185String PERCEIVED_SEVERITY_PROP_TYPE185
MethodsAlarmEvent fromJMS(Message)185
Message toJMS(AlarmEvent, Session)186
184
AlarmEventPropertyDescriptor
EXTENDED_ALARM_TYPE_PROP_NAME
EXTENDED_ALARM_TYPE_PROP_NAME
public static final java.lang.String EXTENDED_ALARM_TYPE_PROP_NAME
EXTENDED_ALARM_TYPE_PROP_TYPE
public static final java.lang.String EXTENDED_ALARM_TYPE_PROP_TYPE
MANAGED_OBJECT_CLASS_PROP_NAME
public static final java.lang.String MANAGED_OBJECT_CLASS_PROP_NAME
MANAGED_OBJECT_CLASS_PROP_TYPE
public static final java.lang.String MANAGED_OBJECT_CLASS_PROP_TYPE
MANAGED_OBJECT_INSTANCE_PROP_NAME
public static final java.lang.String MANAGED_OBJECT_INSTANCE_PROP_NAME
MANAGED_OBJECT_INSTANCE_PROP_TYPE
public static final java.lang.String MANAGED_OBJECT_INSTANCE_PROP_TYPE
PERCEIVED_SEVERITY_PROP_NAME
public static final java.lang.String PERCEIVED_SEVERITY_PROP_NAME
PERCEIVED_SEVERITY_PROP_TYPE
public static final java.lang.String PERCEIVED_SEVERITY_PROP_TYPE
Methods
fromJMS(Message)
public AlarmEvent183 fromJMS(javax.jms.Message msg)
Extract the payload from the JMS message.
Parameters:msg - Message to be converted to AlarmEvent.
Returns: AlarmEvent - Returns the payload of the message.
185
AlarmListRebuiltEvent
toJMS(AlarmEvent, Session)
toJMS(AlarmEvent, Session)
public javax.jms.Message toJMS(AlarmEvent183 payload, javax.jms.Session session)
Create new JMS message that can be sent on JMS with all properties set.
Parameters:payload - Content of the message.
session - Session needed for constructing the message.
Returns: Message - JMS object message with payload and the properties set.
AlarmListRebuiltEventSyntaxpublic interface AlarmListRebuiltEvent extends Event235
All Superinterfaces: java.lang.Cloneable, Event235, java.io.Serializable
DescriptionThis interface presents the payload of the event that is sent when API server requests clients to re-syncronize alarm list.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: desciption for information how AlarmListRebuild
Methods
getExtendedAlarmType()
public java.lang.String getExtendedAlarmType()
Returns the extended alarm type. Valid return values are:
• ExtendedAlarmType.ALARM_LIST_REBUILT.
Member Summary
MethodsString getExtendedAlarmType()186String getReason()187
186
AlarmListRebuiltEventPropertyDescriptor
getReason()
lic at are
getReason()
public java.lang.String getReason()
Returns reason for alarm list rebuild.
Returns: String - Alarm List rebuilt reason. One valid reason is “indeterminate”.
AlarmListRebuiltEventPropertyDe-scriptorSyntaxpublic interface AlarmListRebuiltEventPropertyDescriptor extends EventPropertyDescriptor237
All Superinterfaces: EventPropertyDescriptor237, java.io.Serializable
DescriptionThe AlarmListRebuildEventPropertyDescriptor interface is equivalent to an enumerated type - it is a pubinterface with string based static fields and is used to declare what event attributes are filterable and whtheir types.
Author: Juha Laine
Version: 0.7, 2001-04-23
Fields
EVENT_TYPE_VALUE
public static final java.lang.String EVENT_TYPE_VALUE
Event type.
Member Summary
FieldsString EVENT_TYPE_VALUE187
MethodsAlarmListRebuiltEvent fromJMS(Message)188
Message toJMS(AlarmListRebuiltEvent, Session)188
187
AlarmMonitor
fromJMS(Message)
d it’s t the new een cre-
ED’
wl-
Methods
fromJMS(Message)
public AlarmListRebuiltEvent186 fromJMS(javax.jms.Message msg)
Extract the payload from the JMS message.
Parameters:msg - Message to be converted to AlarmEvent.
Returns: AlarmListRebuiltEvent - Returns the payload of the message.
toJMS(AlarmListRebuiltEvent, Session)
public javax.jms.Message toJMS(AlarmListRebuiltEvent186 payload,
javax.jms.Session session)
Create new JMS message that can be sent on JMS with all properties set.
Parameters:payload - Content of the message.
session - Session needed for constructing the message.
Returns: Message - JMS object message with payload and the properties set.
AlarmMonitorSyntaxpublic interface AlarmMonitor extends javax.ejb.EJBObject, AlarmMonitorMethods190
All Superinterfaces: AlarmMonitorMethods190, javax.ejb.EJBObject, java.rmi.Remote
DescriptionThe AlarmMonitor refers to systems capabilities to collect, maintain and forward alarm information that is received from the network. The client can modify the alarm acknowledgement state. Other alarm information is received from the network and the client can not modify it through this API.
This inteface defines functions that alarm monitoring server shall support. These functions are:
• Acknowledge alarms • Unacknowledge alarms • Query Alarm List • Query alarm count from Alarm List
Acknowledge alarms - When a new alarm has been received from the network it is added to alarm list anacknowledgement state is set as unset. Client can then later set the state as ’acknowledged’ to mark thaalarm has been noticed and possible correcting actions has been started (e.g. a new trouble ticket has bated). An alarm which perceived severity is ’CLEARED’ and acknowledgement state is ’ACKNOWLEDGis removed from alarm list.
Unacknowledge alarms - Client can cancel the alarm acknowledgement e.g. in the case that it was acknoedged accidentally.
188
AlarmMonitorHome
toJMS(AlarmListRebuiltEvent, Session)
Query alarm list - Alarm monitoring system maintains alarm list. The client can query the alarm list and filter returned alarms by using query values.
Query alarm count from alarm list - The client can query the number of alarms in systems alarm list. The cli-ent can filter returned alarms using a set of query values. Because the systems alarm list can be very large, it may be necessary to query alarm count prior to quering the actual alarm list for testing that filtering constraints are efficient.
Author: Juha Laine
Version: 0.7, 2001-04-23
AlarmMonitorHomeSyntaxpublic interface AlarmMonitorHome extends javax.ejb.EJBHome
All Superinterfaces: javax.ejb.EJBHome, java.rmi.Remote
DescriptionThe Alarm Monitor Home interface is the factory to create new remote interfaces to Alarm Monitor beans.
The Alarm Monitor Home interface is registered in JNDI as part of the Alarm Monitor Beans deployment pro-cess. The AlarmMonitorHome is registered under naming attributes which can be used to find the Alarm-MonitorHome interface.
The following code illustrates how to find a AlarmMonitorHome interface.
Context initial = new InitialContext();java.lang.Object objref = initial.lookup(“Nokia/RAN/AlarmMonitor”);AlarmMonitorHome fmHome =(AlarmMonitorHome)PortableRemoteObject.narrow(objref, AlarmMon
itorHome.class);// Create the remote interface of Alarm MonitorAlarmMonitor fmSession = fmHome.create();// Do something
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
MethodsAlarmMonitorMethods create()190
189
AlarmMonitorMethods
create()
Methods
create()
public AlarmMonitorMethods190 create()
throws CreateException, java.rmi.RemoteException
Creates a new instance of the Alarm Monitor bean.
Returns: AlarmMonitor The remote interface to the new object.
Throws:CreateException - Is raised if a failure to create a new Alarm monitor bean.
java.rmi.RemoteException - Is raised when a unexpected system exception occurrs.
CreateException
AlarmMonitorMethodsSyntaxpublic interface AlarmMonitorMethods
All Known Subinterfaces: AlarmMonitor188
DescriptionThe AlarmMonitorMethods interface defines the business functions for the AlarmMonitor remote interface and the bean implementation.
By providing the business operations in a seperat interface allows the bean implementators to get compile time checks that their bean will work with the remote interface.
The AlarmMonitorMethods interface provides operations for basic alarm monitoring. Client can retrieve alarm list from server and acknowledge alarms through this interface.
Client can also retrieve necessary information for receiving OSS notifications from the server.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
MethodsEventPropertyDescrip-
tor
getEventDescriptor(String)191
String[] getEventTypes()191String[] getQueryTypes()191String[] getSupportedOptionalOperations()191
QueryValue makeQueryValue(String)192AlarmCountsValue queryAlarmCounts(QueryValue[])192
190
AlarmMonitorMethods
getEventDescriptor(String)
Methods
getEventDescriptor(String)
public EventPropertyDescriptor237 getEventDescriptor(java.lang.String event_type)
throws javax.oss.UnsupportedOperationException, java.rmi.RemoteException
Get the Event Descriptor associated with an event type Valid input parameters are returned by getEvent-Types()
Throws:UnsupportedOperationException244 - - Is raised if this operation is not supported.
java.rmi.RemoteException - - Is raised when a unexpected system exception occurs.
getEventTypes()
public java.lang.String[] getEventTypes()
throws java.rmi.RemoteException
Get the event type names supported by the session component.
All implementations must support at least event types AlarmEventProperty-Desciptor.EVENT_TYPE_VALUE and AlarmListRebuildEventProperty-Desciptor.EVENT_TYPE_VALUE.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
getQueryTypes()
public java.lang.String[] getQueryTypes()
throws java.rmi.RemoteException
Get query types supported by the session component. All implementations must support at least query typeAlarmByFilterableAlarmAttributesQueryDesciptor.QUERY_NAME_VALUE.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
getSupportedOptionalOperations()
public java.lang.String[] getSupportedOptionalOperations()
throws java.rmi.RemoteException
AlarmValueIterator queryAlarmList(QueryValue[])192AlarmOperationRe-
sult[]
tryAcknowledgeAlarms(String[], String, int)193
AlarmOperationRe-sult[]
tryUnacknowledgeAlarms(String[], String, int)194
Member Summary
191
AlarmMonitorMethods
makeQueryValue(String)
Id )
are
tQuery-
tion.
arm-
ries
Get the supported optional operations.
Some of the operations on the alarm monitor bean are optional. This operation gives information on whichoptional operations are implemented and will not throw UnsupportedOperationException.
The following operation prototypes can be returned:
• BadAlarmReferenceValue[] unacknowledgeAlarms( String[], String ackUserId, String ackSystem
Returns: String[] List of operation names that will not throw UnsupportedOperationException, if theycalled.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
makeQueryValue(String)
public QueryValue244 makeQueryValue(java.lang.String type)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Create a Query Value instance matching a Query type. Valid input parameters are returned by geTypes().
Throws:IllegalArgumentException239 - - Is raised when a bad argument is provided.
java.rmi.RemoteException - - Is raised when a unexpected system exception occurs.
queryAlarmCounts(QueryValue[])
public AlarmCountsValue181 queryAlarmCounts(QueryValue244[] query)
throws javax.oss.IllegalArgumentException, java.rmi.RemoteException
Returns amount of Alarms kept in server.
Possible usage is to find out the number of Alarms in Alarm List before invoking GetAlarmList opera
Note: All implementations must support at least the query type defined in AlarmByFilterableAlAttributesQueryDesciptor.
Parameters:query - Defines filter that is used for selecting certain alarms from alarm list. Multiple query-entare concatenated with logical OR operation. Empty list denotes that all alarms are selected.
Returns: AlarmCounts - amount of Alarms in server’s Alarm Information List. The datastructure AlarmCounts contains own count for each alarm severity type.
Throws:IllegalArgumentException239 - - Is raised when a bad argument is provided.
java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
queryAlarmList(QueryValue[])
public AlarmValueIterator200 queryAlarmList(QueryValue244[] query)
throws java.rmi.RemoteException
Returns alarm list. Number of retrieved alarms can be reduced by defining filter templates.
192
AlarmMonitorMethods
tryAcknowledgeAlarms(String[], String, int)
serId
rver is
passing
s but t is a
Note: implementations must support at least the query type defined in AlarmByFilterableAttributesQuery-Desciptor.
Parameters:query - Defines filter that is used for selecting certain alarms from alarm list. Multiple query-entries are concatenated with logical OR operation. Empty list denotes that all alarms are selected.
Returns: AlarmValueIterator - iterator for retrieving returned alarms.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
CreateException, IllegalArgumentException239
See Also: AlarmValueIterator200
tryAcknowledgeAlarms(String[], String, int)
public AlarmOperationResult194[] tryAcknowledgeAlarms(java.lang.String[]
alarmReferenceList, java.lang.String ackUserId, int returnMode)
throws java.rmi.RemoteException
Acknowledges one or more alarms in server’s Alarm List.
The function registers the time of operation in ackTime in Alarm in Alarm List. It also registers ackUin Alarm. It sets ackState to acknowledged as well.
The ackTime, ackUserId and ackState are collectively called Acknowledgement Information.
As a result of this operation the server will emit message about Acknowledgement Information.
Note that the time of acknowledgement is not parameter in this function. The internal time of the seused when the function call is made instead.
If client needs to ack lots of alarms it is recommended to call this method several times instead of very long alarm reference list in one function call.
Parameters:alarmReferenceList - Carries one or more identifiers (alarmIDs) identifying Alarm in Alarm List. Each identifier identifies at most one Alarm in Alarm List.
ackUserId - user identifier for the person who acknowledged the alarm. NULL denotes that theparameter is not used.
Returns: AlarmOperationResult[] - Bad alarm reference (alarmID) list, if the list is empty, the call hatotally succeeded. It identifies Alarms that are not present in Alarm List or that they are present,Acknowledgement Information has not changed, in contrast to clients request. Element of this lispair of Alarm Reference (alarm ID) and reason.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
IllegalArgumentException239
See Also: javax.oss.ReturnMode
193
AlarmOperationResult
tryUnacknowledgeAlarms(String[], String, int)
te to
re ack-
passing
n
s but t is a
nd a rea-
ble rea-
tryUnacknowledgeAlarms(String[], String, int)
public AlarmOperationResult194[] tryUnacknowledgeAlarms(java.lang.String[]
alarmReferenceList, java.lang.String ackUserId, int returnMode)
throws java.rmi.RemoteException
Removes acknowledgement information from one or more alarms in server’s Alarm List.
The function clears ackTime in Alarm in Alarm List. It also clears ackUserId in Alarm. It sets ackStaunacknowledged as well.
The ackTime, ackUserId and ackState are collectively called Acknowledgement Information.
As a result of this operation the server will emit message about Acknowledgement Information, wheState is set “unacknowledged”.
If client needs to ack lots of alarms it is recommended to call this method several times instead of very long alarm reference list in one function call.
Parameters:alarmReferenceList - Carries one or more identifiers (alarmIDs) identifying Alarm Informatioin Alarm List. Each identifier identifies at most one Alarm in Alarm List.
ackUserId - user identifier for the person who acknowledged the alarm.
Returns: AlarmOperationResult[] - Bad alarm reference (alarmID) list, if the list is empty, the call hatotally succeeded. It identifies Alarms that are not present in Alarm List or that they are present,Acknowledgement Information has not changed, in contrast to clients request. Element of this lispair of Alarm Reference (alarm ID) and reason.
Throws:java.rmi.RemoteException - - Is raised when a unexpected system exception occurrs.
UnsupportedOperationException244, IllegalArgumentException239
See Also: javax.oss.ReturnMode
AlarmOperationResultSyntaxpublic interface AlarmOperationResult extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface reperesents operation result ’bad alarm reference’. It contains both bad alarm reference ason.
The datastructure used for transfering bad alarm reference which consists of alarm ID and human readason for failure.
This inteface is explicitly designed to be used as a return value for functions javax.oss.fm.monitor.try-AcknowledgeAlarms and javax.oss.fm.monitor.tryUnacknowledgeAlarms only.
Author: Juha Laine
194
AlarmValue
getAlarmReference()
Version: 0.7, 2001-04-23
See Also: javax.oss.fm.monitor.tryAcknowledgeAlarms
Methods
getAlarmReference()
public java.lang.String getAlarmReference()
Returns alarm reference.
Returns: String - Alarm reference (AlarmID).
getReason()
public java.lang.String getReason()
Returns reason if the operation was not successfull.
Returns: String - Human readable reason, empty if the operation was successfull.
isSuccess()
public java.lang.Boolean isSuccess()
Indicates if the operation targeted for the alarm reference was successfull.
Returns: Boolean - True if operation succeeded.
AlarmValueSyntaxpublic interface AlarmValue extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionRepresents alarm attribute values.
Member Summary
MethodsString getAlarmReference()195String getReason()195Boolean isSuccess()195
195
AlarmValue
getAckTime()
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: AlarmValueIterator200
Methods
getAckTime()
public java.lang.String getAckTime()
Returns ack time.
It identifies the time of last operation acknowledgeAlarms or unacknowledgeAlarms. It is mandatory for’AckStateChanged’- alarm, it is optional for other alarms.
Optional
getAckUserId()
public java.lang.String getAckUserId()
Member Summary
MethodsString getAckTime()196String getAckUserId()196String getAdditionalText()197short getAlarmAckState()197
String getAlarmId()197String getAlarmType()197
AttributeVal-ueChange[]
getAttributeChanges()197
boolean getBackedUpStatus()198String getBackUpObject()198
CorrelatedNotifica-tionValue[]
getCorrelatedNotifications()198
Date getEventTime()198String getManagedObjectClass()198String getManagedObjectInstance()198
AttributeValue[] getMonitoredAttributes()199short getPerceivedSeverity()199short getProbableCause()199
String getProposedRepairActions()199String getSpecificProblem()199String getSystemDN()200String getTrendIndication()200String getTresholdIndication()200
196
AlarmValue
getAdditionalText()
ther
n con-
knowl-’Ack-
Returns ack user ID
It identifies the last user who has changeed the Acknowledgement state via operation tryAcknowledge-Alarms or tryUnacknowledgeAlarms. It is mandatory for ’AckStateChanged’-alarm, it is optional for oalarms.
Optional
getAdditionalText()
public java.lang.String getAdditionalText()
Returns additional text
It provides the identity of the NE (e.g. RNC, Node-B) from which the alarm has been originated. It catain further information on the alarm.
Optional
getAlarmAckState()
public short getAlarmAckState()
Returns alarm ack state.
It identifies the Acknowledgement State of the alarm. Its valid values are acknowledged and unacedged. Predefined values are defined in javax.oss.fm.monitor.AlarmAckState.It is mandatory for StateChanged’-alarm, it is optional for other alarms.
Optional
getAlarmId()
public java.lang.String getAlarmId()
Returns alarm ID.
It identifies at most one Alarm information in the Alarm List.
Mandatory
getAlarmType()
public java.lang.String getAlarmType()
Returns alarm type.
It identifies alarm type, see event type in 3G TS 32.106-2.
Mandatory
getAttributeChanges()
public AttributeValueChange205[] getAttributeChanges()
Returns attribute changes.
Optional
197
AlarmValue
getBackedUpStatus()
getBackedUpStatus()
public boolean getBackedUpStatus()
Returns backed up status.
It indicates if an object has a back up. See definition in ITU-T Recommendation X.733 [2] clause 8.1.2.4.
Optional
getBackUpObject()
public java.lang.String getBackUpObject()
Returns back up object.
It carries the DN of the back up object. It shall be absent if backUpStatus is absent or its value indicatesfalse. See definition in ITU-T Recommendation X.733 clause 8.1.2.5.
Optional
getCorrelatedNotifications()
public CorrelatedNotificationValue207[] getCorrelatedNotifications()
Returns correlated notifications.
It identifies a set of notifications to which this notification is considered to be correlated. See definition inITU-T Recommendation X.733 clause 8.1.2.9.
Optional
getEventTime()
public java.util.Date getEventTime()
Returns event time.
Mandatory
getManagedObjectClass()
public java.lang.String getManagedObjectClass()
Returns managed object class.
This parameter specifies the class of the Managed Object (MO) in which the network event occurred.
Mandatory
getManagedObjectInstance()
public java.lang.String getManagedObjectInstance()
Returns managed object instance.
This parameter specifies the instance of the MO in which the network event occurred.
Mandatory
198
AlarmValue
getMonitoredAttributes()
getMonitoredAttributes()
public AttributeValue204[] getMonitoredAttributes()
Returns monitored attributes.
Optional
getPerceivedSeverity()
public short getPerceivedSeverity()
Returns perceived severity
It indicates the relative level of urgency for operator attention. Legal values are Critical, Major, Minor,Warning, Indeterminate and Cleared, according to ITU-T Recommendation X.733. Predefined values aredefined in javax.oss.fm.monitor.PerceivedSeverity. This API does not recommend the use of indeterminate.
Mandatory
getProbableCause()
public short getProbableCause()
Returns probable cause.
It qualifies alarm and provides further information than eventType. See javax.oss.fm.methods.Probable-Cause. This list is extensive. It is recommended that EMS/NEM should use the list as is and not to extend it.It is noted that EMS/NEM can privately (outside the scope of this API) define values for specificProblemthat provides semantics not conveyed by ProbableCause. A special ProbableCause value ( 1) indicates thatthis alternative is valid. This parameter- attribute value shall be single-value and of simple type such asinteger or string. See definition in ITU-T Recommendation X.733 clause 8.1.2.1.
Mandatory
getProposedRepairActions()
public java.lang.String getProposedRepairActions()
Returns proposed repair actions.
See definition in ITU-T Recommendation X.733 clause 8.1.2.12.
Optional
getSpecificProblem()
public java.lang.String getSpecificProblem()
Returns specific problem.
It provides further qualification on the alarm than probableCause. This parameter-attribute value shall besingle-value and of simple type such as integer or string. See definition in ITU-T Recommendation X.733clause 8.1.2.2.
Optional
199
AlarmValueIterator
getSystemDN()
getSystemDN()
public java.lang.String getSystemDN()
Returns system DN.
It carries the Distinguished Name (DN) of EMS or NEM that detects the network event and generates thenotification. See 3G TS 32.106-8 for name convention regarding DN.
Optional
getTrendIndication()
public java.lang.String getTrendIndication()
Returns trend indication It indicates if some observed condition is getting better, worse, or not changing.Legal values are less severe, no change and more severe. Predefined values are defined injavax.oss.fm.monitor.TrendIndication. See definition in ITU-T Recommendation X.733 clause 8.1.2.6.
Optional
getTresholdIndication()
public java.lang.String getTresholdIndication()
Returns threshold indication
It indicates if the threshold crossed was in the up or down direction. Predefined values are defined injavax.oss.fm.monitor.ThresholdIndicationType. See definition in ITU-T Recommendation X.733 clause8.1.2.7.
Optional
AlarmValueIteratorSyntaxpublic interface AlarmValueIterator extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface manage retrival of alarm list.
Because the query operation could potentially return large amounts of data, the iterator design pattern is used for returning the results. An iterator is an object that is created to contain the results of an operation. The client receives a reference to the iterator as part of the information returned by the query operation. The client then invokes operations on the iterator to receive batches of results in sizes determined by the client. The iterator keeps track of how far through the results the client has progressed.
The semantic of the iterator is that it is returning a snapshot of the data matching the query expression at the moment the query was performed. If the underlying data are modified while the iteration is in progress, it will not affect the behavior of the iterator or the data values of the iterator.
200
AlarmValueIterator
getNext(int)
For example the AlarmMonitor interface support an operation to retrieve alarm list with a specific filterable attribute values. Code on the client side would look like this:
AlarmValueIterator avIterator;AlarmValue[] avs; // Alarm value listQueryValue[] qv; // empty filterfmsession = & // getting a reference to a performance monitor bean.//retrieve whole alarm list using empty query value//and provide at most 10 values in the initial set.avIterator = fmsession.queryAlarmList( qv );//retrieve the 10 initial alarmsavs = avIterator.getNext( 10 );while(avs.size()) {
for( int I=0; I < avs.size(); I++) {// handle alarms// ...
}avs = avIterator.getNext( 10 );
}avIterator.remove();
Author: Juha Laine
Version: 0.7, 2001-04-23
Methods
getNext(int)
public AlarmValue195[] getNext(int how_many)
throws java.rmi.RemoteException
Returns a list of alarms.
The function takes one argument that specifies the most number of items to return. The implementation candecide to return less or the requested number of items.
If zero is specified and empty list is returned.
If the iteration is empty or has reached then end, null is returned.
If the argument is greater than the number of item in the iterator then all or implementation decided numberof items are returned.
If the agreement plus the cursor of the iterator is greater than the number of item in the iterator, all or imple-mentation decided number of items from the cursor to the end is returned.
Member Summary
MethodsAlarmValue[] getNext(int)201
void remove()202
201
AlarmType
remove()
Parameters:how_many - Maximum of items to return, the implementation can decide to return less.
Returns: AlarmValue[] List of alarms.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurrs.
remove()
public void remove()
throws java.rmi.RemoteException, javax.ejb.RemoveException
Remove the the iterator.
Remove is called when, when the client has finished iterating through the collection to allow resources tobe deallocated.
Throws:java.rmi.RemoteException - Is raised when a unexpected system exception occurrs.
javax.ejb.RemoveException - Is raised if the implemention is an EJB and removal of the EJB could not be done.
AlarmTypeSyntaxpublic interface AlarmType extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface identifies all TMN ITU-T defined alarm event types used by this API. Their semantics are defined by ITU-T. Their encodings for this API are defined here.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
FieldsString COMMUNICATIONS_ALARM203String ENVIRONMENTAL_ALARM203String EQUIPMENT_ALARM203String INTEGRITY_VIOLATION203String OPERATIONAL_VIOLATION203String PHYSICAL_VIOLATION203String PROCESSING_ERROR_ALARM203String QUALITY_OF_SERVICE_ALARM204
202
AlarmType
COMMUNICATIONS_ALARM
Fields
COMMUNICATIONS_ALARM
public static final java.lang.String COMMUNICATIONS_ALARM
Communications alarm (ITU-T Recommendation X.733).
ENVIRONMENTAL_ALARM
public static final java.lang.String ENVIRONMENTAL_ALARM
Environmental alarm (ITU-T Recommendation X.733).
EQUIPMENT_ALARM
public static final java.lang.String EQUIPMENT_ALARM
Equipment Alarm (ITU-T Recommendation X.733).
INTEGRITY_VIOLATION
public static final java.lang.String INTEGRITY_VIOLATION
Integrity Violation alarm (ITU-T Recommendation X.736).
OPERATIONAL_VIOLATION
public static final java.lang.String OPERATIONAL_VIOLATION
OperationalViolation alarm (ITU-T Recommendation X.736).
PHYSICAL_VIOLATION
public static final java.lang.String PHYSICAL_VIOLATION
PhysicalViolation alarm (ITU-T Recommendation X.736).
PROCESSING_ERROR_ALARM
public static final java.lang.String PROCESSING_ERROR_ALARM
Processing error alarm (ITU-T Recommendation X.733).
String SECURITY_VIOLATION204String TIME_DOMAIN_VIOLATION204
Member Summary
203
AttributeValue
QUALITY_OF_SERVICE_ALARM
QUALITY_OF_SERVICE_ALARM
public static final java.lang.String QUALITY_OF_SERVICE_ALARM
Quality of Service alarm (ITU-T Recommendation X.733).
SECURITY_VIOLATION
public static final java.lang.String SECURITY_VIOLATION
Security Violation alarm (ITU-T Recommendation X.736).
TIME_DOMAIN_VIOLATION
public static final java.lang.String TIME_DOMAIN_VIOLATION
Time Domain Violation alarm (ITU-T Recommendation X.736).
AttributeValueSyntaxpublic interface AttributeValue extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface represents attribute value.
Author: Juha Laine
Version: 0.7, 2001-04-23
Methods
getAttributeName()
public java.lang.String getAttributeName()
Member Summary
MethodsString getAttributeName()204String getAttributeType()205Object getValue()205
204
AttributeValueChange
getAttributeType()
Returns attribute name which is needed for encoding value.
Returns: String - Attribute name.
getAttributeType()
public java.lang.String getAttributeType()
Returns attribute type which is needed for encoding value.
Returns: String - Attribute type.
getValue()
public java.lang.Object getValue()
Retunrs attribute value.
Returns: Object - Attribute value.
AttributeValueChangeSyntaxpublic interface AttributeValueChange extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface represents changed attribute value including both old and new value.
It is used in a changed alarm event to report changed attribute value.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
MethodsString getAttributeName()206String getAttributeType()206Object getNewValue()206Object getOldValue()206
205
BackedUpStatusType
getAttributeName()
Methods
getAttributeName()
public java.lang.String getAttributeName()
Returns attribute name which is needed for encoding the value.
Returns: String - attribute name.
getAttributeType()
public java.lang.String getAttributeType()
Returns attribute type which is needed for encoding the value.
Returns: String - attribute name.
getNewValue()
public java.lang.Object getNewValue()
Returns new attribute value.
Returns: Object - new value.
getOldValue()
public java.lang.Object getOldValue()
Returns old attribute value.
Returns: Object - old value.
BackedUpStatusTypeSyntaxpublic interface BackedUpStatusType extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionIt indicates if an object has a back up.
True implies backep up. False implies not backed up.
Author: Juha Laine
Version: 0.7, 2001-04-23
206
CorrelatedNotificationValue
OBJECT_IS_BACKED_UP
Fields
OBJECT_IS_BACKED_UP
public static final boolean OBJECT_IS_BACKED_UP
Object is backed up.
OBJECT_IS_NOT_BACKED_UP
public static final boolean OBJECT_IS_NOT_BACKED_UP
Object is not backed up.
CorrelatedNotificationValueSyntaxpublic interface CorrelatedNotificationValue extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface represents correlated notification identifier. Correlated notifications in one server can be distin-guished using pair of notification ID and managed object instance.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
Fieldsboolean OBJECT_IS_BACKED_UP207boolean OBJECT_IS_NOT_BACKED_UP207
Member Summary
MethodsString getManagedObjectInstance()208String getNotificationId()208
207
ExtendedAlarmType
getManagedObjectInstance()
Methods
getManagedObjectInstance()
public java.lang.String getManagedObjectInstance()
Returns managed object instance.
Returns: String - Managed object instance.
getNotificationId()
public java.lang.String getNotificationId()
Returns notification ID.
Returns: String - Notifiction ID.
ExtendedAlarmTypeSyntaxpublic interface ExtendedAlarmType extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface contains definitions for 3GPP defined event types used by this API.
Author: Juha Laine
Version: 0.7, 2001-04-23
See Also: AlarmEvent183
Member Summary
FieldsString ACK_STATE_CHANGED209String ALARM_LIST_REBUILT209String CHANGED_ALARM209String CLEARED_ALARM209String NEW_ALARM209
208
FilterableAttributesValue
ACK_STATE_CHANGED
l AND-
Fields
ACK_STATE_CHANGED
public static final java.lang.String ACK_STATE_CHANGED
Predefined string to identify ’AckStateChanged’.
ALARM_LIST_REBUILT
public static final java.lang.String ALARM_LIST_REBUILT
Predefined string to identify ’AlarmListRebuild’.
CHANGED_ALARM
public static final java.lang.String CHANGED_ALARM
Predefined string to identify ’ChangedAlarm’.
CLEARED_ALARM
public static final java.lang.String CLEARED_ALARM
Predefined string to identify ’ClearedAlarm’.
NEW_ALARM
public static final java.lang.String NEW_ALARM
Predefined string to identify ’NewAlarm’.
FilterableAttributesValueSyntaxpublic interface FilterableAttributesValue extends QueryValue244
All Superinterfaces: java.lang.Cloneable, QueryValue244, java.io.Serializable
DescriptionThe interface represents filterable alarm attribute values that are used as a filter in alarm query.
Filterable parameter attributes inside one FilterableAttributesValue object are concatenated using logicaoperation and multiple FilterableAttributesValue objects are concatenated using logical OR-operation.
Author: Juha Laine
Version: 0.7, 2001-04-23
209
FilterableAttributesValue
getAlarmAckState()
See Also: javax.oss.fm.monitor.AlarmMonitorMethods.queryAlarms, javax.oss.fm.monitor.AlarmMonitorMethods.queryAlarmCount
Methods
getAlarmAckState()
public short getAlarmAckState()
Retunrs alarm ack state.
Returns: short - alarm ack state
See Also: AlarmAckState179
getAlarmType()
public java.lang.String getAlarmType()
Returns event type.
Returns: string - event type
See Also: AlarmType202
getManagedObjectClass()
public java.lang.String getManagedObjectClass()
Returns managed object class.
Returns: string - managed object class
getManagetObjectInstance()
public java.lang.String getManagetObjectInstance()
Member Summary
Methodsshort getAlarmAckState()210
String getAlarmType()210String getManagedObjectClass()210String getManagetObjectInstance()210short getPerceivedSeverity()211
boolean isAlarmAckStateSet()211boolean isAlarmTypeSet()211boolean isManagedObjectClassSet()211boolean isManagetObjectInstanceSet()211boolean isPerceivedSeveritySet()211
210
FilterableAttributesValue
getPerceivedSeverity()
Returns managed object instance.
Returns: string - managed object instance
getPerceivedSeverity()
public short getPerceivedSeverity()
Returns perceived severity.
Returns: short - perceived severity
See Also: PerceivedSeverity212
isAlarmAckStateSet()
public boolean isAlarmAckStateSet()
Returns true if value of alarm ack state is set.
Returns: boolean - true if value is set
isAlarmTypeSet()
public boolean isAlarmTypeSet()
Returns true if value of managed object class is set.
Returns: boolean - true if value is set
isManagedObjectClassSet()
public boolean isManagedObjectClassSet()
Returns true if value of managed object class is set.
Returns: boolean - true if value is set
isManagetObjectInstanceSet()
public boolean isManagetObjectInstanceSet()
Returns true if value of managed object instance is set.
Returns: boolean - true if value is set
isPerceivedSeveritySet()
public boolean isPerceivedSeveritySet()
Returns true if value of perceived severity is set.
Returns: boolean - true if value is set
211
PerceivedSeverity
CLEARED
PerceivedSeveritySyntaxpublic interface PerceivedSeverity extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface contains definitions for alarm severity classes.
Author: Juha Laine
Version: 0.7, 2001-04-23
Fields
CLEARED
public static final short CLEARED
CRITICAL
public static final short CRITICAL
INDETERMINATE
public static final short INDETERMINATE
MAJOR
public static final short MAJOR
Member Summary
Fieldsshort CLEARED212short CRITICAL212short INDETERMINATE212short MAJOR212short MINOR213short WARNING213
212
ProbableCause
MINOR
MINOR
public static final short MINOR
WARNING
public static final short WARNING
ProbableCauseSyntaxpublic interface ProbableCause extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface contains definions for probable causes that are used in reported alarms.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
Fieldsshort A_BIS_TO_BTS_INTERFACE_FAILURE217short A_BIS_TO_TRX_INTERFACE_FAILURE217short ADAPTER_ERROR217short AIR_COMPRESSOR_FAILURE217short AIR_CONDITIONING_FAILURE217short AIR_DRYER_FAILURE217short ALARM_INDICATION_SIGNAL217short ANTENNA_PROBLEM217short APPLICATION_SUBSYSTEM_FAILURE217short BACK_PLANE_FAILURE217short BANDWIDTH_REDUCTION217short BATTERY_BREAKDOWN218short BATTERY_CHARGING_FAULT218short BATTERY_DISCHARGING218short BATTERY_FAILURE218short BROADCAST_CHANNEL_FAILURE218short CALL_ESTABLISHMENT_ERROR218short CALL_SETUP_FAILURE218short CLOCK_SYNCHRONISATION_PROBLEM218short COMBINER_PROBLEM218short COMMERICAL_POWER_FAILURE218short COMMUNICATION_PROTOCOL_ERROR218
213
ProbableCause
WARNING
short COMMUNICATION_SUBSYSTEM_FAILURE218short CONFIGURATION_OR_CUSTOMIZING_ERROR219short CONGESTION219short COOLING_FAN_FAILURE219short COOLING_SYSTEM_FAILURE219short CORRUPT_DATA_M3100219short CPU_CYCLES_LIMIT_EXCEEDED219short DATA_SET_OR_MODEM_ERROR219short DATA_SET_PROBLEM219short DATABASE_INCONSISTENCY219short DEGRADED_SIGNAL_M3100219short DISK_PROBLEM219short DTE_DCE_INTERFACE_ERROR219short ENCLOSURE_DOOR_OPEN_M3100220short ENGINE_FAILURE220short EQUIPMENT_IDENTIFIER_DUPLICATION220short EQUIPMENT_MALFUNCTION220short EXCESSIVE_BIT_ERROR_RATE220short EXCESSIVE_RECEIVER_TEMPERATURE220short EXCESSIVE_TRANSMITTER_OUTPUT_POWER220short EXCESSIVE_TRANSMITTER_TEMPERATURE220short EXCESSIVE_VIBRATION220short EXPLOSIVE_GAS220short EXTERNAL_DEVICE_PROBLEM220short EXTERNAL_EQUIPMENT_FAILURE220short EXTERNAL_POWER_SUPPLY_FAILURE221short EXTERNAL_TRANSMISSION_DEVICE_FAILURE221short FAR_END_RECEIVER_FAILURE221short FILE_ERROR221short FILE_SYSTEM_CALL_UNSUCCESSFUL221short FIRE221short FIRE_DETECTOR_FAILURE221short FLOOD221short FRAMING_ERROR_M3100221short FREQUENCY_HOPPING_DEGRADED221short FREQUENCY_HOPPING_FAILURE221short FREQUENCY_REDEFINITION_FAILED221short FUSE_FAILURE222short GENERATOR_FAILURE222short HEATING_OR_VENTILATION_OR_COOLING_SYSTEM_PROBLEM222short HIGH_HUMIDITY222short HIGH_TEMPERATURE222short HIGH_WIND222short HUMIDITY_UNACCEPTABLE222short ICE_BUILD_UP222short INDETERMINATE222short INPUT_DEVICE_ERROR222short INPUT_OUTPUT_DEVICE_ERROR222short INPUT_PARAMETER_OUT_OF_RANGE222short INVALID_MESSAGE_RECEIVED223short INVALID_MSU_RECEIVED223short INVALID_PARAMETER223
Member Summary
214
ProbableCause
WARNING
short INVALID_POINTER223short LAN_ERROR223short LAPD_LINK_PROTOCOL_FAILURE223short LEAK_DETECTION223short LINE_CARD_PROBLEM223short LINE_INTERFACE_FAILURE223short LINK_FAILURE223short LOCAL_ALARM_INDICATION223short LOCAL_NODE_TRANSMISSION_ERROR223short LOSS_OF_FRAME224short LOSS_OF_MULTI_FRAME224short LOSS_OF_POINTER224short LOSS_OF_SIGNAL224short LOSS_OF_SYNCHRONISATION224short LOST_REDUNDANCY224short LOW_BATTERY_THRESHOLD224short LOW_CABLE_PRESSURE224short LOW_FUEL224short LOW_HUMIDITY224short LOW_TEMPERATURE224short LOW_WATER224short MAINS_BREAKDOWN_WITH_BATTERY_BACKUP225short MAINS_BREAKDOWN_WITHOUT_BATTERY_BACKUP225short MATERIAL_SUPPLY_EXHAUSTED225short MEMORY_MISMATCH225short MESSAGE_NOT_EXPECTED225short MESSAGE_NOT_INITIALISED225short MESSAGE_OUT_OF_SEQUENCE225short MULTIPLEXER_PROBLEM_M3100225short NE_IDENTIFIER_DUPLICATION225short OUT_OF_CPU_CYCLES225short OUT_OF_MEMORY225short OUTPUT_DEVICE_ERROR225short PATH_TRACE_MISMATCH226short PAYLOAD_TYPE_MISMATCH226short PERFORMANCE_DEGRADED226short POWER_PROBLEM_M3100226short POWER_SUPPLY_FAILURE226short PRESSURE_UNACCEPTABLE226short PROCESSOR_PROBLEM_M3100226short PROTECTION_PATH_FAILURE226short PUMP_FAILURE_M3100226short QUEUE_SIZE_EXCEEDED226short RECEIVE_FAILURE226short RECEIVER_ANTENNA_FAULT226short RECEIVER_FAILURE_M3100227short RECEIVER_MULTICOUPLER_FAILURE227short RECTIFIER_FAILURE227short RECTIFIER_HIGH_VOLTAGE227short RECTIFIER_LOW_F_VOLTAGE227short RECUCED_LOGGING_CAPABILITY227short REDUCED_ALARM_REPORTING227
Member Summary
215
ProbableCause
WARNING
short REDUCED_EVENT_REPORTING227short REDUCED_TRANSMITTER_OUTPUT_POWER227short REMOTE_ALARM_INDICATION227short REMOTE_ALARM_INTERFACE227short REMOTE_NODE_TRANSMISSION_ERROR227short REPLACEABLE_UNIT_MISSING228short REPLACEABLE_UNIT_PROBLEM228short REPLACEABLE_UNIT_TYPE_MISMATCH228short RESOURCE_AT_OR_NEARING_CAPACITY228short RESPONSE_TIME_EXCESSIVE228short RETRANSMISSION_RATE_EXCESSIVE228short ROUTING_FAILURE228short SIGNAL_LABEL_MISMATCH228short SIGNAL_QUALITY_EVALUATION_FAULT228short SMOKE228short SOFTWARE_DOWNLOAD_FAILURE228short SOFTWARE_ENVIRONMENT_PROBLEM228short SOFTWARE_ERROR229short SOFTWARE_PROGRAM_ABNORMALLY_TERMINATED229short SOFTWARE_PROGRAM_ERROR229short SS7_PROTOCOL_FAILURE229short STORAGE_CAPACITY_PROBLEM_M3100229short SYNCHRONISATION_SOURCE_MISMATCH229short SYSTEM_CALL_UNSUCCESSFUL229short SYSTEM_RESOURCES_OVERLOAD229short TEMPERATURE_UNACCEPTABLE229short TERMINAL_PROBLEM229short THRESHOLD_CROSSED229short TIMEOUT_EXPIRED229short TIMESLOT_HARDWARE_FAILURE230short TIMING_PROBLEM_M3100230short TOXIC_GAS230short TOXIC_LEAK_DETECTED230short TRANSCEIVER_PROBLEM230short TRANSCODER_OR_RATE_ADAPTER_PROBLEM230short TRANSCODER_PROBLEM230short TRANSMISSION_ERROR230short TRANSMISSION_FAILURE230short TRANSMIT_FAILURE230short TRANSMITTER_ANTENNA_FAILURE230short TRANSMITTER_ANTENNA_NOT_ADJUSTED230short TRANSMITTER_FAILURE_M3100231short TRANSMITTER_LOW_VOLTAGE_OR_CURRENT231short TRANSMITTER_OFF_FREQUENCY231short TRUNK_CARD_PROBLEM231short UNAVAILABLE231short UNDERLYING_RESOURCE_UNAVAILABLE231short VARIABLE_OUT_OF_RANGE231short WATCH_DOG_TIMER_EXPIRED231short VENTILATION_SYSTEM_FAILURE231short VERSION_MISMATCH231
Member Summary
216
ProbableCause
A_BIS_TO_BTS_INTERFACE_FAILURE
Fields
A_BIS_TO_BTS_INTERFACE_FAILURE
public static final short A_BIS_TO_BTS_INTERFACE_FAILURE
A_BIS_TO_TRX_INTERFACE_FAILURE
public static final short A_BIS_TO_TRX_INTERFACE_FAILURE
ADAPTER_ERROR
public static final short ADAPTER_ERROR
AIR_COMPRESSOR_FAILURE
public static final short AIR_COMPRESSOR_FAILURE
AIR_CONDITIONING_FAILURE
public static final short AIR_CONDITIONING_FAILURE
AIR_DRYER_FAILURE
public static final short AIR_DRYER_FAILURE
ALARM_INDICATION_SIGNAL
public static final short ALARM_INDICATION_SIGNAL
ANTENNA_PROBLEM
public static final short ANTENNA_PROBLEM
APPLICATION_SUBSYSTEM_FAILURE
public static final short APPLICATION_SUBSYSTEM_FAILURE
BACK_PLANE_FAILURE
public static final short BACK_PLANE_FAILURE
BANDWIDTH_REDUCTION
public static final short BANDWIDTH_REDUCTION
217
ProbableCause
BATTERY_BREAKDOWN
BATTERY_BREAKDOWN
public static final short BATTERY_BREAKDOWN
BATTERY_CHARGING_FAULT
public static final short BATTERY_CHARGING_FAULT
BATTERY_DISCHARGING
public static final short BATTERY_DISCHARGING
BATTERY_FAILURE
public static final short BATTERY_FAILURE
BROADCAST_CHANNEL_FAILURE
public static final short BROADCAST_CHANNEL_FAILURE
CALL_ESTABLISHMENT_ERROR
public static final short CALL_ESTABLISHMENT_ERROR
CALL_SETUP_FAILURE
public static final short CALL_SETUP_FAILURE
CLOCK_SYNCHRONISATION_PROBLEM
public static final short CLOCK_SYNCHRONISATION_PROBLEM
COMBINER_PROBLEM
public static final short COMBINER_PROBLEM
COMMERICAL_POWER_FAILURE
public static final short COMMERICAL_POWER_FAILURE
COMMUNICATION_PROTOCOL_ERROR
public static final short COMMUNICATION_PROTOCOL_ERROR
COMMUNICATION_SUBSYSTEM_FAILURE
public static final short COMMUNICATION_SUBSYSTEM_FAILURE
218
ProbableCause
CONFIGURATION_OR_CUSTOMIZING_ERROR
CONFIGURATION_OR_CUSTOMIZING_ERROR
public static final short CONFIGURATION_OR_CUSTOMIZING_ERROR
CONGESTION
public static final short CONGESTION
COOLING_FAN_FAILURE
public static final short COOLING_FAN_FAILURE
COOLING_SYSTEM_FAILURE
public static final short COOLING_SYSTEM_FAILURE
CORRUPT_DATA_M3100
public static final short CORRUPT_DATA_M3100
CPU_CYCLES_LIMIT_EXCEEDED
public static final short CPU_CYCLES_LIMIT_EXCEEDED
DATA_SET_OR_MODEM_ERROR
public static final short DATA_SET_OR_MODEM_ERROR
DATA_SET_PROBLEM
public static final short DATA_SET_PROBLEM
DATABASE_INCONSISTENCY
public static final short DATABASE_INCONSISTENCY
DEGRADED_SIGNAL_M3100
public static final short DEGRADED_SIGNAL_M3100
DISK_PROBLEM
public static final short DISK_PROBLEM
DTE_DCE_INTERFACE_ERROR
public static final short DTE_DCE_INTERFACE_ERROR
219
ProbableCause
ENCLOSURE_DOOR_OPEN_M3100
ENCLOSURE_DOOR_OPEN_M3100
public static final short ENCLOSURE_DOOR_OPEN_M3100
ENGINE_FAILURE
public static final short ENGINE_FAILURE
EQUIPMENT_IDENTIFIER_DUPLICATION
public static final short EQUIPMENT_IDENTIFIER_DUPLICATION
EQUIPMENT_MALFUNCTION
public static final short EQUIPMENT_MALFUNCTION
EXCESSIVE_BIT_ERROR_RATE
public static final short EXCESSIVE_BIT_ERROR_RATE
EXCESSIVE_RECEIVER_TEMPERATURE
public static final short EXCESSIVE_RECEIVER_TEMPERATURE
EXCESSIVE_TRANSMITTER_OUTPUT_POWER
public static final short EXCESSIVE_TRANSMITTER_OUTPUT_POWER
EXCESSIVE_TRANSMITTER_TEMPERATURE
public static final short EXCESSIVE_TRANSMITTER_TEMPERATURE
EXCESSIVE_VIBRATION
public static final short EXCESSIVE_VIBRATION
EXPLOSIVE_GAS
public static final short EXPLOSIVE_GAS
EXTERNAL_DEVICE_PROBLEM
public static final short EXTERNAL_DEVICE_PROBLEM
EXTERNAL_EQUIPMENT_FAILURE
public static final short EXTERNAL_EQUIPMENT_FAILURE
220
ProbableCause
EXTERNAL_POWER_SUPPLY_FAILURE
EXTERNAL_POWER_SUPPLY_FAILURE
public static final short EXTERNAL_POWER_SUPPLY_FAILURE
EXTERNAL_TRANSMISSION_DEVICE_FAILURE
public static final short EXTERNAL_TRANSMISSION_DEVICE_FAILURE
FAR_END_RECEIVER_FAILURE
public static final short FAR_END_RECEIVER_FAILURE
FILE_ERROR
public static final short FILE_ERROR
FILE_SYSTEM_CALL_UNSUCCESSFUL
public static final short FILE_SYSTEM_CALL_UNSUCCESSFUL
FIRE
public static final short FIRE
FIRE_DETECTOR_FAILURE
public static final short FIRE_DETECTOR_FAILURE
FLOOD
public static final short FLOOD
FRAMING_ERROR_M3100
public static final short FRAMING_ERROR_M3100
FREQUENCY_HOPPING_DEGRADED
public static final short FREQUENCY_HOPPING_DEGRADED
FREQUENCY_HOPPING_FAILURE
public static final short FREQUENCY_HOPPING_FAILURE
FREQUENCY_REDEFINITION_FAILED
public static final short FREQUENCY_REDEFINITION_FAILED
221
ProbableCause
FUSE_FAILURE
FUSE_FAILURE
public static final short FUSE_FAILURE
GENERATOR_FAILURE
public static final short GENERATOR_FAILURE
HEATING_OR_VENTILATION_OR_COOLING_SYSTEM_PROBLEM
public static final short HEATING_OR_VENTILATION_OR_COOLING_SYSTEM_PROBLEM
HIGH_HUMIDITY
public static final short HIGH_HUMIDITY
HIGH_TEMPERATURE
public static final short HIGH_TEMPERATURE
HIGH_WIND
public static final short HIGH_WIND
HUMIDITY_UNACCEPTABLE
public static final short HUMIDITY_UNACCEPTABLE
ICE_BUILD_UP
public static final short ICE_BUILD_UP
INDETERMINATE
public static final short INDETERMINATE
INPUT_DEVICE_ERROR
public static final short INPUT_DEVICE_ERROR
INPUT_OUTPUT_DEVICE_ERROR
public static final short INPUT_OUTPUT_DEVICE_ERROR
INPUT_PARAMETER_OUT_OF_RANGE
public static final short INPUT_PARAMETER_OUT_OF_RANGE
222
ProbableCause
INVALID_MESSAGE_RECEIVED
INVALID_MESSAGE_RECEIVED
public static final short INVALID_MESSAGE_RECEIVED
INVALID_MSU_RECEIVED
public static final short INVALID_MSU_RECEIVED
INVALID_PARAMETER
public static final short INVALID_PARAMETER
INVALID_POINTER
public static final short INVALID_POINTER
LAN_ERROR
public static final short LAN_ERROR
LAPD_LINK_PROTOCOL_FAILURE
public static final short LAPD_LINK_PROTOCOL_FAILURE
LEAK_DETECTION
public static final short LEAK_DETECTION
LINE_CARD_PROBLEM
public static final short LINE_CARD_PROBLEM
LINE_INTERFACE_FAILURE
public static final short LINE_INTERFACE_FAILURE
LINK_FAILURE
public static final short LINK_FAILURE
LOCAL_ALARM_INDICATION
public static final short LOCAL_ALARM_INDICATION
LOCAL_NODE_TRANSMISSION_ERROR
public static final short LOCAL_NODE_TRANSMISSION_ERROR
223
ProbableCause
LOSS_OF_FRAME
LOSS_OF_FRAME
public static final short LOSS_OF_FRAME
LOSS_OF_MULTI_FRAME
public static final short LOSS_OF_MULTI_FRAME
LOSS_OF_POINTER
public static final short LOSS_OF_POINTER
LOSS_OF_SIGNAL
public static final short LOSS_OF_SIGNAL
LOSS_OF_SYNCHRONISATION
public static final short LOSS_OF_SYNCHRONISATION
LOST_REDUNDANCY
public static final short LOST_REDUNDANCY
LOW_BATTERY_THRESHOLD
public static final short LOW_BATTERY_THRESHOLD
LOW_CABLE_PRESSURE
public static final short LOW_CABLE_PRESSURE
LOW_FUEL
public static final short LOW_FUEL
LOW_HUMIDITY
public static final short LOW_HUMIDITY
LOW_TEMPERATURE
public static final short LOW_TEMPERATURE
LOW_WATER
public static final short LOW_WATER
224
ProbableCause
MAINS_BREAKDOWN_WITH_BATTERY_BACKUP
MAINS_BREAKDOWN_WITH_BATTERY_BACKUP
public static final short MAINS_BREAKDOWN_WITH_BATTERY_BACKUP
MAINS_BREAKDOWN_WITHOUT_BATTERY_BACKUP
public static final short MAINS_BREAKDOWN_WITHOUT_BATTERY_BACKUP
MATERIAL_SUPPLY_EXHAUSTED
public static final short MATERIAL_SUPPLY_EXHAUSTED
MEMORY_MISMATCH
public static final short MEMORY_MISMATCH
MESSAGE_NOT_EXPECTED
public static final short MESSAGE_NOT_EXPECTED
MESSAGE_NOT_INITIALISED
public static final short MESSAGE_NOT_INITIALISED
MESSAGE_OUT_OF_SEQUENCE
public static final short MESSAGE_OUT_OF_SEQUENCE
MULTIPLEXER_PROBLEM_M3100
public static final short MULTIPLEXER_PROBLEM_M3100
NE_IDENTIFIER_DUPLICATION
public static final short NE_IDENTIFIER_DUPLICATION
OUT_OF_CPU_CYCLES
public static final short OUT_OF_CPU_CYCLES
OUT_OF_MEMORY
public static final short OUT_OF_MEMORY
OUTPUT_DEVICE_ERROR
public static final short OUTPUT_DEVICE_ERROR
225
ProbableCause
PATH_TRACE_MISMATCH
PATH_TRACE_MISMATCH
public static final short PATH_TRACE_MISMATCH
PAYLOAD_TYPE_MISMATCH
public static final short PAYLOAD_TYPE_MISMATCH
PERFORMANCE_DEGRADED
public static final short PERFORMANCE_DEGRADED
POWER_PROBLEM_M3100
public static final short POWER_PROBLEM_M3100
POWER_SUPPLY_FAILURE
public static final short POWER_SUPPLY_FAILURE
PRESSURE_UNACCEPTABLE
public static final short PRESSURE_UNACCEPTABLE
PROCESSOR_PROBLEM_M3100
public static final short PROCESSOR_PROBLEM_M3100
PROTECTION_PATH_FAILURE
public static final short PROTECTION_PATH_FAILURE
PUMP_FAILURE_M3100
public static final short PUMP_FAILURE_M3100
QUEUE_SIZE_EXCEEDED
public static final short QUEUE_SIZE_EXCEEDED
RECEIVE_FAILURE
public static final short RECEIVE_FAILURE
RECEIVER_ANTENNA_FAULT
public static final short RECEIVER_ANTENNA_FAULT
226
ProbableCause
RECEIVER_FAILURE_M3100
RECEIVER_FAILURE_M3100
public static final short RECEIVER_FAILURE_M3100
RECEIVER_MULTICOUPLER_FAILURE
public static final short RECEIVER_MULTICOUPLER_FAILURE
RECTIFIER_FAILURE
public static final short RECTIFIER_FAILURE
RECTIFIER_HIGH_VOLTAGE
public static final short RECTIFIER_HIGH_VOLTAGE
RECTIFIER_LOW_F_VOLTAGE
public static final short RECTIFIER_LOW_F_VOLTAGE
RECUCED_LOGGING_CAPABILITY
public static final short RECUCED_LOGGING_CAPABILITY
REDUCED_ALARM_REPORTING
public static final short REDUCED_ALARM_REPORTING
REDUCED_EVENT_REPORTING
public static final short REDUCED_EVENT_REPORTING
REDUCED_TRANSMITTER_OUTPUT_POWER
public static final short REDUCED_TRANSMITTER_OUTPUT_POWER
REMOTE_ALARM_INDICATION
public static final short REMOTE_ALARM_INDICATION
REMOTE_ALARM_INTERFACE
public static final short REMOTE_ALARM_INTERFACE
REMOTE_NODE_TRANSMISSION_ERROR
public static final short REMOTE_NODE_TRANSMISSION_ERROR
227
ProbableCause
REPLACEABLE_UNIT_MISSING
REPLACEABLE_UNIT_MISSING
public static final short REPLACEABLE_UNIT_MISSING
REPLACEABLE_UNIT_PROBLEM
public static final short REPLACEABLE_UNIT_PROBLEM
REPLACEABLE_UNIT_TYPE_MISMATCH
public static final short REPLACEABLE_UNIT_TYPE_MISMATCH
RESOURCE_AT_OR_NEARING_CAPACITY
public static final short RESOURCE_AT_OR_NEARING_CAPACITY
RESPONSE_TIME_EXCESSIVE
public static final short RESPONSE_TIME_EXCESSIVE
RETRANSMISSION_RATE_EXCESSIVE
public static final short RETRANSMISSION_RATE_EXCESSIVE
ROUTING_FAILURE
public static final short ROUTING_FAILURE
SIGNAL_LABEL_MISMATCH
public static final short SIGNAL_LABEL_MISMATCH
SIGNAL_QUALITY_EVALUATION_FAULT
public static final short SIGNAL_QUALITY_EVALUATION_FAULT
SMOKE
public static final short SMOKE
SOFTWARE_DOWNLOAD_FAILURE
public static final short SOFTWARE_DOWNLOAD_FAILURE
SOFTWARE_ENVIRONMENT_PROBLEM
public static final short SOFTWARE_ENVIRONMENT_PROBLEM
228
ProbableCause
SOFTWARE_ERROR
SOFTWARE_ERROR
public static final short SOFTWARE_ERROR
SOFTWARE_PROGRAM_ABNORMALLY_TERMINATED
public static final short SOFTWARE_PROGRAM_ABNORMALLY_TERMINATED
SOFTWARE_PROGRAM_ERROR
public static final short SOFTWARE_PROGRAM_ERROR
SS7_PROTOCOL_FAILURE
public static final short SS7_PROTOCOL_FAILURE
STORAGE_CAPACITY_PROBLEM_M3100
public static final short STORAGE_CAPACITY_PROBLEM_M3100
SYNCHRONISATION_SOURCE_MISMATCH
public static final short SYNCHRONISATION_SOURCE_MISMATCH
SYSTEM_CALL_UNSUCCESSFUL
public static final short SYSTEM_CALL_UNSUCCESSFUL
SYSTEM_RESOURCES_OVERLOAD
public static final short SYSTEM_RESOURCES_OVERLOAD
TEMPERATURE_UNACCEPTABLE
public static final short TEMPERATURE_UNACCEPTABLE
TERMINAL_PROBLEM
public static final short TERMINAL_PROBLEM
THRESHOLD_CROSSED
public static final short THRESHOLD_CROSSED
TIMEOUT_EXPIRED
public static final short TIMEOUT_EXPIRED
229
ProbableCause
TIMESLOT_HARDWARE_FAILURE
TIMESLOT_HARDWARE_FAILURE
public static final short TIMESLOT_HARDWARE_FAILURE
TIMING_PROBLEM_M3100
public static final short TIMING_PROBLEM_M3100
TOXIC_GAS
public static final short TOXIC_GAS
TOXIC_LEAK_DETECTED
public static final short TOXIC_LEAK_DETECTED
TRANSCEIVER_PROBLEM
public static final short TRANSCEIVER_PROBLEM
TRANSCODER_OR_RATE_ADAPTER_PROBLEM
public static final short TRANSCODER_OR_RATE_ADAPTER_PROBLEM
TRANSCODER_PROBLEM
public static final short TRANSCODER_PROBLEM
TRANSMISSION_ERROR
public static final short TRANSMISSION_ERROR
TRANSMISSION_FAILURE
public static final short TRANSMISSION_FAILURE
TRANSMIT_FAILURE
public static final short TRANSMIT_FAILURE
TRANSMITTER_ANTENNA_FAILURE
public static final short TRANSMITTER_ANTENNA_FAILURE
TRANSMITTER_ANTENNA_NOT_ADJUSTED
public static final short TRANSMITTER_ANTENNA_NOT_ADJUSTED
230
ThresholdIndicationType
TRANSMITTER_FAILURE_M3100
TRANSMITTER_FAILURE_M3100
public static final short TRANSMITTER_FAILURE_M3100
TRANSMITTER_LOW_VOLTAGE_OR_CURRENT
public static final short TRANSMITTER_LOW_VOLTAGE_OR_CURRENT
TRANSMITTER_OFF_FREQUENCY
public static final short TRANSMITTER_OFF_FREQUENCY
TRUNK_CARD_PROBLEM
public static final short TRUNK_CARD_PROBLEM
UNAVAILABLE
public static final short UNAVAILABLE
UNDERLYING_RESOURCE_UNAVAILABLE
public static final short UNDERLYING_RESOURCE_UNAVAILABLE
VARIABLE_OUT_OF_RANGE
public static final short VARIABLE_OUT_OF_RANGE
WATCH_DOG_TIMER_EXPIRED
public static final short WATCH_DOG_TIMER_EXPIRED
VENTILATION_SYSTEM_FAILURE
public static final short VENTILATION_SYSTEM_FAILURE
VERSION_MISMATCH
public static final short VERSION_MISMATCH
ThresholdIndicationTypeSyntaxpublic interface ThresholdIndicationType extends java.io.Serializable
231
TrendIndicationType
DOWN
ossed
ate if
All Superinterfaces: java.io.Serializable
DescriptionThis interface contains definitions for threshold indication types. It’s possible to indicate if the threshold crwas in the up or down direction.
Author: Juha Laine
Version: 0.7, 2001-04-23
Fields
DOWN
public static final java.lang.String DOWN
UP
public static final java.lang.String UP
TrendIndicationTypeSyntaxpublic interface TrendIndicationType extends java.io.Serializable
All Superinterfaces: java.io.Serializable
DescriptionThis interface contains definitions for trend indication types for observed conditions. It’s possible to indicsome observed condition is getting better, worse, or not changing.
Author: Juha Laine
Version: 0.7, 2001-04-23
Member Summary
FieldsString DOWN232String UP232
232
TrendIndicationType
LESS_SEVERE
Fields
LESS_SEVERE
public static final java.lang.String LESS_SEVERE
MORE_SEVERE
public static final java.lang.String MORE_SEVERE
NO_CHANGE
public static final java.lang.String NO_CHANGE
Member Summary
FieldsString LESS_SEVERE233String MORE_SEVERE233String NO_CHANGE233
233
TrendIndicationType
NO_CHANGE
234
C H A P T E R 12Package
javax.oss
EventSyntaxpublic interface Event extends java.io.Serializable, java.lang.Cloneable
All Known Subinterfaces: AlarmEvent183, AlarmListRebuiltEvent186, BaseEvent44, PerformanceDataEvent51, PerformanceDataAvailableEvent49
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
Class Summary
Interfaces
Event235
EventPropertyDescriptor237
ManagedEntityKey240
ManagedEntityValue241
QueryDescriptor244
QueryValue244
Version245 Version provides information describing the version number.
Exceptions
IllegalArgumentException239
UnsupportedOperationException244
Member Summary
MethodsString getAdminDomain()236String getEventTime()236String getEventType()236
235
Event
getAdminDomain()
Methods
getAdminDomain()
public java.lang.String getAdminDomain()
getEventTime()
public java.lang.String getEventTime()
getEventType()
public java.lang.String getEventType()
getNotificationId()
public java.lang.String getNotificationId()
getSourceIndicator()
public java.lang.String getSourceIndicator()
setAdminDomain(String)
public void setAdminDomain(java.lang.String nid)
Throws:IllegalArgumentException
setEventTime(String)
public void setEventTime(java.lang.String utc_time)
Throws:IllegalArgumentException
String getNotificationId()236String getSourceIndicator()236
void setAdminDomain(String)236void setEventTime(String)236
String setEventType(String)237void setNotificationId(String)237void setSourceIndicator(String)237
Member Summary
236
EventPropertyDescriptor
setEventType(String)
setEventType(String)
public java.lang.String setEventType(java.lang.String event_type)
Throws:IllegalArgumentException
setNotificationId(String)
public void setNotificationId(java.lang.String nid)
Throws:IllegalArgumentException
setSourceIndicator(String)
public void setSourceIndicator(java.lang.String si)
Throws:IllegalArgumentException
EventPropertyDescriptorSyntaxpublic interface EventPropertyDescriptor extends java.io.Serializable
All Known Subinterfaces: AlarmEventPropertyDescriptor184, AlarmListRebuiltEventPropertyDescriptor187, BaseEventDescriptor46, PerformanceDataEventDescriptor52, PerformanceDataAvailableEventDescriptor50
All Superinterfaces: java.io.Serializable
Member Summary
FieldsString BOOLEAN238String BYTE238String DOUBLE238String FLOAT238String INT238String LONG238String OSSJ_ADMIN_DOMAIN_PROP_NAME238String OSSJ_ADMIN_DOMAIN_PROP_TYPE238String OSSJ_EVENT_TYPE_PROP_NAME238String OSSJ_EVENT_TYPE_PROP_TYPE239String SHORT239String STRING239
Methods
237
EventPropertyDescriptor
BOOLEAN
Fields
BOOLEAN
public static final java.lang.String BOOLEAN
BYTE
public static final java.lang.String BYTE
DOUBLE
public static final java.lang.String DOUBLE
FLOAT
public static final java.lang.String FLOAT
INT
public static final java.lang.String INT
LONG
public static final java.lang.String LONG
OSSJ_ADMIN_DOMAIN_PROP_NAME
public static final java.lang.String OSSJ_ADMIN_DOMAIN_PROP_NAME
OSSJ_ADMIN_DOMAIN_PROP_TYPE
public static final java.lang.String OSSJ_ADMIN_DOMAIN_PROP_TYPE
OSSJ_EVENT_TYPE_PROP_NAME
public static final java.lang.String OSSJ_EVENT_TYPE_PROP_NAME
String getEventType()239String[] getPropertyNames()239String[] getPropertyTypes()239
Event makeEvent()239ObjectMessage makeObjectMessage(Event, Hashtable)239TextMessage makeTextMessage(Event, Hashtable)239
Member Summary
238
IllegalArgumentException
OSSJ_EVENT_TYPE_PROP_TYPE
OSSJ_EVENT_TYPE_PROP_TYPE
public static final java.lang.String OSSJ_EVENT_TYPE_PROP_TYPE
SHORT
public static final java.lang.String SHORT
STRING
public static final java.lang.String STRING
Methods
getEventType()
public java.lang.String getEventType()
getPropertyNames()
public java.lang.String[] getPropertyNames()
getPropertyTypes()
public java.lang.String[] getPropertyTypes()
makeEvent()
public Event235 makeEvent()
makeObjectMessage(Event, Hashtable)
public javax.jms.ObjectMessage makeObjectMessage(Event235 event,
java.util.Hashtable properties)
makeTextMessage(Event, Hashtable)
public javax.jms.TextMessage makeTextMessage(Event235 event,
java.util.Hashtable properties)
IllegalArgumentExceptionSyntaxpublic class IllegalArgumentException extends java.lang.Exception
239
ManagedEntityKey
IllegalArgumentException()
All Implemented Interfaces: java.io.Serializable
Constructors
IllegalArgumentException()
public IllegalArgumentException()
IllegalArgumentException(String)
public IllegalArgumentException(java.lang.String message)
ManagedEntityKeySyntaxpublic interface ManagedEntityKey extends java.io.Serializable, java.lang.Cloneable
All Known Subinterfaces: PerformanceMonitorKey61, ThresholdMonitorKey136
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
Member Summary
ConstructorsIllegalArgumentException()240IllegalArgumentException(String)240
Member Summary
MethodsString getDomain()241Object getPrimaryKey()241String getType()241
void setDomain(String)241void setPrimaryKey(Object)241void setType(String)241
240
ManagedEntityValue
getDomain()
ains a
n the
Methods
getDomain()
public java.lang.String getDomain()
The Domain name identifies an application’s administrative domain. An administrative domain maintJNDI namespace.
Returns: String domain name
getPrimaryKey()
public java.lang.Object getPrimaryKey()
The unique identifier for the Managed Entity This key is mappable to the EJB primary key wheManagedEntity is represented by an Entity Bean
getType()
public java.lang.String getType()
Returns: String entity’s type name
setDomain(String)
public void setDomain(java.lang.String domain)
Throws:IllegalArgumentException
setPrimaryKey(Object)
public void setPrimaryKey(java.lang.Object key)
Throws:IllegalArgumentException
setType(String)
public void setType(java.lang.String type)
Throws:IllegalArgumentException
ManagedEntityValueSyntaxpublic interface ManagedEntityValue extends java.io.Serializable, java.lang.Cloneable
241
ManagedEntityValue
KEY
All Known Subinterfaces: ComplexThresholdMonitorValue118, PerformanceMonitorByClassesValue55, PerformanceMonitorByObjectsValue57, PerformanceMonitorValue79, SimpleThresholdMonitorValue127, ThresholdMonitorValue152
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
Fields
KEY
public static final java.lang.String KEY
Methods
getAttributeNames()
public java.lang.String[] getAttributeNames()
getAttributeValue(String)
public java.lang.Object getAttributeValue(java.lang.String attributeName)
Throws:IllegalArgumentException
Member Summary
FieldsString KEY242
MethodsString[] getAttributeNames()242Object getAttributeValue(String)242
ManagedEntityKey getManagedEntityKey()243String[] getPopulatedAttributeNames()243String[] getSettableAttributeNames()243boolean isFullyPopulated()243boolean isPopulated(String)243
void setAttributeValue(String, Object)243void setFullyPopulated()243void setManagedEntityKey(ManagedEntityKey)243void unPopulateAllAttributes()243void unPopulateAttribute(String)243
242
ManagedEntityValue
getManagedEntityKey()
getManagedEntityKey()
public ManagedEntityKey240 getManagedEntityKey()
getPopulatedAttributeNames()
public java.lang.String[] getPopulatedAttributeNames()
getSettableAttributeNames()
public java.lang.String[] getSettableAttributeNames()
isFullyPopulated()
public boolean isFullyPopulated()
isPopulated(String)
public boolean isPopulated(java.lang.String name)
Throws:IllegalArgumentException
setAttributeValue(String, Object)
public void setAttributeValue(java.lang.String attributeName, java.lang.Object Value)
Throws:IllegalArgumentException
setFullyPopulated()
public void setFullyPopulated()
setManagedEntityKey(ManagedEntityKey)
public void setManagedEntityKey(ManagedEntityKey240 key)
Throws:IllegalArgumentException
unPopulateAllAttributes()
public void unPopulateAllAttributes()
unPopulateAttribute(String)
public void unPopulateAttribute(java.lang.String attr_name)
243
QueryValue
reset()
Throws:IllegalArgumentException
QueryValueSyntaxpublic interface QueryValue extends java.io.Serializable, java.lang.Cloneable
All Known Subinterfaces: FilterableAttributesValue209, QueryByDNValue103, QueryBySimpleThresAttributesValue122, QueryMonitorValue124, QueryPerformanceMonitorValue100
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
Methods
reset()
public void reset()
QueryDescriptorSyntaxpublic interface QueryDescriptor
All Known Subinterfaces: AlarmByFilterableAttributesQueryDesciptor180
UnsupportedOperationExceptionSyntaxpublic class UnsupportedOperationException extends java.lang.Exception
All Implemented Interfaces: java.io.Serializable
Member Summary
Methodsvoid reset()244
244
Version
UnsupportedOperationException()
Constructors
UnsupportedOperationException()
public UnsupportedOperationException()
UnsupportedOperationException(String)
public UnsupportedOperationException(java.lang.String message)
VersionSyntaxpublic interface Version extends java.io.Serializable, java.lang.Cloneable
All Superinterfaces: java.lang.Cloneable, java.io.Serializable
DescriptionVersion provides information describing the version number.
Methods
isCompatible(String)
public boolean isCompatible(java.lang.String versionName)
Determines if a version is compatible with the current one.
Returns: true if the given version is compatible with the cuxrrent one ; false otherwise.
Member Summary
ConstructorsUnsupportedOperationException()245UnsupportedOperationException(String)245
Member Summary
Methodsboolean isCompatible(String)245String[] listCompatibles()246String toString()246
245
Version
listCompatibles()
listCompatibles()
public java.lang.String[] listCompatibles()
Returns the compatible versions.
Returns: an array of String representation of compatible versions.
toString()
public java.lang.String toString()
Returns the current OSS/J API version.
Overrides: java.lang.Object.toString() in class java.lang.Object
Returns: a string representation of the version.
246
Concepts
Performance ManagementThe purpose of any Performance Management activity is to collect data, which can be used to verify the physi-cal and logical configuration of the resources and to locate potential problems as early as possible. The type of data to be collected is defined by the measurements.
Measurement jobMeasurement jobs are the processes which are executed in order to gather measurement data and assemble it into measurement reports. The collection of measurement data is based on the measurement jobs granularity period, the observable object instances and the scheduled when gathering of measurement data shall be per-formed.
Measurement reportA measurement job generats measurement reports. These measurements reports provides the measurement data of the measurement types of a specific resources at end of each granularity period. The measurement reports can be forwared to the client in two ways: by notification or by loacl storing the measuremnt data for later retrival of the measurement report.
The format of the measuremnt reports and the semantics of the measurement types are not defined by this spec-ification.
Measurement dataEach measurement job will be collecting measurement data at a particular frequency, known as the granularity period of the measurement. At the end of the granularity period a scheduled measurement report shall be gener-ated for each measurement job that is actively collecting measurement data.
Measurement typeEvery measurement job consists of one or more measurement types for which it collects measurement data. The measurement type(s) contained in a job may apply to one or more resources of the same type. A measurement job will only produce measurement results for the measurement type(s) it contains.
Measurement scheduleThe measurement schedule specifies the time frames during which the measurement job will be active. The measurement job is active as soon as the starttime - if supplied in the schedule - is reached. The system shall support a job starttime of up to at least 30 days from the job creation date. If no starttime is provided, the mea-surement job shall become active immediately. The measurement job remains active until the stoptime - if sup-plied in the schedule - is reached. If no job stoptime is specified the measurement job will run indefinitely and can only be stopped by intervention, i.e. by deleting or suspending the measurement job.
The time frame defined by the measurement schedule may contain one or more recording intervals. These recording intervals may repeat on a daily and/or weekly basis and specify the time periods during which the measurement data is collected within the NE. A recording interval is identified by an interval starttime and an interval endtime, which lie between 00.00 and 24.00 hours, aligned on granularity period boundaries. Thus the length of a recording interval will be a multiple of the granularity period. For a single measurement type it shall
247
Concepts
be possible to specify several measurement jobs with different recording intervals as long as these intervals do not overlap. If it is required that a measurement type be observed by multiple measurement jobs with overlap-ping schedules then the system shall support multiple instances of that measurement type.
Granularity PeriodThe granularity period is the time between the initiation of two successive gatherings of measurement data. Val-ues for the granularity period can be 5 minutes, 15 minutes, 30 minutes, 1 hour. The minimum granularity period is 5 minutes in most cases, but for some measurements it may only make sense to collect data in a larger granularity period. The granularity period shall be synchronised on the full hour.
Observable Object instanceA observable object instance is the resource that the measurement job monitor. The observable object instance is identified by its distinguished name (DN) and must be unique within a certain context, such as a transmission network, a switching network.
Examples: An observed object which is a measurement function:
“IRPNetwork=Example/Subnet=TN2/BSC=BSC15/Cell=0015/CellMeasurement=0010”
Observable Object classes
Report Mode
Distinguished NameA Distinguished Name (DN) is used to uniquely identify a managed object within a namespace. A DN is built from a series of “name components”, referred to as Relative Distinguished Names (RDNs).
248
Glossary
3GPPThird Generation Partnership Project
AttributeAn element that contains state information about an object.
EMSElement Management System
EventA generic term for any type of occurrence within a network entity.A notification or event report may be used as a mechanism to inform interested parties on the occurrence of the event
Granularity PeriodThe granularity period is the time between the initiation of two successive gatherings of measurement data.
HysterisisSpecifies the amount a threshold value is allowed to oscillate within without generating a new alarm.
J2EEJava" 2 Platform Enterprise Edition
JMSJava" Messaging Service
NMSNetwork Management System
Observable Object Class A classification for objects of the same type that possess the ability to be monitored.
Observable Object InstanceAn instance of an object that can be monitored.
OSSOperation Support Systems
Performance Monitoring JobA systems ability to read measurement data of observed managed object(s) of the network and produce perfor-mance monitoring reports.
QoSQuality of Service
Threshold Monitoring JobA systems ability to set threshold criteria on the measurement data of observed managed object(s) of the net-work and produce alarms when these thresholds are crossed.
249
Glossary
Value ObjectContains the attribute values that represent the current state of an entity. This object includes mechanisms that allow for the selective retrieval and modification of its attributes.
XMLExtensible Markup Language
250
Index
AA_BIS_TO_BTS_INTERFACE_FAILURE 217A_BIS_TO_TRX_INTERFACE_FAILURE
217ACK_STATE_CHANGED 209ACKNOWLEDGED 180ACTIVE_OFF_DUTY 79, 152ACTIVE_ON_DUTY 79, 152ADAPTER_ERROR 217AIR_COMPRESSOR_FAILURE 217AIR_CONDITIONING_FAILURE 217AIR_DRYER_FAILURE 217ALARM_CONFIG 119, 128ALARM_INDICATION_SIGNAL 217ALARM_LIST_REBUILT 209AlarmAckState 179AlarmByFilterableAttributesQueryDesciptor
180AlarmConfig 115AlarmCountsValue 181AlarmEvent 183AlarmEventPropertyDescriptor 184AlarmListRebuiltEvent 186AlarmListRebuiltEventPropertyDescriptor 187AlarmMonitor 188AlarmMonitorHome 189AlarmMonitorMethods 190AlarmOperationResult 194AlarmType 202AlarmValue 195AlarmValueIterator 200ANTENNA_PROBLEM 217APPLICATION_SUBSYSTEM_FAILURE 217ASCII 94ASN1 94AttributeValue 204AttributeValueChange 205
BBACK_PLANE_FAILURE 217BackedUpStatusType 206BANDWIDTH_REDUCTION 217BASE_VALUE_TYPE 83BaseEvent 44BaseEventDescriptor 46
BATTERY_BREAKDOWN 218BATTERY_CHARGING_FAULT 218BATTERY_DISCHARGING 218BATTERY_FAILURE 218BINARY 94BOOLEAN 238BROADCAST_CHANNEL_FAILURE 218BYTE 238
CCALL_ESTABLISHMENT_ERROR 218CALL_SETUP_FAILURE 218CHANGED_ALARM 209CLEARED 212CLEARED_ALARM 209CLOCK_SYNCHRONISATION_PROBLEM
218COMBINER_PROBLEM 218COMMERICAL_POWER_FAILURE 218COMMUNICATION_PROTOCOL_ERROR
218COMMUNICATION_SUBSYSTEM_FAILUR
E 218COMMUNICATIONS_ALARM 203ComplexThresholdMonitorValue 118CONFIGURATION_OR_CUSTOMIZING_ER
ROR 219CONGESTION 219COOLING_FAN_FAILURE 219COOLING_SYSTEM_FAILURE 219CorrelatedNotificationValue 207CORRUPT_DATA_M3100 219CPU_CYCLES_LIMIT_EXCEEDED 219create 60, 136, 190createPerformanceMonitor 65createThresholdMonitor 141CRITICAL 212CUMULATIVE_COUNTER 91
DDATA_SET_OR_MODEM_ERROR 219DATA_SET_PROBLEM 219DATABASE_INCONSISTENCY 219DayOfWeekSchedule 163DEFAULT_ALARM_TYPE 116DEFINITION 128DEFINITIONS 119DEGRADED_SIGNAL_M3100 219
251
Index
DISCRETE_EVENT_REGISTRATION 91DISK_PROBLEM 219DOUBLE 238DOWN 232DTE_DCE_INTERFACE_ERROR 219
EENCLOSURE_DOOR_OPEN_M3100 220ENGINE_FAILURE 220ENVIRONMENTAL_ALARM 203EQUIPMENT_ALARM 203EQUIPMENT_IDENTIFIER_DUPLICATION
220EQUIPMENT_MALFUNCTION 220Event 235EVENT_MULTIPLE 100EVENT_SINGEL 100EVENT_TYPE_VALUE 50, 53, 184, 187EventPropertyDescriptor 237EXCESSIVE_BIT_ERROR_RATE 220EXCESSIVE_RECEIVER_TEMPERATURE
220EXCESSIVE_TRANSMITTER_OUTPUT_PO
WER 220EXCESSIVE_TRANSMITTER_TEMPERAT
URE 220EXCESSIVE_VIBRATION 220EXPLOSIVE_GAS 220EXTENDED_ALARM_TYPE_PROP_NAME
185EXTENDED_ALARM_TYPE_PROP_TYPE
185ExtendedAlarmType 208EXTERNAL_DEVICE_PROBLEM 220EXTERNAL_EQUIPMENT_FAILURE 220EXTERNAL_POWER_SUPPLY_FAILURE
221EXTERNAL_TRANSMISSION_DEVICE_FAI
LURE 221
FFALLING 133FAR_END_RECEIVER_FAILURE 221FILE_ERROR 221FILE_MULTIPLE 100FILE_SINGEL 100FILE_SYSTEM_CALL_UNSUCCESSFUL 221FILTERABLE_ATTRIBUTES_ARG_NAME
181FILTERABLE_ATTRIBUTES_ARG_TYPE
181FilterableAttributesValue 209FIRE 221FIRE_DETECTOR_FAILURE 221FLOAT 238FLOOD 221FRAMING_ERROR_M3100 221FREQUENCY_HOPPING_DEGRADED 221FREQUENCY_HOPPING_FAILURE 221FREQUENCY_REDEFINITION_FAILED 221fromJMS 51, 53, 185, 188FUSE_FAILURE 222
GGAUGE 91GENERATOR_FAILURE 222GET_CURRENT_RESULT_REPORT 64getAckTime 196getAckUserId 196getAdditionalText 197getAdminDomain 236getAlarm 183getAlarmAckState 197, 210getAlarmConfig 119, 122, 129getAlarmId 197getAlarmReference 195getAlarmType 116, 197, 210getAttributeChanges 197getAttributeName 131, 204, 206getAttributeNames 242getAttributeType 205, 206getAttributeValue 242getBackedUpStatus 198getBackUpObject 198getClearedCount 182getCollectionMethod 92getCorrelatedNotifications 198getCriticalCount 182getCurrentReportFormat 67getCurrentResultReport 67getDailySchedule 172getDirection 131getDistinguishedNames 104getDomain 241getEventDescriptor 67, 142, 191getEventTime 198, 236getEventType 236, 239
252
Index
getEventTypes 68, 142, 191getExpirationDate 96getExtendedAlarmType 183, 186getFailureReason 62, 138getGranularity 154getGranularityPeriod 84, 102, 125getIndeterminateCount 182getMajorCount 182getManagedEntityKey 243getManagedObjectClass 45, 198, 210getManagedObjectInstance 45, 198, 208getManagetObjectInstance 210getMeasurementAttributes 56, 59getMeasurementName 85, 102getMinorCount 182getMonitoredAttributes 199getMonitorName 125getMonitorValueType 126getName 93getNewValue 206getNext 89, 98, 157, 169, 170, 201getNotificationId 208, 236getObservableAttributes 68, 143getObservableObject 129getObservableObjectClasses 68, 143getObservableObjects 69, 120, 123, 143getObservedObjectClasses 56getObservedObjects 59getOffset 131getOldValue 206getOwner 95getPerceivedSeverity 117, 199, 211getPerformanceMonitor 69getPerformanceMonitorKey 45, 63, 85getPerformanceMonitorPrimaryKey 61getPerformanceMonitorReport 52getPerformanceMonitors 70getPerformanceMonitorTypes 70getPerformanceMonitorValueType 102getPerformanceReportInfo 70getPopulatedAttributeNames 243getPrimaryKey 241getProbableCause 117, 199getPropertyNames 239getPropertyTypes 239getProposedRepairActions 199getQueryTypes 71, 144, 191getReason 187, 195getReportByEvent 85getReportByFile 85
getReportFormat 52, 85, 97getReportFormats 71getReportInformation 49getReportModes 71getReportPeriod 85getSchedule 85, 154getScope 56getSettableAttributeNames 243getSourceIndicator 236getSpecification 95getSpecificProblem 117, 199getStartTime 172getStartTimes 162getState 86, 102, 126getStopTime 172getStopTimes 162getSupportedGranularities 72, 144getSupportedOptionalOperations 72, 144, 191getSystemDN 45, 200getTechnology 95getThresholdDefinition 129getThresholdDefinitions 120, 123getThresholdMonitor 145getThresholdMonitorKey 138, 154getThresholdMonitorPrimaryKey 137getThresholdMonitors 145getThresholdMonitorTypes 146getThresholdName 154getThresholdState 154getTimeZone 164getTrendIndication 200getTresholdIndication 200getTriggerRule 120getType 93, 95, 132, 241getURL 97getValue 132, 205getVersion 61, 96, 135, 136getWarningCount 182getWeeklySchedule 172GRANULARITY 153GRANULARITY_PERIOD 83
HHEATING_OR_VENTILATION_OR_COOLI
NG_SYSTEM_PROBLEM 222HIGH_HUMIDITY 222HIGH_TEMPERATURE 222HIGH_WIND 222HourSchedule 161
253
Index
HUMIDITY_UNACCEPTABLE 222
IICE_BUILD_UP 222IllegalArgumentException 239, 240IllegalStateException 167INDETERMINATE 212, 222INPUT_DEVICE_ERROR 222INPUT_OUTPUT_DEVICE_ERROR 222INPUT_PARAMETER_OUT_OF_RANGE 222INT 238INTEGER 92INTEGRITY_VIOLATION 203INVALID_MESSAGE_RECEIVED 223INVALID_MSU_RECEIVED 223INVALID_PARAMETER 223INVALID_POINTER 223isActive 162, 164, 173isAlarmAckStateSet 211isAlarmConfigSet 123isAlarmTypeSet 211isArray 93isCompatible 245isFridayActive 164isFullyPopulated 243isGranularityPeriodSet 102, 126isManagedObjectClassSet 211isManagetObjectInstanceSet 211isMeasurementNameSet 102isMondayActive 164isMonitorNameSet 126isObservableObjectsSet 123isObservableObjectsSupported 73, 146isPerceivedSeveritySet 211isPopulated 243isSaturdayActive 164isScheduleSet 86, 155isStateSet 102, 126isSuccess 63, 138, 195isSundayActive 164isThresholdDefinitionsSet 123isThursdayActive 165isTuesdayActive 165isWednesdayActive 165
KKEY 153, 242
LLAN_ERROR 223LAPD_LINK_PROTOCOL_FAILURE 223LEAK_DETECTION 223LESS_SEVERE 233LINE_CARD_PROBLEM 223LINE_INTERFACE_FAILURE 223LINK_FAILURE 223listCompatibles 246LOCAL_ALARM_INDICATION 223LOCAL_NODE_TRANSMISSION_ERROR
223LONG 238LOSS_OF_FRAME 224LOSS_OF_MULTI_FRAME 224LOSS_OF_POINTER 224LOSS_OF_SIGNAL 224LOSS_OF_SYNCHRONISATION 224LOST_REDUNDANCY 224LOW_BATTERY_THRESHOLD 224LOW_CABLE_PRESSURE 224LOW_FUEL 224LOW_HUMIDITY 224LOW_TEMPERATURE 224LOW_WATER 224
MMAINS_BREAKDOWN_WITH_BATTERY_B
ACKUP 225MAINS_BREAKDOWN_WITHOUT_BATTE
RY_BACKUP 225MAJOR 212MAKE_PERFORMANCE_MONITOR_BY_C
LASSES_VALUE 65makeEvent 239makeObjectMessage 239makePerformanceMonitorByClassesValue 73makePerformanceMonitorByObjectsValue 73makePerformanceMonitorValue 73makeQueryValue 74, 146, 192makeSimpleThresholdMonitorValue 147makeTextMessage 239makeThresholdMonitorValue 147MANAGED_OBJECT_CLASS_PROP_NAME
47, 185MANAGED_OBJECT_CLASS_PROP_TYPE
47, 185MANAGED_OBJECT_INSTANCE_PROP_N
254
Index
AME 48, 185MANAGED_OBJECT_INSTANCE_PROP_T
YPE 48, 185ManagedEntityKey 240ManagedEntityValue 241MATERIAL_SUPPLY_EXHAUSTED 225MEASUREMENT_ATTRIBUTES 56, 58MEASUREMENT_NAME 84MEMORY_MISMATCH 225MESSAGE_NOT_EXPECTED 225MESSAGE_NOT_INITIALISED 225MESSAGE_OUT_OF_SEQUENCE 225MINOR 213MORE_SEVERE 233MULTIPLEXER_PROBLEM_M3100 225
NNAME 153NE_IDENTIFIER_DUPLICATION 225NEW_ALARM 209NO_CHANGE 233NO_REPORT_MODE 100
OOBJECT_IS_BACKED_UP 207OBJECT_IS_NOT_BACKED_UP 207OBSERVABLE_OBJECT 129OBSERVABLE_OBJECT_CLASSES 56OBSERVABLE_OBJECTS 119ObservableObjectClassIterator 169ObservableObjectIterator 167OBSERVED_OBJECTS 58OPERATIONAL_VIOLATION 203OSS_VERSION_PROP_NAME 48OSS_VERSION_PROP_TYPE 48OSSJ_ADMIN_DOMAIN_PROP_NAME 238OSSJ_ADMIN_DOMAIN_PROP_TYPE 238OSSJ_EVENT_TYPE_PROP_NAME 238OSSJ_EVENT_TYPE_PROP_TYPE 239OUT_OF_CPU_CYCLES 225OUT_OF_MEMORY 225OUTPUT_DEVICE_ERROR 225
PPATH_TRACE_MISMATCH 226PAYLOAD_TYPE_MISMATCH 226PERCEIVED_SEVERITY_PROP_NAME 185PERCEIVED_SEVERITY_PROP_TYPE 185
PerceivedSeverity 212PERFORMANCE_DEGRADED 226PERFORMANCE_MONITOR_KEY_PROP_
NAME 48PERFORMANCE_MONITOR_KEY_PROP_T
YPE 48PerformanceAttributeDescriptor 90PerformanceDataAvailableEvent 49PerformanceDataAvailableEventDescriptor 50PerformanceDataEvent 51PerformanceDataEventDescriptor 52PerformanceMonitor 53PerformanceMonitorByClassesValue 55PerformanceMonitorByObjectsValue 57PerformanceMonitorHome 59PerformanceMonitorKey 61PerformanceMonitorKeyResult 62PerformanceMonitorMethods 63PerformanceMonitorState 78PerformanceMonitorValue 79PerformanceMonitorValueIterator 88PHYSICAL_VIOLATION 203POWER_PROBLEM_M3100 226POWER_SUPPLY_FAILURE 226PRESSURE_UNACCEPTABLE 226ProbableCause 213PROCESSING_ERROR_ALARM 203PROCESSOR_PROBLEM_M3100 226PROTECTION_PATH_FAILURE 226PUMP_FAILURE_M3100 226
QQUALITY_OF_SERVICE_ALARM 204QUERY_NAME_VALUE 181QUERY_TYPE 101queryAlarmCounts 192queryAlarmList 192QueryByDNValue 103QueryBySimpleThresAttributesValue 122QueryDescriptor 244QueryMonitorValue 124queryPerformanceMonitors 74QueryPerformanceMonitorValue 100queryThresholdMonitors 147QueryValue 244QUEUE_SIZE_EXCEEDED 226
255
Index
RREAL 92RECEIVE_FAILURE 226RECEIVER_ANTENNA_FAULT 226RECEIVER_FAILURE_M3100 227RECEIVER_MULTICOUPLER_FAILURE
227RECTIFIER_FAILURE 227RECTIFIER_HIGH_VOLTAGE 227RECTIFIER_LOW_F_VOLTAGE 227RECUCED_LOGGING_CAPABILITY 227REDUCED_ALARM_REPORTING 227REDUCED_EVENT_REPORTING 227REDUCED_TRANSMITTER_OUTPUT_POW
ER 227REMOTE_ALARM_INDICATION 227REMOTE_ALARM_INTERFACE 227REMOTE_NODE_TRANSMISSION_ERROR
227remove 90, 99, 158, 169, 171, 202removePerformanceMonitor 75removeThresholdMonitor 148REPLACEABLE_UNIT_MISSING 228REPLACEABLE_UNIT_PROBLEM 228REPLACEABLE_UNIT_TYPE_MISMATCH
228REPORT_BY_EVENT 84REPORT_BY_FILE 84REPORT_FORMAT 84ReportFormat 93ReportInfo 96ReportInfoIterator 97REPORTING_PERIOD 84ReportMode 99reset 244RESOURCE_AT_OR_NEARING_CAPACITY
228RESPONSE_TIME_EXCESSIVE 228RESUME_PERFORMANCE_MONITOR 65RESUME_THRESHOLD_MONITOR 140resumePerformanceMonitor 75resumeThresholdMonitor 148RETRANSMISSION_RATE_EXCESSIVE 228RISING 134ROUTING_FAILURE 228
SSCHEDULE 84, 154
Schedule 171SCOPE 56SECURITY_VIOLATION 204setAdminDomain 236setAlarmConfig 120, 123, 129setAlarmType 117setALLCrossed 159setAllDaysActive 165setANYCrossed 159setAttributeName 132setAttributeValue 243setDailySchedule 173setDirection 132setDistinguishedNames 104setDomain 241setEACHCrossed 160setEventTime 236setEventType 237setFailureReason 138setFridayActive 165setFullyPopulated 243setGranularity 155setGranularityPeriod 86, 103, 126setManagedEntityKey 243setManagedObjectClass 45setManagedObjectInstance 45setMeasurementAttributes 57, 59setMeasurementName 86, 103setMondayActive 165setMonitorName 127setMonitorValueType 127setName 93setNONECrossed 160setNotificationId 237setObservableObject 130setObservableObjects 121, 124setObservedObjectClasses 57setObservedObjects 59setOffset 132setPerceivedSeverity 117setPerformanceMonitorKey 46setPerformanceMonitorPrimaryKey 62setPerformanceMonitorValueType 103setPrimaryKey 241setProbableCause 117setReportByEvent 86setReportByFile 87setReportFormat 87setReportPeriod 87setSaturdayActive 165
256
Index
setSchedule 88, 155setScope 57setSourceIndicator 237setSpecificProblem 118setStartTime 173setStartTimes 162setState 103, 127setStopTime 173setStopTimes 163setSuccess 138setSundayActive 166setSystemDN 46setThresholdDefinition 130setThresholdDefinitions 121, 124setThresholdMonitorKey 138setThresholdMonitorPrimaryKey 137setThresholdName 156setThursdayActive 166setTimeZone 166setTriggerRule 121setTuesdayActive 166setType 93, 133, 241setValue 133setWednesdayActive 166setWeeklySchedule 173SHORT 239SIGNAL_LABEL_MISMATCH 228SIGNAL_QUALITY_EVALUATION_FAULT
228SIMPLE_THRESHOLD_MONITOR_TYPE
140SimpleThresholdMonitorValue 127SMOKE 228SOFTWARE_DOWNLOAD_FAILURE 228SOFTWARE_ENVIRONMENT_PROBLEM
228SOFTWARE_ERROR 229SOFTWARE_PROGRAM_ABNORMALLY_
TERMINATED 229SOFTWARE_PROGRAM_ERROR 229SS7_PROTOCOL_FAILURE 229STATE 84, 154STATUS_INSPECTION 92STORAGE_CAPACITY_PROBLEM_M3100
229STRING 92, 239SUSPEND_PERFORMANCE_MONITOR 65SUSPEND_THRESHOLD_MONITOR 140SUSPENDED 79, 152suspendPerformanceMonitor 75
suspendThresholdMonitor 149SYNCHRONISATION_SOURCE_MISMATC
H 229SYSTEM_CALL_UNSUCCESSFUL 229SYSTEM_DN_PROP_NAME 49SYSTEM_DN_PROP_TYPE 49SYSTEM_RESOURCES_OVERLOAD 229
TTEMPERATURE_UNACCEPTABLE 229TERMINAL_PROBLEM 229THRESHOLD_CROSSED 229ThresholdDefinition 130ThresholdDirection 133ThresholdIndicationType 231ThresholdMonitor 134ThresholdMonitorHome 135ThresholdMonitorKey 136ThresholdMonitorKeyResult 137ThresholdMonitorMethods 139ThresholdMonitorState 151ThresholdMonitorValue 152ThresholdMonitorValueIterator 156TIME_DOMAIN_VIOLATION 204TIME_TICKS 92TIMEOUT_EXPIRED 229TIMESLOT_HARDWARE_FAILURE 230TIMING_PROBLEM_M3100 230toJMS 186, 188toString 246TOXIC_GAS 230TOXIC_LEAK_DETECTED 230TRANSCEIVER_PROBLEM 230TRANSCODER_OR_RATE_ADAPTER_PRO
BLEM 230TRANSCODER_PROBLEM 230TRANSMISSION_ERROR 230TRANSMISSION_FAILURE 230TRANSMIT_FAILURE 230TRANSMITTER_ANTENNA_FAILURE 230TRANSMITTER_ANTENNA_NOT_ADJUST
ED 230TRANSMITTER_FAILURE_M3100 231TRANSMITTER_LOW_VOLTAGE_OR_CU
RRENT 231TRANSMITTER_OFF_FREQUENCY 231TrendIndicationType 232TRIGGER_RULE_ON_ALL_CROSSED 159TRIGGER_RULE_ON_ANY_CROSSED 159
257
Index
TRIGGER_RULE_ON_EACH_CROSSED 159TRIGGER_RULE_ON_NONE_CROSSED 159TRIGGER_RULES 119TriggerRule 158TRUNK_CARD_PROBLEM 231TRY_CREATE_PERFORMANCE_MONITO
RS 65TRY_CREATE_THRESHOLD_MONITORS
140TRY_REMOVE_PERFORMANCE_MONITO
RS 65TRY_REMOVE_THRESHOLD_MONITORS
141TRY_RESUME_PERFORMANCE_MONITO
RS 65TRY_RESUME_THRESHOLD_MONITORS
141TRY_SUSPEND_PERFORMANCE_MONITO
RS 65TRY_SUSPEND_THRESHOLD_MONITORS
141tryAcknowledgeAlarms 193tryCreatePerformanceMonitors 76tryCreateThresholdMonitors 149tryRemovePerformanceMonitors 77tryRemoveThresholdMonitors 150tryResumePerformanceMonitors 77tryResumeThresholdMonitors 150trySuspendPerformanceMonitors 78trySuspendThreholdMonitors 151tryUnacknowledgeAlarms 194
UUNACKNOWLEDGED 180UNAVAILABLE 231UNDERLYING_RESOURCE_UNAVAILABL
E 231unPopulateAllAttributes 243unPopulateAttribute 243UnsupportedOperationException 244, 245UP 232
VVALUE_TYPE 56, 58VARIABLE_OUT_OF_RANGE 231VENTILATION_SYSTEM_FAILURE 231Version 245VERSION_MISMATCH 231
WWARNING 213WATCH_DOG_TIMER_EXPIRED 231
XXML 94
258