%description -n cephfs-mirror
Daemon for mirroring CephFS snapshots between Ceph clusters.
+%package -n ceph-exporter
+Summary: Ceph daemon for collecting perf counters
+%if 0%{?suse_version}
+Group: System/Filesystems
+%endif
+Requires: ceph-base = %{_epoch_prefix}%{version}-%{release}
+%description -n ceph-exporter
+Daemon for collecting perf counters.
+
%package -n rbd-fuse
Summary: Ceph fuse-based client
%if 0%{?suse_version}
fi
fi
+%files -n ceph-exporter
+%{_bindir}/ceph-exporter
+
%files -n rbd-fuse
%{_bindir}/rbd-fuse
%{_mandir}/man8/rbd-fuse.8*
add_executable(ceph-exporter ${exporter_srcs})
target_link_libraries(ceph-exporter
global-static ceph-common)
+install(TARGETS ceph-exporter DESTINATION bin)
}
void DaemonMetricCollector::update_sockets() {
- std::string path = "/tmp/ceph-asok.Qq4nS2";
+ std::string path = "/var/run/ceph/";
for (const auto & entry : std::filesystem::directory_iterator(path)) {
- std::string daemon_socket_name = entry.path().filename().string();
- std::cout << "Got socket: " << daemon_socket_name << std::endl;
- // remove .asok
- std::string daemon_name = daemon_socket_name.substr(0, daemon_socket_name.size() - 5);
- if (clients.find(daemon_name) == clients.end()) {
- AdminSocketClient sock(entry.path().string());
- clients.insert({daemon_name, std::move(sock)});
+ if (entry.path().extension() == ".asok") {
+ std::string daemon_socket_name = entry.path().filename().string();
+ std::cout << "Got socket: " << daemon_socket_name << std::endl;
+ // remove .asok
+ std::string daemon_name = daemon_socket_name.substr(0, daemon_socket_name.size() - 5);
+ if (clients.find(daemon_name) == clients.end()) {
+ AdminSocketClient sock(entry.path().string());
+ clients.insert({daemon_name, std::move(sock)});
+ }
}
}
}