Skip to content

feat(hadoop): Enable boolean metrics #1140

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ All notable changes to this project will be documented in this file.
- airflow: Pin Cython version ([#1116]).
- druid: reduce docker image size by removing the recursive chown/chmods in the final image ([#1039]).
- hadoop: reduce docker image size by removing the recursive chown/chmods in the final image ([#1029]).
- hadoop: adapt the JMX exporter configuration to also export boolean metrics ([#1140]).
- hbase: reduce docker image size by removing the recursive chown/chmods in the final image ([#1028]).
- hive: reduce docker image size by removing the recursive chown/chmods in the final image ([#1040]).
- kafka: reduce docker image size by removing the recursive chown/chmods in the final image ([#1041]).
Expand Down
24 changes: 8 additions & 16 deletions hadoop/stackable/jmx/datanode.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,9 @@ blacklistObjectNames:
- 'Hadoop:service=DataNode,name=UgiMetrics'
rules:
# MetricsSystem
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*): (\d+)'
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand All @@ -24,21 +23,19 @@ rules:
type: GAUGE
# FSDatasetState with _total suffix (also extracts the FSDataset ID),
# e.g. Hadoop:name=FSDatasetState,attribute=EstimatedCapacityLostTotal
- pattern: 'Hadoop<service=(.*), name=FSDatasetState-(.*)><>(.*_total): (\d+)'
- pattern: 'Hadoop<service=(.*), name=FSDatasetState-(.*)><>(.*_total):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
fsdatasetid: $2
kind: 'FSDatasetState'
type: COUNTER
# FSDatasetState (also extracts the FSDataset ID)
- pattern: 'Hadoop<service=(.*), name=FSDatasetState-(.*)><>(.*): (\d+)'
- pattern: 'Hadoop<service=(.*), name=FSDatasetState-(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand All @@ -47,21 +44,19 @@ rules:
type: GAUGE
# DataNodeActivity with _info suffix (also extracts hostname and port),
# e.g. Hadoop:name=DataNodeActivity-hdfs-datanode-default-0-9866,attribute=BlocksGetLocalPathInfo
- pattern: 'Hadoop<service=(.*), name=DataNodeActivity-(.*)-(\d+)><>(.*_info): (\d+)'
- pattern: 'Hadoop<service=(.*), name=DataNodeActivity-(.*)-(\d+)><>(.*_info):'
attrNameSnakeCase: true
name: hadoop_$1_$4_
value: $5
labels:
service: HDFS
role: $1
host: $2
port: $3
kind: 'DataNodeActivity'
type: GAUGE
- pattern: 'Hadoop<service=(.*), name=DataNodeActivity-(.*)-(\d+)><>(.*): (\d+)'
- pattern: 'Hadoop<service=(.*), name=DataNodeActivity-(.*)-(\d+)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$4
value: $5
labels:
service: HDFS
role: $1
Expand All @@ -70,31 +65,28 @@ rules:
kind: 'DataNodeActivity'
type: GAUGE
# Generic counter, e.g. Hadoop:name=FSDatasetState,attribute=EstimatedCapacityLostTotal
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_total): (\d+)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_total):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: COUNTER
# Metrics suffixed with _info, e.g. Hadoop:name=JvmMetrics,attribute=LogInfo
# The suffix _info is reserved for static information, therefore an underscore is appended.
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info):'
attrNameSnakeCase: true
name: hadoop_$1_$3_
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: GAUGE
# All other Hadoop metrics
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand Down
9 changes: 3 additions & 6 deletions hadoop/stackable/jmx/journalnode.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,9 @@ blacklistObjectNames:
- 'Hadoop:service=JournalNode,name=UgiMetrics'
rules:
# MetricsSystem
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*): (\d+)'
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand All @@ -25,20 +24,18 @@ rules:
type: GAUGE
# Metrics suffixed with _info, e.g. Hadoop:name=JvmMetrics,attribute=LogInfo
# The suffix _info is reserved for static information, therefore an underscore is appended.
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info):'
attrNameSnakeCase: true
name: hadoop_$1_$3_
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: GAUGE
# All other Hadoop metrics
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand Down
18 changes: 6 additions & 12 deletions hadoop/stackable/jmx/namenode.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,63 +13,57 @@ blacklistObjectNames:
- 'Hadoop:service=NameNode,name=UgiMetrics'
rules:
# MetricsSystem
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*): (\d+)'
- pattern: 'Hadoop<service=(.*), name=MetricsSystem, sub=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
kind: 'MetricsSystem'
sub: $2
type: GAUGE
# Total raw capacity in bytes, e.g. Hadoop:name=NameNodeInfo,attribute=Total
- pattern: 'Hadoop<service=(.*), name=(.*)><>(total): (\d+)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(total):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: COUNTER
# Generic counter, e.g. Hadoop:name=FSNamesystem,attribute=FilesTotal
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_total): (\d+)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_total):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: COUNTER
# Metrics suffixed with _created, e.g. Hadoop:name=NameNodeActivity,attribute=FilesCreated
# The suffix _created is reserved for timestamps, therefore an underscore is appended.
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_created): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_created):'
attrNameSnakeCase: true
name: hadoop_$1_$3_
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: GAUGE
# Metrics suffixed with _info, e.g. Hadoop:name=JvmMetrics,attribute=LogInfo
# The suffix _info is reserved for static information, therefore an underscore is appended.
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*_info):'
attrNameSnakeCase: true
name: hadoop_$1_$3_
value: $4
labels:
service: HDFS
role: $1
kind: $2
type: GAUGE
# All other Hadoop metrics
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*): (.*)'
- pattern: 'Hadoop<service=(.*), name=(.*)><>(.*):'
attrNameSnakeCase: true
name: hadoop_$1_$3
value: $4
labels:
service: HDFS
role: $1
Expand Down