def METHOD_NAME(self, _):
    btrfs_devices = {}
    for p in psutil.disk_partitions():
        if p.fstype == 'btrfs' and p.device not in btrfs_devices and p.device not in self.excluded_devices:
            btrfs_devices[p.device] = p.mountpoint
    if len(btrfs_devices) == 0:
        raise Exception("No btrfs device found")
    for device, mountpoint in iteritems(btrfs_devices):
        for flags, total_bytes, used_bytes in self.get_usage(mountpoint):
            replication_type, usage_type = FLAGS_MAPPER[flags]
            tags = [
                'usage_type:{}'.format(usage_type),
                'replication_type:{}'.format(replication_type),
                "device:{}".format(device),
            ]
            tags.extend(self.custom_tags)
            free = total_bytes - used_bytes
            usage = used_bytes / total_bytes
            self.gauge('system.disk.btrfs.total', total_bytes, tags=tags)
            self.gauge('system.disk.btrfs.used', used_bytes, tags=tags)
            self.gauge('system.disk.btrfs.free', free, tags=tags)
            self.gauge('system.disk.btrfs.usage', usage, tags=tags)
        unallocated_bytes = self.get_unallocated_space(mountpoint)
        if unallocated_bytes is not None:
            tags = ["device:{}".format(device)] + self.custom_tags
            self.gauge("system.disk.btrfs.unallocated", unallocated_bytes, tags=tags)
        else:
            self.log.debug(
                "Could not retrieve the number of unallocated bytes for all devices,"
                " skipping metric for mountpoint %s",
                mountpoint,
            )