| {{/* |
| # Copyright (c) 2023 Deutsche Telekom |
| # |
| # Licensed 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.. |
| */}} |
| lowercaseOutputName: true |
| rules: |
| # Special cases and very specific rules |
| - pattern: kafka.server<type=(.+), name=(.+), clientId=(.+), topic=(.+), partition=(.*)><>Value |
| name: kafka_server_$1_$2 |
| type: GAUGE |
| labels: |
| clientId: "$3" |
| topic: "$4" |
| partition: "$5" |
| - pattern: kafka.server<type=(.+), name=(.+), clientId=(.+), brokerHost=(.+), brokerPort=(.+)><>Value |
| name: kafka_server_$1_$2 |
| type: GAUGE |
| labels: |
| clientId: "$3" |
| broker: "$4:$5" |
| - pattern: kafka.server<type=(.+), cipher=(.+), protocol=(.+), listener=(.+), networkProcessor=(.+)><>connections |
| name: kafka_server_$1_connections_tls_info |
| type: GAUGE |
| labels: |
| cipher: "$2" |
| protocol: "$3" |
| listener: "$4" |
| networkProcessor: "$5" |
| - pattern: kafka.server<type=(.+), clientSoftwareName=(.+), clientSoftwareVersion=(.+), listener=(.+), networkProcessor=(.+)><>connections |
| name: kafka_server_$1_connections_software |
| type: GAUGE |
| labels: |
| clientSoftwareName: "$2" |
| clientSoftwareVersion: "$3" |
| listener: "$4" |
| networkProcessor: "$5" |
| - pattern: "kafka.server<type=(.+), listener=(.+), networkProcessor=(.+)><>(.+):" |
| name: kafka_server_$1_$4 |
| type: GAUGE |
| labels: |
| listener: "$2" |
| networkProcessor: "$3" |
| - pattern: kafka.server<type=(.+), listener=(.+), networkProcessor=(.+)><>(.+) |
| name: kafka_server_$1_$4 |
| type: GAUGE |
| labels: |
| listener: "$2" |
| networkProcessor: "$3" |
| # Some percent metrics use MeanRate attribute |
| # Ex) kafka.server<type=(KafkaRequestHandlerPool), name=(RequestHandlerAvgIdlePercent)><>MeanRate |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*><>MeanRate |
| name: kafka_$1_$2_$3_percent |
| type: GAUGE |
| # Generic gauges for percents |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*><>Value |
| name: kafka_$1_$2_$3_percent |
| type: GAUGE |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*, (.+)=(.+)><>Value |
| name: kafka_$1_$2_$3_percent |
| type: GAUGE |
| labels: |
| "$4": "$5" |
| # Generic per-second counters with 0-2 key/value pairs |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*, (.+)=(.+), (.+)=(.+)><>Count |
| name: kafka_$1_$2_$3_total |
| type: COUNTER |
| labels: |
| "$4": "$5" |
| "$6": "$7" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*, (.+)=(.+)><>Count |
| name: kafka_$1_$2_$3_total |
| type: COUNTER |
| labels: |
| "$4": "$5" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*><>Count |
| name: kafka_$1_$2_$3_total |
| type: COUNTER |
| # Generic gauges with 0-2 key/value pairs |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+), (.+)=(.+)><>Value |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| labels: |
| "$4": "$5" |
| "$6": "$7" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+)><>Value |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| labels: |
| "$4": "$5" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)><>Value |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| # Emulate Prometheus 'Summary' metrics for the exported 'Histogram's. |
| # Note that these are missing the '_sum' metric! |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+), (.+)=(.+)><>Count |
| name: kafka_$1_$2_$3_count |
| type: COUNTER |
| labels: |
| "$4": "$5" |
| "$6": "$7" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.*), (.+)=(.+)><>(\d+)thPercentile |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| labels: |
| "$4": "$5" |
| "$6": "$7" |
| quantile: "0.$8" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+)><>Count |
| name: kafka_$1_$2_$3_count |
| type: COUNTER |
| labels: |
| "$4": "$5" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.*)><>(\d+)thPercentile |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| labels: |
| "$4": "$5" |
| quantile: "0.$6" |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)><>Count |
| name: kafka_$1_$2_$3_count |
| type: COUNTER |
| - pattern: kafka.(\w+)<type=(.+), name=(.+)><>(\d+)thPercentile |
| name: kafka_$1_$2_$3 |
| type: GAUGE |
| labels: |
| quantile: "0.$4" |