溫馨提示×

CentOS如何利用Python進行系統監控

小樊
123
2025-02-14 12:06:24
欄目: 編程語言

在CentOS系統中,你可以使用Python編寫腳本來進行系統監控。以下是一些基本步驟和示例,幫助你開始使用Python進行系統監控:

1. 安裝必要的Python庫

首先,確保你已經安裝了Python。CentOS 7默認安裝了Python 2.7,但推薦使用Python 3。你可以使用以下命令安裝Python 3和pip:

sudo yum install python3 python3-pip

然后,安裝一些常用的系統監控庫,例如psutilmatplotlib

pip3 install psutil matplotlib

2. 編寫監控腳本

下面是一個簡單的Python腳本示例,用于監控CPU使用率、內存使用率和磁盤I/O。

import psutil
import time
import matplotlib.pyplot as plt

# 初始化數據列表
cpu_usage = []
memory_usage = []
disk_io = []

# 監控間隔(秒)
interval = 5

# 監控時長(秒)
duration = 60

# 開始監控
end_time = time.time() + duration
while time.time() < end_time:
    # 獲取CPU使用率
    cpu_usage.append(psutil.cpu_percent(interval=interval))
    
    # 獲取內存使用率
    memory = psutil.virtual_memory()
    memory_usage.append(memory.percent)
    
    # 獲取磁盤I/O統計信息
    disk_io_stats = psutil.disk_io_counters()
    disk_io.append(disk_io_stats.read_bytes + disk_io_stats.write_bytes)
    
    # 打印當前監控數據
    print(f"Time: {time.strftime('%H:%M:%S')}, CPU Usage: {cpu_usage[-1]}%, Memory Usage: {memory_usage[-1]}%, Disk I/O: {disk_io[-1]} bytes")
    
    # 等待下一個監控間隔
    time.sleep(interval)

# 繪制圖表
plt.figure(figsize=(12, 6))

plt.subplot(3, 1, 1)
plt.plot(cpu_usage, label='CPU Usage (%)')
plt.xlabel('Time')
plt.ylabel('Usage (%)')
plt.title('CPU Usage Over Time')
plt.legend()

plt.subplot(3, 1, 2)
plt.plot(memory_usage, label='Memory Usage (%)', color='orange')
plt.xlabel('Time')
plt.ylabel('Usage (%)')
plt.title('Memory Usage Over Time')
plt.legend()

plt.subplot(3, 1, 3)
plt.plot(disk_io, label='Disk I/O (bytes)', color='green')
plt.xlabel('Time')
plt.ylabel('I/O (bytes)')
plt.title('Disk I/O Over Time')
plt.legend()

plt.tight_layout()
plt.show()

3. 運行監控腳本

將上述腳本保存為monitor.py,然后在終端中運行:

python3 monitor.py

4. 定期運行監控腳本

你可以使用cron來定期運行監控腳本。編輯crontab文件:

crontab -e

添加以下行以每分鐘運行一次監控腳本:

* * * * * /usr/bin/python3 /path/to/monitor.py >> /var/log/monitor.log 2>&1

保存并退出編輯器。

5. 進一步擴展

你可以根據需要擴展監控腳本,例如:

  • 監控網絡流量
  • 監控進程和線程
  • 發送警報(例如通過電子郵件或Slack)
  • 將數據存儲到數據庫中

通過這些步驟,你可以在CentOS系統上使用Python進行基本的系統監控。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女