展示 HN:Pulse v0.2.0

3作者: xerrs大约 1 个月前原帖
一个轻量级的系统监控工具,具有历史指标和内置的网页仪表盘。 大家好, 我正在开发Pulse,一个用C语言编写的轻量级系统监控工具。 我们的目标是提供一种简单的方式来监控CPU、内存、磁盘、网络、进程和系统信息,既可以通过终端查看,也可以通过内置的网页仪表盘访问,同时保持项目易于理解,并尽量减少依赖项。 v0.2.0版本最大的新增功能是历史指标。Pulse现在可以记录系统指标的变化,并通过其HTTP API提供这些数据,同时在仪表盘中以交互式图表的形式展示。 这个版本的一个有趣之处是,我最终编写了一个小型图表渲染器,而不是使用现有的图表库。这个渲染器只实现了Pulse所需的功能,从而保持了前端的轻量性。 一些亮点: - 用C语言编写 - 终端用户界面和内置网页仪表盘 - 历史CPU、内存、磁盘和网络指标 - 内置HTTP API - 可在Linux上运行,包括树莓派(我在4 B上进行了测试,但也欢迎在Pico上测试) - 开源 我仍在积极改进这个项目,因此非常欢迎反馈、批评或功能建议。我特别希望听到您认为设计可以改进或简化的地方。 GitHub: [https://github.com/cherries-works/pulse](https://github.com/cherries-works/pulse) 网站: [https://cherries.works](https://cherries.works)
查看原文
A lightweight system monitor with historical metrics and a built-in web dashboard.<p>Hi HN,<p>I have been building Pulse, a lightweight system monitor written in C.<p>The goal is to provide a simple way to monitor CPU, memory, disk, network, processes, and system information from both the terminal and a built-in web dashboard, while keeping the project easy to understand and with as few dependencies as possible.<p>The biggest addition in v0.2.0 is historical metrics. Pulse now records system metrics over time, exposes them through its HTTP API, and displays them as interactive graphs in the dashboard.<p>One fun part of this release is that I ended up writing a small chart renderer instead of using an existing charting library. It only implements the features Pulse needs, which kept the frontend lightweight.<p>Some highlights:<p>Written in C Terminal UI and built-in web dashboard Historical CPU, memory, disk, and network metrics Built-in HTTP API Runs on Linux, including Raspberry Pi (4 B is what I tested it on, but feel free to test it on a Pico as well) Open source<p>I&#x27;m still actively improving the project, so I&#x27;d really appreciate feedback, criticism, or ideas for features. I&#x27;m especially interested in hearing where you think the design could be improved or simplified.<p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;cherries-works&#x2F;pulse" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;cherries-works&#x2F;pulse</a><p>Website: <a href="https:&#x2F;&#x2F;cherries.works" rel="nofollow">https:&#x2F;&#x2F;cherries.works</a>