Holger Hoffstätte
Holger Hoffstätte
Hi @leth, I gave your branch `leth/node_exporter/tree/btrds-device-stats` a try and I get btrfs metrics as usual, but no error metrics (except for the generic `node_filesystem_device_error`). My filesystem doesn't have any...
> am I holding it wrong? :) I was holding it wrong and successfully tested the master branch. :cocktail: Using the correct branch gives me: ``` node_btrfs_device_errors_total{device="sdc1",device_uuid="01d2fa5e-0994-4d29-add7-8596122817ca",type="corruption",uuid="d163af2f-6e03-4972-bfd6-30c68b6ed312"} 0 node_btrfs_device_errors_total{device="sdc1",device_uuid="01d2fa5e-0994-4d29-add7-8596122817ca",type="flush",uuid="d163af2f-6e03-4972-bfd6-30c68b6ed312"} 0...
> Ah! Thanks! Whoops, would you mind checking if it's the partition uuid? Indeed it is! ``` $blkid /dev/sdc1 /dev/sdc1: LABEL="Backups" UUID="d163af2f-6e03-4972-bfd6-30c68b6ed312" UUID_SUB="01d2fa5e-0994-4d29-add7-8596122817ca" BLOCK_SIZE="4096" TYPE="btrfs" PARTUUID="23109a24-e06a-49df-94bd-9035efdc1c9f" ```
The existing collector in node_exporter (as [mentioned](https://github.com/prometheus/node_exporter/issues/2173#issuecomment-948444654)) does **not** export device stats/errors, due to the requirement of using ioctls ~~and requring root~~. The script in the -community repo was a...
This can be easily fixed by not warning about macro redefinitions. I've tried it [here](https://github.com/hhoffstaette/bcc/commit/828388e0006c2b79ada66e2d1556b27f7018f967) and it works fine. I realize this might be contentious since usually macro redefinitions are...
> Do you plan to propose this in a PR? It certainly improve the situation. Can do later today, sure.
> This is not a problem with the publisher. Actually one could say that it is unless you start publishing metatype information. Right now the value type is not discoverable...
Love this idea, but since this ventures into app metrics (as the exporter library will be embedded elsewhere), platform dependencies & licensing I'd like to suggest we KISS this by...
Btw I noticed that compared to `btrfs device stats` output, the device read/write/flush errors in python-btrfs are missing the `_io_` in the error name. While I personally don't care much,...
> So, since it's e.g. BTRFS_DEV_STAT_WRITE_ERRS and not BTRFS_DEV_STAT_WRITE_IO_ERRS, > it ended up without _io in here. Interesting! In the case of Prometheus this means a previous series would be...