summaryrefslogtreecommitdiffstats
path: root/src/seastar/include/seastar/core/scollectd_api.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/seastar/include/seastar/core/scollectd_api.hh')
-rw-r--r--src/seastar/include/seastar/core/scollectd_api.hh35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/seastar/include/seastar/core/scollectd_api.hh b/src/seastar/include/seastar/core/scollectd_api.hh
new file mode 100644
index 000000000..b4ca7eae9
--- /dev/null
+++ b/src/seastar/include/seastar/core/scollectd_api.hh
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2015 Cloudius Systems
+ */
+
+#pragma once
+
+#include <seastar/core/scollectd.hh>
+#include <seastar/core/metrics_api.hh>
+
+namespace seastar {
+
+namespace scollectd {
+
+using collectd_value = seastar::metrics::impl::metric_value;
+
+std::vector<collectd_value> get_collectd_value(
+ const scollectd::type_instance_id& id);
+
+std::vector<scollectd::type_instance_id> get_collectd_ids();
+
+sstring get_collectd_description_str(const scollectd::type_instance_id&);
+
+bool is_enabled(const scollectd::type_instance_id& id);
+/**
+ * Enable or disable collectd metrics on local instance
+ * @param id - the metric to enable or disable
+ * @param enable - should the collectd metrics be enable or disable
+ */
+void enable(const scollectd::type_instance_id& id, bool enable);
+
+
+metrics::impl::value_map get_value_map();
+}
+
+}