prometheus / prometheus/node_exporter

Compressed filesystem missing in node_filesystem_size_bytes and node_filesystem_free_bytes

Open
#2,300 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
13.8k
Forks
2.7k
Avg merge
1d 23h
Merged PRs (30d)
8

Description

Host operating system: output of uname -a

Linux andavir 5.10.0-11-amd64 #1 SMP Debian 5.10.92-1 (2022-01-18) x86_64 GNU/Linux

node_exporter version: output of node_exporter --version
node_exporter, version 1.1.2+ds (branch: debian/sid, revision: 1.1.2+ds-2.1)
  build user:       team+pkg-go@tracker.debian.org
  build date:       20210725-21:22:06
  go version:       go1.15.9
  platform:         linux/amd64
node_exporter command line flags

None

Are you running node_exporter in Docker?

No

What did you do that produced an error?

Fetched node_filesystem_size_bytes

What did you expect to see?

All the partitions on my host and their sizes

What did you see instead?

The expected output minus one partition

Info about the partition:
$ mount | grep sdb1
/dev/sdb1 on /mnt/archiv type btrfs (rw,relatime,compress=zstd:15,space_cache,subvolid=5,subvol=/)

df -h /dev/sdb1
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1        37T   20T   17T  54% /mnt/archiv

# btrfs subvolume show /mnt/archiv
/
	Name: 			<FS_TREE>
	UUID: 			<UUID>
	Parent UUID: 		-
	Received UUID: 		-
	Creation time: 		2021-11-22 16:20:49 +0100
	Subvolume ID: 		5
	Generation: 		39095
	Gen at creation: 	0
	Parent ID: 		0
	Top level ID: 		0
	Flags: 			-
	Snapshot(s):

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the missing partition in the node_filesystem_size_bytes and node_filesystem_free_bytes metrics using the reported Btrfs mount, df output, and subvolume details. Trace the filesystem metrics collection for this mount and determine what prevents it from being reported; done means the compressed Btrfs partition appears with its size and free-space metrics.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, linux
Domain
operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.