python监控linux内存并写入mongodb

本文介绍了一个使用Python编写的简单内存监控脚本,该脚本利用psutil和pymongo库来收集并记录服务器的内存使用情况到MongoDB数据库。

 

(需要安装psutil 用来获取服务器资源,以及pymongo驱动)#pip install psutil

#pip install pymongo

#vim memory_monitory.py

文件内容如下

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import psutil
import socket
import time
from pymongo import MongoClient
mongodbIp = '192.168.200.112'
mongodbPort = 27017
hostname = socket.gethostbyname(socket.gethostname())#获取本地IP地址
def getCurrentTime():
        return time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
memoryInfo = psutil.virtual_memory()
conn = MongoClient(mongodbIp,mongodbPort)
db = conn.servermonitor
dbset = db.memory
dbset.insert({
        'time':getCurrentTime(),
        'total':memoryInfo.total,
        'available':memoryInfo.available,
        'percent':memoryInfo.percent,
        'used':memoryInfo.used,
        'free':memoryInfo.free,
        'active':memoryInfo.active,
        'inactive':memoryInfo.inactive,
        'buffers':memoryInfo.buffers,
        'cached':memoryInfo.cached})

修改文件可以直接执行

#chmod +x memory_monitor.py

使用crontab 定时执行监控程序

#vim vim /etc/crontab

添加如下内容(每分钟执行一次)

*/1 * * * * root /usr/local/memory_monitor.py

#service crond reload   //重新载入配置
#service crond restart  //重启服务
 

 

转载于:https://www.cnblogs.com/wangchaozhi/p/7505549.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值