最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python編寫監(jiān)控系統(tǒng)各項資源的腳本

 更新時間:2023年11月03日 14:11:19   作者:shigen01  
這篇文章主要為大家詳細(xì)介紹了如何編寫一個python腳本,實現(xiàn)監(jiān)控網(wǎng)絡(luò)的流量、CPU使用率、內(nèi)存使用率和磁盤使用情況,感興趣的小伙伴可以了解下

今天的文章涉及到docker的操作和一個python腳本,實現(xiàn)監(jiān)控網(wǎng)絡(luò)的流量、CPU使用率、內(nèi)存使用率和磁盤使用情況。來和shigen一起先看看效果吧:

這是在控制臺中出現(xiàn)的數(shù)據(jù),可以很簡單的看到我們想要的監(jiān)控指標(biāo)。如果實現(xiàn)定時任務(wù)和數(shù)據(jù)的存儲、數(shù)據(jù)的展示,就是很好看的數(shù)據(jù)監(jiān)控圖表了。

我的代碼主要是運行在一個centos的docker容器中。

是的,你沒有看錯,我還暴露了容器的22端口,供我在宿主機(jī)進(jìn)行連接。

但是這不是重點,我拉取的centos其實是一個裸機(jī),跟我們最開始買的服務(wù)器一樣的。運行代碼,肯定是需要安裝python解釋器的,這里shigen找到了珍藏許久的shell腳本,直接復(fù)制粘貼即可配置好python的環(huán)境。

這里我選取的python版本是:3.9.2。

wget https://registry.npmmirror.com/-/binary/python/3.9.2/Python-3.9.2.tgz
tar -zxvf Python*
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
./configure
make && make install

驗證python是否安裝成功,只需要執(zhí)行一下命令即可:

which python3 && python3 --version

那其實還有很重要的一步:配置pip的鏡像,不然網(wǎng)絡(luò)會慢到你懷疑人生。

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

現(xiàn)在,我們的前置的準(zhǔn)備工作全部的完成了。我們直接在vscode中編輯好代碼:

# -*- encoding: utf-8 -*-
__date__ = '2023/11/02 19:01:26'

import psutil
from rich.table import Table
from rich.console import Console

# 創(chuàng)建新表格
table = Table(show_header=True, header_style="bold magenta", expand=True)
table.add_column("指標(biāo)", style="dim", width=12)
table.add_column("數(shù)值", justify="right")

# 獲取系統(tǒng)信息
cpu_percent = psutil.cpu_percent(interval=1)
cpu_freq = psutil.cpu_freq()
cpu_cores = psutil.cpu_count(logical=False)
memory = psutil.virtual_memory()
network_stats = psutil.net_io_counters()
disk_stats = psutil.disk_partitions(all=True)

# 添加 CPU 信息到表格
table.add_row("CPU 使用率", f"{cpu_percent}%")
if cpu_freq is not None:
    table.add_row("CPU 頻率", f"{cpu_freq.current:.2f} MHz")
else:
    table.add_row("CPU 頻率", "N/A")
table.add_row("CPU 核心數(shù)", f"{cpu_cores} 核")

# 添加內(nèi)存信息到表格
table.add_row("總內(nèi)存", f"{memory.total / (1024**3):.2f} GB")
table.add_row("已用內(nèi)存", f"{memory.used / (1024**3):.2f} GB")
table.add_row("內(nèi)存使用百分比", f"{memory.percent}%")

# 添加網(wǎng)絡(luò)信息到表格
table.add_row("發(fā)送字節(jié)數(shù)", f"{network_stats.bytes_sent / (1024**2):.2f} MB")
table.add_row("接收字節(jié)數(shù)", f"{network_stats.bytes_recv / (1024**2):.2f} MB")

# 添加磁盤信息到表格
for partition in disk_stats:
    disk_usage = psutil.disk_usage(partition.mountpoint)
    table.add_row(f"{partition.device} ({partition.mountpoint})", f"{disk_usage.percent}%")

# 創(chuàng)建 console 對象并輸出表格
console = Console()
console.print(table)

這里主要用到了兩個庫:psutilrich,借助psutil我們可以輕易的獲得系統(tǒng)的各種指標(biāo),那rich主要是在控制臺實現(xiàn)炫酷的效果。這里是時間關(guān)系,shigen寫的比較簡單。

那文件在我的主機(jī)上,centos的服務(wù)器在我的docker里邊,文件到我的docker容器就需要docker cp派上用場了。在主機(jī)執(zhí)行:

docker cp xx.py dockerId:/shigen/python

我們安裝一下需要的庫:

pip3 install psutil rich

現(xiàn)在環(huán)境配置成功,我們就可以看到上邊的表格指標(biāo)數(shù)據(jù)了。其實還是主要的復(fù)習(xí)一下docker的使用,順便寫了一個腳本實現(xiàn)服務(wù)器資源的監(jiān)控,算是一個日常的練手吧。

以上就是基于python編寫監(jiān)控系統(tǒng)各項資源的腳本的詳細(xì)內(nèi)容,更多關(guān)于python監(jiān)控系統(tǒng)資源的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 用python記錄運行pid,并在需要時kill掉它們的實例

    用python記錄運行pid,并在需要時kill掉它們的實例

    下面小編就為大家?guī)硪黄胮ython記錄運行pid,并在需要時kill掉它們的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例)

    matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例)

    本文主要介紹了matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Python連接數(shù)據(jù)庫使用matplotlib畫柱形圖

    Python連接數(shù)據(jù)庫使用matplotlib畫柱形圖

    這篇文章主要介紹了Python連接數(shù)據(jù)庫使用matplotlib畫柱形圖,文章通過實例展開對主題的相關(guān)介紹。具有一定的知識參考價值性,感興趣的小伙伴可以參考一下
    2022-06-06
  • python的Tqdm模塊的使用

    python的Tqdm模塊的使用

    這篇文章主要介紹了python的Tqdm模塊的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋

    Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋

    這篇文章主要介紹了Pytorch中關(guān)于BatchNorm2d的參數(shù)解釋,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python基礎(chǔ)之函數(shù)用法實例詳解

    Python基礎(chǔ)之函數(shù)用法實例詳解

    這篇文章主要介紹了Python中函數(shù)用法,包括了函數(shù)的創(chuàng)建、定義、參數(shù)等,需要的朋友可以參考下
    2014-09-09
  • django實現(xiàn)同一個ip十分鐘內(nèi)只能注冊一次的實例

    django實現(xiàn)同一個ip十分鐘內(nèi)只能注冊一次的實例

    下面小編就為大家?guī)硪黄猟jango實現(xiàn)同一個ip十分鐘內(nèi)只能注冊一次的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • NumPy中的實用函數(shù)clip詳解

    NumPy中的實用函數(shù)clip詳解

    這篇文章主要介紹了NumPy中的實用函數(shù)clip詳解,NumPy函數(shù)clip()用于保留數(shù)組中在間隔范圍內(nèi)的值,給定一個范圍,范圍外的值將剪裁到范圍邊界,需要的朋友可以參考下的相關(guān)資料
    2023-08-08
  • Python爬蟲實戰(zhàn)之網(wǎng)易云音樂加密解析附源碼

    Python爬蟲實戰(zhàn)之網(wǎng)易云音樂加密解析附源碼

    讀萬卷書不如行萬里路,學(xué)的扎不扎實要通過實戰(zhàn)才能看出來,本篇文章手把手帶你解析網(wǎng)易云音樂數(shù)據(jù),大家可以在實戰(zhàn)過程中更有效的掌握python
    2021-10-10
  • python讀csv文件時指定行為表頭或無表頭的方法

    python讀csv文件時指定行為表頭或無表頭的方法

    這篇文章主要介紹了python讀csv文件時指定行為表頭或無表頭的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評論

巴南区| 白水县| 罗平县| 津南区| 新巴尔虎右旗| 都江堰市| 同仁县| 民勤县| 马山县| 合作市| 开鲁县| 汝阳县| 潞西市| 永康市| 香格里拉县| 翁源县| 平安县| 屏东县| 双江| 东港市| 遂昌县| 黄石市| 忻城县| 米林县| 宣汉县| 肇庆市| 南丹县| 湖口县| 临朐县| 苗栗县| 托里县| 金山区| 西安市| 渝北区| 隆尧县| 大竹县| 海城市| 博兴县| 特克斯县| 崇信县| 四子王旗|