python监控nginx端口和进程状态
作者:狼叔也疯狂 发布时间:2023-08-25 16:15:13
标签:python,监控,端口
本文实例为大家分享了python监控nginx端口和进程状态的具体代码,供大家参考,具体内容如下
#!/usr/local/bin/python
# coding:utf-8
import psutil
import sys
import os
# 获取主机名称
def hostname():
sys = os.name
if sys == 'nt':
hostname = os.getenv('computername')
return hostname
elif sys == 'posix':
host = os.popen('echo $HOSTNAME')
try:
hostname = host.read()
return hostname
finally:
host.close()
else:
return 'Unkwon hostname'
# 获取进程状态
def processStatus(processName):
pids = psutil.pids() #获取主机所有的PID
a = 1
for pid in pids: #对所有PID进行循环
p = psutil.Process(pid) #实例化进程对象
if p.name() == processName: #判断实例进程名与输入的进程名是否一致(判断进程是否存活)
print (a) #返回1,进程存活
a += 1
if a == 1:
print (0) #返回0,进程逝去
# 获取进程PID
def processPID(processName):
pids = psutil.pids()
for pid in pids:
p = psutil.Process(pid)
if p.name() == processName:
return pid
return True # 如果找到该进程则打印它的PID,返回true
else:
print('找不到进程'+processName)
return False # 没有找到该进程,返回false
# 获取进程的端口号
def processPort(pid):
p = psutil.Process(pid)
data=p.connections()
data_listen=[x for x in data if 'LISTEN' in x ]
# pid_port=[]
# for port in data_listen:
# pid_port.append((port.laddr.port))
# return list(set(pid_port))
return list(data_listen[0][3])[1]
hostname=hostname().strip()
PID=processPID('nginx')
port=processPort(PID)
json_data = [
{"name": hostname+'-nginx', "port": port,"host_ip":LOCAL_IP,"PID":PID}
]
AutoDiscoveryJson(json_data, object_id='HOST')
来源:https://blog.csdn.net/xwl145/article/details/81231414
0
投稿
猜你喜欢
- 页面中无法看见页面,指向的连接网页无法显示 解决方法:1、首先在Dreamweaver中不能中文作为文件名。连目录名也最好是英文的。2、如果
- 使用MySQL,安全问题不能不注意。以下是MySQL提示的23个注意事项:1、如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就
- 一、偏好资源的积累利用DreamWeaver 4制作网页会应用到许多各种类型的要素,比如色彩、图片、模板、脚本等。利用站点资源面板将这些东东
- 从MySQL 5.0 开始,支持了一个全新的SQL句法:PREPARE stmt_name FROM preparable_stmt;EXE
- <?php $search = array ("'<script[^>]*?>.*?</sc
- 整本书围绕着一个叫做“CSS禅意花园”的网站展开,其实N久之前我在一份外国的关于CSS的在线教程上看到了这个网站的链接,可惜进去之后发现内容
- 这些CSS Selector在平时写页面的时候用地不多,只在JavaScript库、Firefox插件、iPhone页面里有过接触。推荐大家
- 当你要使用data URI scheme的时候,你会发现,虽然他可以使用在绝大多数浏览器上,但无法再IE6和IE7上工作。不过值得庆幸的这一
- 在计算机中数据有两种特征:类型和长度。所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类。在SQL Server 中每个变量、参数
- 如何利用Image Data Type从数据库中读取图片,并在主页中显示图形?然后,写如下代码:< % @&nbs
- 两年前发表的《The visual design of Web 2.0》中提到“Rounded everything”,圆角因使人感觉舒适的
- 1 硬件设备TTL串口摄像头(VC0706)USB转TTL烧录器2 serial安装第一次安装的是serial的包导包的时候发现下载错了,正
- 1 简介本篇主要介绍使用pytorch实现基于CharRNN来进行文本分类与内容生成所需要的相关知识,并最终给出完整的实现代码。2 相关AP
- 1.json_decode() json_decode (PHP 5 >= 5.2.0, PECL json >= 1.2.0)
- 前言:HTML5和CSS3的时代到来了,新版2011版淘宝网首页已全部使用HTML5,拥抱变化才是王道。为之漫笔翻译的很好,看了一遍后,感觉
- 今天在工作中遇到了一个问题,需要按时间查询,可是查询出来的结果显示的不正确。举个例子来说,要查找出2007-10-12至2007-10-31
- Hihi, 大家好~ 最近有不少人都提及了网页上该如何选择字体的问题。问题虽然小,但是却是前端开发中的基本,因为目前的网页,还是以文字信息
- 如何做一个随机密码产生器?<%genPassword = ""RandomizeFor&nbs
- 在修改后的 《闲谈 Web 图片服务器》 一文中也提及了"IE 浏览器的连接数问题",这也是个有趣的话题。值得补充记录一
- image.jsp------------------------------生成随机验证码图片的Jsp页面 代码如下: <