#include "common/perf_counters_key.h"
#include "crush/CrushWrapper.h"
#include "include/stringify.h"
+#include "json_spirit/json_spirit_writer.h"
#include "mon/MonMap.h"
#include "osd/OSDMap.h"
#include "mgr/MgrContext.h"
#include "mgr/TTLCache.h"
#include "mgr/mgr_perf_counters.h"
+#include "messages/MMgrReport.h" // for class PerfCounterType
#include "DaemonKey.h"
#include "DaemonServer.h"
#include "mon/MonCommand.h"
#include "mon/mon_types.h"
#include "mon/ConfigMap.h"
+#include "mgr/MDSPerfMetricTypes.h"
#include "mgr/TTLCache.h"
#include "DaemonState.h"
#include "OSDPerfMetricTypes.h"
#include <map>
+#include <optional>
#include <set>
#include <string>
#include "messages/MCommandReply.h"
#include "messages/MMgrCommand.h"
#include "messages/MMgrCommandReply.h"
+#include "messages/MMgrReport.h"
#include "messages/MPGStats.h"
#include "messages/MOSDScrub2.h"
#include "messages/MOSDForceRecovery.h"
#include "MgrSession.h"
#include "include/stringify.h"
+#include "include/str_map.h"
#include "common/Clock.h" // for ceph_clock_now()
#include "common/debug.h"
#include "common/Formatter.h"
#include <set>
#include <boost/circular_buffer.hpp>
+#include "common/ceph_mutex.h"
+#include "common/perf_counters.h" // for enum perfcounter_type_d
+#include "common/RefCountedObj.h"
#include "include/str_map.h"
+#include "include/utime.h"
#include "msg/msg_types.h"
// For PerfCounterType
#include "messages/MMgrReport.h"
+#include "DaemonHealthMetric.h"
#include "DaemonKey.h"
namespace ceph {
#include <vector>
#include <iosfwd>
+#include "include/cephfs/types.h" // for mds_rank_t
#include "include/denc.h"
#include "include/stringify.h"
+#include "include/utime.h"
#include "common/Formatter.h"
#include "mds/mdstypes.h"
#ifndef CEPH_MGR_METRIC_TYPES_H
#define CEPH_MGR_METRIC_TYPES_H
+#include <boost/variant/static_visitor.hpp>
#include <variant>
#include "include/denc.h"
#include "include/ceph_features.h"
#include "common/errno.h"
#include "mon/MonClient.h"
#include "include/stringify.h"
+#include "include/str_map.h"
#include "global/global_context.h"
#include "global/signal_handler.h"
#include "mgr/Types.h"
+#include <iosfwd>
+#include <list>
+#include <map>
#include <regex>
+#include <set>
+#include <string>
+#include <vector>
typedef std::vector<std::string> OSDPerfMetricSubKey; // array of regex match
typedef std::vector<OSDPerfMetricSubKey> OSDPerfMetricKey;
#ifndef CEPH_MGR_TYPES_H
#define CEPH_MGR_TYPES_H
+#include <vector>
+
typedef int MetricQueryID;
typedef std::pair<uint64_t,uint64_t> PerformanceCounter;