Skip to main content

A Python library for xmov systemmonitor

Project description

xmovsystemmonitor

一个用于监测系统CPU和内存使用率的工具,提供HTTP API接口,可以用于监控系统性能(内存、CPU)。

Features

安装

# 本地
pip install xmovsystemmonitor -i https://pypi.org/simple/
# 阿里云
pip install xmovsystemmonitor -i http://pypi.aliyun.com/simple/

用法

python -m xmovsystemmonitor 
# 指定主机和端口, 并指定最大记录数量
python -m xmovsystemmonitor --host 0.0.0.0 --port 8000 --max-num 3000

开发测试

import pytest
import requests
import json
from functools import partial

json_dump = partial(json.dumps, indent=4, ensure_ascii=False)


def test_get_system_info():
    response = requests.get("http://localhost:8000/")
    print(response.json())
    assert response.status_code == 200
    assert "cpu_percent" in response.json()
    assert "memory_percent" in response.json()

def test_start_monitoring():
    response = requests.get("http://localhost:8000/start-monitoring")
    print(response.json())
    assert response.status_code == 200
    assert "message" in response.json()
    assert response.json()["message"] == "监控已启动"

def test_stop_monitoring():
    response = requests.get("http://localhost:8000/stop-monitoring")
    print(response.json())
    assert response.status_code == 200
    assert "message" in response.json()
    assert response.json()["message"] == "监控已停止"

def test_statistic():
    response = requests.get("http://localhost:8000/statistic")
    print(json_dump(response.json()))
    assert response.status_code == 200
    assert "cpu_percent" in response.json()
    assert "memory_percent" in response.json()
    assert "data_list" in response.json()

开发配置

# 克隆仓库
git clone git@github.com:atanx/xmovsystemmonitor.git
cd xmovsystemmonitor

# 安装开发依赖
pip install -e ".[dev]"

# 手动修改修改__init__.py中的__version__, 然后打包
make build

# 上传到xmov-pypi, 需要安装twine, 配置~/.pypirc
make upload

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xmovsystemmonitor-1.3.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xmovsystemmonitor-1.3.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file xmovsystemmonitor-1.3.0.tar.gz.

File metadata

  • Download URL: xmovsystemmonitor-1.3.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.19

File hashes

Hashes for xmovsystemmonitor-1.3.0.tar.gz
Algorithm Hash digest
SHA256 cc61e744bd78a9f091ba82cb1e27b8f6fddd33c2c62b8dcfd2bdfb13e6ff72d5
MD5 4c79355b30084fa7be416d550c6e7f0c
BLAKE2b-256 5adf3a8a14b4eeed71066a30f5621a4fb634b3bf6cbad5ef1ae71f26e2b23bbe

See more details on using hashes here.

File details

Details for the file xmovsystemmonitor-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for xmovsystemmonitor-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 084980567bad885964d74adee5589ca626e2e8e662e2c2aac162dc08289ec908
MD5 f21f06c56edf9aa7a05b2ad19687c76f
BLAKE2b-256 534517fe7bf139b98cd0bca6702abe2475cc458b04262de0fe522ee4201d5a9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page