如何通过 C++in QT 监控 Linux 中的服务

How to monitor a service in Linux via C++in QT?

本文关键字:服务 Linux 监控 何通过 C++in QT      更新时间:2023-10-16

我正在开发一个小应用程序,在 Ubuntu 盒子上使用 QT Creator 测试C++中的水域。

这是交易,我想启动/停止某个服务,并监控它的状态,以防它在我的应用程序之外启动/停止。

我涵盖了第一部分,即使用 QProcess 启动/停止服务。

在阅读有关QProcess时,我遇到了这个问题,但不幸的是,我无法理解它来实现它。

我真的很感激这里的一些帮助。

问候

在 Linux 机器上启动/停止服务最好通过其服务管理界面完成,而不是通过 QProcess 。鉴于您的项目是新的,我不会尝试支持 Ubuntu 专有服务管理器(Upstart),而是构建对 systemd 的支持,这将在不久的将来取代它。

首先,您需要安装 systemd。

https://askubuntu.com/questions/420917/how-can-i-replace-upstart-with-systemd

然后试试这个C++库:

https://github.com/ilpianista/libsystemd-qt