又一个云探针

Overview

ServerStatus-Murasame

感谢ServerStatus-Hotaru,又一个云探针诞生了(大雾
本项目在ServerStatus-Hotaru的基础上使用fastapi重构了服务端,部分修改了客户端与前端
项目还在非常原始的阶段,可能存在严重的问题
演示站:https://status.coldthunder11.com/

与ServerStatus-Hotaru的对比

  • 纯python实现
  • 同时支持websocket与轮询两种查询方式
  • 性能更差,bug更多(
  • 好像没了

兼容性

  • 服务端配置文件 √
  • 前端网页 基本兼容,需要对在线时间的显示做修改
  • 服务端 ×
  • 客户端 ×

ToDo

  • 前端websocket自动重连 √
  • 更完善的错误处理机制
  • 为前端添加服务器管理功能
  • 一键部署脚本

安装方法

警告:本项目还在非常原始的阶段,协议随时可能发生更改,可能会有严重的问题,暂时不建议在生产环境下部署,仅在Python3.7+下测试通过

手动安装

服务端:
1.clone本项目
2.使用你喜欢的方式构建前端(Murasame_theme),并将构建生产dist文件夹置于server_fastapi内
3.进入server_fastapi目录
4.将config.json.example复制一份并且重命名为config.json,修改相关配置,也可以直接使用ServerStatus-Hotaru的配置文件
5.pip install -r requirements.txt
6.python server.py或uvicorn server:app --host 监听IP --port 端口号
服务端默认监听0.0.0.0:28094,可自行在server.py修改。建议监听本地并在公网使用反代(需要同时反代http和websocket)

1.去release里下载server.zip,解压并进入ServerStatus-Murasame目录
2.将config.json.example复制一份并且重命名为config.json,修改相关配置,也可以直接使用ServerStatus-Hotaru的配置文件
3.pip install -r requirements.txt
4.python server.py或uvicorn server:app --host 监听IP --port 端口号
服务端默认监听0.0.0.0:28094,可自行在server.py修改。建议监听本地并在公网使用反代(需要同时反代http和websocket)

客户端:
linux版:

wget https://github.com/ColdThunder11/ServerStatus-Murasame/raw/master/client_ws/status-client.py  
wget https://github.com/ColdThunder11/ServerStatus-Murasame/raw/master/client_ws/config.json
pip install websocket-client  
修改config.json  
python status-client.py 

psutil版:
1.下载https://github.com/ColdThunder11/ServerStatus-Murasame/raw/master/client_ws/status-psutil.py 以及https://github.com/ColdThunder11/ServerStatus-Murasame/raw/master/client_ws/config.json
2.pip install psutil websocket-client
3.修改config.json
4.python status-psutil.py

一键安装

客户端(当前仅支持Debian):
会在当前目录安装,请先切换好目录

wget https://github.com/ColdThunder11/ServerStatus-Murasame/raw/master/install.py
python3 install.py -c 如果本机没有安装pip,可以使用-nopip参数本地处理依赖

相关开源项目 :

You might also like...
Releases(0.0.2)
Alternative layout visualizer for ZSA Moonlander keyboard

General info This is a keyboard layout visualizer for ZSA Moonlander keyboard (because I didn't find their Oryx or their training tool particularly us

10 Jul 19, 2022
Backend app for visualizing CANedge log files in Grafana (directly from local disk or S3)

CANedge Grafana Backend - Visualize CAN/LIN Data in Dashboards This project enables easy dashboard visualization of log files from the CANedge CAN/LIN

13 Dec 15, 2022
A gui application to visualize various sorting algorithms using pure python.

Sorting Algorithm Visualizer A gui application to visualize various sorting algorithms using pure python. Language : Python 3 Libraries required Tkint

Rajarshi Banerjee 19 Nov 30, 2022
3D Vision functions with end-to-end support for deep learning developers, written in Ivy.

Ivy vision focuses predominantly on 3D vision, with functions for camera geometry, image projections, co-ordinate frame transformations, forward warping, inverse warping, optical flow, depth triangul

Ivy 61 Dec 29, 2022
Visualize the bitcoin blockchain from your local node

Project Overview A new feature in Bitcoin Core 0.20 allows users to dump the state of the blockchain (the UTXO set) using the command dumptxoutset. I'

18 Sep 11, 2022
Plot toolbox based on Matplotlib, simple and elegant.

Elegant-Plot Plot toolbox based on Matplotlib, simple and elegant. 绘制效果 绘制过程 数据准备 每种图标类型的目录下有data.csv文件,依据样例数据填入自己的数据。

3 Jul 15, 2022
Mattia Ficarelli 2 Mar 29, 2022
Editor and Presenter for Manim Generated Content.

Editor and Presenter for Manim Generated Content. Take a look at the Working Example. More information can be found on the documentation. These Browse

Manim Community 149 Dec 29, 2022
Wikipedia WordCloud App generate Wikipedia word cloud art created using python's streamlit, matplotlib, wikipedia and wordcloud packages

Wikipedia WordCloud App Wikipedia WordCloud App generate Wikipedia word cloud art created using python's streamlit, matplotlib, wikipedia and wordclou

Siva Prakash 5 Jan 02, 2022
A simple agent-based model used to teach the basics of OOP in my lectures

Pydemic A simple agent-based model of a pandemic. This is used to teach basic principles of object-oriented programming to master students. It is not

Fabien Maussion 2 Jun 08, 2022
Small project demonstrating the use of Grafana and InfluxDB for monitoring the speed of an internet connection

Speedtest monitor for Grafana A small project that allows internet speed monitoring using Grafana, InfluxDB 2 and Speedtest. Demo Requirements Docker

Joshua Ghali 3 Aug 06, 2021
Automatically Visualize any dataset, any size with a single line of code. Created by Ram Seshadri. Collaborators Welcome. Permission Granted upon Request.

AutoViz Automatically Visualize any dataset, any size with a single line of code. AutoViz performs automatic visualization of any dataset with one lin

AutoViz and Auto_ViML 1k Jan 02, 2023
ScisorWiz: Differential Isoform Visualizer for Long-Read RNA Sequencing Data

ScisorWiz: Vizualizer for Differential Isoform Expression README ScisorWiz is a linux-based R-package for visualizing differential isoform expression

Alexander Stein 6 Oct 04, 2022
Create charts with Python in a very similar way to creating charts using Chart.js

Create charts with Python in a very similar way to creating charts using Chart.js. The charts created are fully configurable, interactive and modular and are displayed directly in the output of the t

Nicolas H 68 Dec 08, 2022
Graphing communities on Twitch.tv in a visually intuitive way

VisualizingTwitchCommunities This project maps communities of streamers on Twitch.tv based on shared viewership. The data is collected from the Twitch

Kiran Gershenfeld 312 Jan 07, 2023
🗾 Streamlit Component for rendering kepler.gl maps

streamlit-keplergl 🗾 Streamlit Component for rendering kepler.gl maps in a streamlit app. 🎈 Live Demo 🎈 Installation pip install streamlit-keplergl

Christoph Rieke 39 Dec 14, 2022
Browse Dash docsets inside emacs

Helm Dash What's it This package uses Dash docsets inside emacs to browse documentation. Here's an article explaining the basic usage of it. It doesn'

504 Dec 15, 2022
Regress.me is an easy to use data visualization tool powered by Dash/Plotly.

Regress.me Regress.me is an easy to use data visualization tool powered by Dash/Plotly. Regress.me.-.Google.Chrome.2022-05-10.15-58-59.mp4 Get Started

Amar 14 Aug 14, 2022
Project coded in Python using Pandas to look at changes in chase% for batters facing a pitcher first time through the order vs. thrid time

Project coded in Python using Pandas to look at changes in chase% for batters facing a pitcher first time through the order vs. thrid time

Jason Kraynak 1 Jan 07, 2022
Lightweight, extensible data validation library for Python

Cerberus Cerberus is a lightweight and extensible data validation library for Python. v = Validator({'name': {'type': 'string'}}) v.validate({

eve 2.9k Dec 27, 2022