python监控linux内存并写入mongodb(推荐)

yipeiwu_com6年前Python基础

(需要安装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 //重启服务

总结

以上所述是小编给大家介绍的python监控linux内存并写入mongodb,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python3 打印输出字典中特定的某个key的方法示例

本文实例讲述了python3 打印输出字典中特定的某个key的方法。分享给大家供大家参考,具体如下: 大家都知道python中的字典里的元素是无序的,不能通过索引去找到它,今天说我下通过...

浅谈Python中用datetime包进行对时间的一些操作

1. 计算给出两个时间之间的时间差 import datetime as dt # current time cur_time = dt.datetime.today() # one...

Python写入数据到MP3文件中的方法

本文实例讲述了Python写入数据到MP3文件中的方法。分享给大家供大家参考。具体分析如下: 通过Mp3的Id3V1数据段的数据来修正Mp3文件的正确名字,但是,有时候这个数据断中的数据...

Python 二叉树的层序建立与三种遍历实现详解

Python 二叉树的层序建立与三种遍历实现详解

前言 二叉树(Binary Tree)时数据结构中一个非常重要的结构,其具有。。。。(此处省略好多字)。。。。等的优良特点。 之前在刷LeetCode的时候把有关树的题目全部跳过了,(O...

Python连接数据库学习之DB-API详解

Python连接数据库学习之DB-API详解

前言 大家都知道在Python中如果要连接数据库,不管是MySQL、SQL Server、PostgreSQL亦或是SQLite,使用时都是采用游标的方式,所以就不得不学习Python...