Spec-Zone .ru
спецификации, руководства, описания, API
|
Интерфейс | Описание |
---|---|
CounterMonitorMBean |
Представляет удаленный интерфейс управления встречного монитора MBean.
|
GaugeMonitorMBean |
Представляет удаленный интерфейс управления MBean монитора прибора.
|
MonitorMBean |
Представляет удаленный интерфейс управления монитора MBeans.
|
StringMonitorMBean |
Представляет удаленный интерфейс управления строкового MBean монитора.
|
Класс | Описание |
---|---|
CounterMonitor |
Определяет монитор MBean, разработанный, чтобы наблюдать значения встречного атрибута.
|
GaugeMonitor |
Определяет монитор MBean, разработанный, чтобы наблюдать значения атрибута прибора.
|
Монитор |
Определяет часть, характерную для всего монитора MBeans.
|
MonitorNotification |
Обеспечивает определения уведомлений, отправленных монитором MBeans.
|
StringMonitor |
Определяет монитор MBean, разработанный, чтобы наблюдать значения строкового атрибута.
|
Исключение | Описание |
---|---|
MonitorSettingException |
Исключение, выданное монитором, когда установка монитора становится недопустимой, в то время как монитор работает.
|
Обеспечивает определение классов монитора. Монитор является MBean, который периодически наблюдает значение атрибута в одном или более других MBeans. Если атрибут соблюдает определенное условие, Монитор испускает a MonitorNotification
. Когда монитор MBean периодически вызывает getAttribute
чтобы получить значение атрибута, контролируемого, это делает так в пределах контекста управления доступом Monitor.start()
вызывающая сторона.
Контролируемое значение может быть простым значением, содержавшим в пределах составного типа. Например, MemoryMXBean
определенный в java.lang.management имеет атрибут HeapMemoryUsage типа MemoryUsage
. Чтобы контролировать количество используемой памяти, описанной свойством used MemoryUsage, Вы могли контролировать "HeapMemoryUsage.used". Та строка была бы параметром setObservedAttribute
.
Правила, используемые, чтобы интерпретировать ObservedAttribute как "HeapMemoryUsage.used", следующие. Предположите, что строка является A.e (таким образом, A был бы "HeapMemoryUsage", и e будет "used" в примере).
Сначала значение атрибута A получается. Вызовите это v. Значение x извлекается из v следующим образом:
CompositeData
и если v.get
(e) возвращается значение тогда x является тем значением.Introspector.getBeanInfo
для класса v (v. getClass()), содержит a PropertyDescriptor
с именем e тогда x является результатом вызова свойства read method
на v.Третье правило означает например, что, если атрибут HeapMemoryUsage является MemoryUsage, контролируя "HeapMemoryUsage.used", получит наблюдаемую величину, вызывая MemoryUsage.getUsed().
Если ObservedAttribute содержит больше чем один период, например "ConnectionPool.connectionStats.length", то вышеупомянутые правила применяются многократно. Здесь, v первоначально был бы значением атрибута ConnectionPool, и x будет получен, применяя вышеупомянутые правила с e, равным "connectionStats". Затем v был бы установлен в этот x и новый x, полученный, применяя правила снова с e, равным "length".
Хотя рекомендуется, чтобы названия атрибута были допустимыми идентификаторами Java, для атрибута возможно быть вызванным HeapMemoryUsage.used. Это означает, что ObservedAttribute, который является HeapMemoryUsage.used, мог означать, что значение, чтобы наблюдать является или атрибутом того имени, или свойством used в пределах атрибута под названием HeapMemoryUsage. Так по причинам совместимости, когда ObservedAttribute содержит период (.), монитор проверит, существует ли атрибут, чье имя является полной строкой ObservedAttribute (HeapMemoryUsage.used в примере). Это делает это, вызывая getMBeanInfo
для наблюдаемого MBean и поиска содержавшего MBeanAttributeInfo
с именем. Если Вы находитесь, то, именно это контролируется. Если больше чем один MBean наблюдается, поведение неуказанное, если у некоторых из них есть атрибут HeapMemoryUsage.used, и другие не делают. Реализация может поэтому вызвать getMBeanInfo на только одном из MBeans в этом случае. Поведение является также неуказанным, если результат проверки изменяется, в то время как монитор является активным.
Точное поведение мониторов детализируется в Спецификации JMX. То, что следует, является сводкой.
Есть три вида Мониторов:
A CounterMonitor
наблюдает атрибуты целочисленного типа. Атрибуты, как предполагается, являются неотрицательными, и монотонно увеличивающийся за исключением возможной трансформации в указанном модуле. У каждого наблюдаемого атрибута есть связанное пороговое значение. Уведомление отправляется, когда атрибут превышает свой порог.
Значение смещения может быть определено. Когда наблюдаемая величина превышает свой порог, порог постепенно увеличивается смещением, или кратным числом смещения, достаточного, чтобы сделать порог больше чем новая наблюдаемая величина.
A CounterMonitor
может работать в режиме различия. В этом режиме значение, сравненное с порогом, является различием между двумя последовательными наблюдениями за атрибутом.
A GaugeMonitor
наблюдает атрибуты числового типа. У каждого наблюдаемого атрибута есть связанный высокий порог и низкий порог.
Когда наблюдаемый атрибут пересекает высокий порог, если уведомление высокого флага является истиной, то уведомление отправляется. Последующие пересечения высокого порогового значения не инициируют дальнейшие уведомления, пока значение прибора не станет меньше чем или равным низкому порогу.
Когда наблюдаемый атрибут пересекает низкий порог, если уведомление низкого флага является истиной, то уведомление отправляется. Последующие пересечения низкого порогового значения не инициируют дальнейшие уведомления, пока значение прибора не станет больше чем или равный высокому порогу.
Как правило, только одно из уведомления высоко и уведомляет, что низкие флаги устанавливаются. Другой порог используется, чтобы обеспечить гистерезисный механизм, чтобы избежать повторного инициирования уведомлений, когда атрибут делает маленькие колебания вокруг порогового значения.
A GaugeMonitor
может работать в режиме различия. В этом режиме значение, сравненное с высокими и низкими порогами, является различием между двумя последовательными наблюдениями за атрибутом.
A StringMonitor
наблюдает атрибуты типа String
. Уведомление отправляется, когда наблюдаемый атрибут становится равным и/или не равный данной строке.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.