]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
client,mds: add support for subvolume level metrics
authorIgor Golikov <igolikov@ibm.com>
Thu, 10 Jul 2025 10:17:36 +0000 (10:17 +0000)
committerIgor Golikov <igolikov@ibm.com>
Sun, 10 Aug 2025 12:40:05 +0000 (12:40 +0000)
commitc2085e9bb77e4eec7feef31b189919d715788057
treec91bef5842a2602e57c2c08fb6c10763a5cc5725
parent0542a5e70c79c13aeba24fb4edc0163746875e53
client,mds: add support for subvolume level metrics

Add support for client side metrics collection using SimpleIOMetric
struct and aggregation using AggregatedIOMetrics struct,
Client holds SimpleIOMetrics vector per each subvolume it recognized
(via caps/metadata messages), aggregates them into the
AggregatedIOMetric struct, and sends  periodically to the MDS, along
with regulat client metrics.
MDS holds map of subvolume_path -> vector<AggregatedIOMetrics> and sends
it periodically to rank0, for further aggregation and exposure.

Fixes: https://tracker.ceph.com/issues/68929, https://tracker.ceph.com/issues/68930
Signed-off-by: Igor Golikov <igolikov@ibm.com>
16 files changed:
src/client/Client.cc
src/client/Client.h
src/include/cephfs/metrics/Types.h
src/mds/CInode.cc
src/mds/CInode.h
src/mds/Locker.cc
src/mds/Locker.h
src/mds/MDSRank.cc
src/mds/MDSRank.h
src/mds/MetricsHandler.cc
src/mds/MetricsHandler.h
src/mds/cephfs_features.h
src/mds/mdstypes.cc
src/mds/mdstypes.h
src/messages/MClientCaps.h
src/messages/MClientReply.h