#pragma once #include "config.h" #include namespace phosphor { namespace rsyslog_utils { /** @brief Restart rsyslog's systemd unit * Ensures that it is restarted even if the start limit was * hit in systemd. */ void restart() { auto bus = sdbusplus::bus::new_default(); constexpr char service[] = "rsyslog.service"; { auto method = bus.new_method_call(SYSTEMD_BUSNAME, SYSTEMD_PATH, SYSTEMD_INTERFACE, "ResetFailedUnit"); method.append(service); bus.call_noreply(method); } { auto method = bus.new_method_call(SYSTEMD_BUSNAME, SYSTEMD_PATH, SYSTEMD_INTERFACE, "RestartUnit"); method.append(service, "replace"); bus.call_noreply(method); } } } // namespace rsyslog_utils } // namespace phosphor