blob: 8a1ea6509503ee3277b88514d046dc23ea4f6402 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This will parse a textual representation of a duration. The formats
# accepted are based on the ISO-8601 duration format {@code PnDTnHnMn.nS}
# with days considered to be exactly 24 hours.
# <p>
# Examples:
# <pre>
# "PT20.345S" -- parses as "20.345 seconds"
# "PT15M" -- parses as "15 minutes" (where a minute is 60 seconds)
# "PT10H" -- parses as "10 hours" (where an hour is 3600 seconds)
# "P2D" -- parses as "2 days" (where a day is 24 hours or 86400 seconds)
# "P2DT3H4M" -- parses as "2 days, 3 hours and 4 minutes"
# "P-6H3M" -- parses as "-6 hours and +3 minutes"
# "-P6H3M" -- parses as "-6 hours and -3 minutes"
# "-P-6H+3M" -- parses as "+6 hours and -3 minutes"
# </pre>
filter: "{ tags -> tags.job_name == 'activemq-monitoring' }" # The OpenTelemetry job name
expSuffix: tag({tags -> tags.cluster = 'activemq::' + tags.cluster}).instance(['cluster'], ['brokerName'], Layer.ACTIVEMQ)
metricPrefix: meter_activemq_broker
metricsRules:
# Uptime of the broker in day.
- name: uptime
exp: org_apache_activemq_Broker_UptimeMillis.max(['cluster','brokerName','service_instance_id'])
# If slave broker 1 else 0.
- name: state
exp: org_apache_activemq_Broker_Slave.sum(['cluster','brokerName','service_instance_id'])
# The number of clients connected to the broker currently.
- name: current_connections
exp: org_apache_activemq_Broker_CurrentConnectionsCount.sum(['cluster','brokerName','service_instance_id'])
# The number of producers currently attached to the broker.
- name: current_producer_count
exp: org_apache_activemq_Broker_ProducerCount.sum(['cluster','brokerName','service_instance_id'])
# The number of consumers consuming messages from the broker.
- name: current_consumer_count
exp: org_apache_activemq_Broker_ConsumerCount.sum(['cluster','brokerName','service_instance_id'])
# Number of message producers active on destinations.
- name: producer_count
exp: org_apache_activemq_Broker_TotalProducerCount.sum(['cluster','brokerName','service_instance_id']).increase("PT1M")
# Number of message consumers subscribed to destinations.
- name: consumer_count
exp: org_apache_activemq_Broker_TotalConsumerCount.sum(['cluster','brokerName','service_instance_id']).increase("PT1M")
# The total number of messages sent to the broker.
- name: enqueue_count
exp: org_apache_activemq_Broker_TotalEnqueueCount.sum(['cluster','brokerName','service_instance_id']).increase("PT1M")
# The total number of messages the broker has delivered to consumers.
- name: dequeue_count
exp: org_apache_activemq_Broker_TotalDequeueCount.sum(['cluster','brokerName','service_instance_id']).increase("PT1M")
# The total number of messages sent to the broker per second.
- name: enqueue_rate
exp: org_apache_activemq_Broker_TotalEnqueueCount.sum(['cluster','brokerName','service_instance_id']).rate("PT1M")
# The total number of messages the broker has delivered to consumers per second.
- name: dequeue_rate
exp: org_apache_activemq_Broker_TotalDequeueCount.sum(['cluster','brokerName','service_instance_id']).rate("PT1M")
# Percentage of configured memory used by the broker.
- name: memory_percent_usage
exp: org_apache_activemq_Broker_MemoryPercentUsage.sum(['cluster','brokerName','service_instance_id'])
# Memory used by undelivered messages in bytes.
- name: memory_usage
exp: org_apache_activemq_Broker_MemoryUsageByteCount.sum(['cluster','brokerName','service_instance_id'])
# Memory limited used for holding undelivered messages before paging to temporary storage.
- name: memory_limit
exp: org_apache_activemq_Broker_MemoryLimit.sum(['cluster','brokerName','service_instance_id'])
# Percentage of available disk space used for persistent message storage.
- name: store_percent_usage
exp: org_apache_activemq_Broker_StorePercentUsage.sum(['cluster','brokerName','service_instance_id'])
# Disk limited used for persistent messages before producers are blocked.
- name: store_limit
exp: org_apache_activemq_Broker_StoreLimit.sum(['cluster','brokerName','service_instance_id'])
# Percentage of available disk space used for non-persistent message storage.
- name: temp_percent_usage
exp: org_apache_activemq_Broker_TempPercentUsage.sum(['cluster','brokerName','service_instance_id'])
# Disk limited used for non-persistent messages and temporary data before producers are blocked.
- name: temp_limit
exp: org_apache_activemq_Broker_TempLimit.sum(['cluster','brokerName','service_instance_id'])
# Average message size on this broker.
- name: average_message_size
exp: org_apache_activemq_Broker_AverageMessageSize.avg(['cluster','brokerName','service_instance_id'])
# Max message size on this broker.
- name: max_message_size
exp: org_apache_activemq_Broker_MaxMessageSize.max(['cluster','brokerName','service_instance_id'])
# Number of messages on this broker that have been dispatched but not acknowledged.
- name: queue_size
exp: org_apache_activemq_Broker_QueueSize.sum(['cluster','brokerName','destinationName'])