【PHP】通过PHP实时监控Apache、MySQL服务运行状态

一、前言

有些时候我们需要监控一些服务的运行状态,比如说Apach或MySQL的运行状态,最近工作中也开发了这方面的功能,记录下来怎样使用PHP语言来实时监控Apache、MySQL服务的运行状态。

如果想一键开启Apache或MySQL等其他服务可以看这篇文章

【PHP】通过PHP开启/暂停Apache、MySQL或其他服务-CSDN博客

二、代码

首先要知道要监控服务的所在地址,下面代码中的地址根据实际情况修改。

返回值是'active'运行状态和'stop'停止状态,前端可以轮询请求这个方法,以实时监控服务运行状态。

php 复制代码
public function getServer()
{
	$info = [];

	// 要监控的服务
	$server['apache'] = "E:\phpstudy_pro\Extensions\Apache2.4.39\bin\httpd.exe";
	$server['mysql'] = "E:\phpstudy_pro\Extensions\MySQL5.7.26\bin\mysqld.exe";

	if (!empty($server)) {

		// apache
		$apache = $this->getProcessNameByName($server['apache']);
		if (!empty($apache)) {  
			if ($apache[0] == $server['apache']) {
				$info['apache'] = 'active';		//运行状态
			}else{
				$info['apache'] = 'stop';		//停止状态
			}
		} else {  
			$info['apache'] = 'stop';	//停止状态
		}  

		// mysql
		$mysql = $this->getProcessNameByName($server['mysql']);
		if (!empty($mysql)) {  
			if ($mysql[0] == $server['mysql']) {
				$info['mysql'] = 'active';	//运行状态
			}else{
				$info['mysql'] = 'stop';	//停止状态
			}
		} else {  
			$info['mysql'] = 'stop';	//停止状态
		}  
	}

	return apiResponse('200','success',$info);

}
相关推荐
91刘仁德4 小时前
MYSQL 事务原理及使用
android·mysql·adb
wxwx_bscxy3224 小时前
NodeJS 高校学业预警系统10551
mysql·node.js·vue·高校学业预警
我爱写代码i6 小时前
BeLink - 支持生成多种URL 缩短网址PHP源码
开发语言·php·短网址php源码
寺中人9 小时前
MySQL 8.0 Windows 完整安装教程:环境配置、密码重置与常见报错排查
数据库·windows·mysql·环境搭建·mysql 安装
这个DBA有点耶9 小时前
MySQL 8.0执行计划分析利器:EXPLAIN ANALYZE到底比EXPLAIN强在哪?
数据库·mysql·代码规范
啊阿狸不会拉杆11 小时前
《计算机网络-自顶向下方法》5.7 网络管理、SNMP和NETCONF/YANG 读书笔记
开发语言·计算机网络·php
吴声子夜歌12 小时前
ApacheCommons——commons-exec(外部进程与系统命令安全执行)
java·安全·apache
mjhcsp13 小时前
DeepSeek V4 Flash 0731 (Batch) 深度评测报告
log4j·php·batch
数据库小学妹13 小时前
MySQL长事务复盘:Sleep连接、MDL排队与undo滞留
运维·数据库·mysql
计算机毕设定制辅导-无忧学长13 小时前
基于Spring Boot的玄幻小说个性化推荐平台设计与实现
java·vue.js·spring boot·后端·mysql·推荐算法