2018-04-12 01:51:51 +08:00
|
|
|
|
<div align="center">
|
2022-09-30 02:06:28 +08:00
|
|
|
|
<img src="./assets/logo/logo.png" width="20%" />
|
2022-09-30 02:26:17 +08:00
|
|
|
|
|
2022-09-30 02:06:28 +08:00
|
|
|
|
![](https://img.shields.io/github/v/release/xxxserxxx/gotop?display_name=tag&sort=semver)
|
2022-09-30 02:26:17 +08:00
|
|
|
|
|
|
|
|
|
</div>
|
2018-04-16 07:28:47 +08:00
|
|
|
|
<br><br>
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
一个基于终端的图形活动监视器, 基于[xmtop](https://github.com/xxxserxxx/gotop) 使用Go语言编写
|
2018-02-19 15:25:02 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
看看 [更新日志](/更新日志.md) 最新版本都带来那些变化
|
2020-05-14 01:31:51 +08:00
|
|
|
|
|
2020-02-23 22:13:43 +08:00
|
|
|
|
<img src="./assets/screenshots/demo.gif" />
|
2018-03-05 13:19:31 +08:00
|
|
|
|
|
2018-04-16 07:28:47 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
## 安装
|
2018-02-19 15:25:02 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
目前xmtop主要适配 龙架构 和 x86架构 的linux系统
|
2019-01-17 13:00:38 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
如果您手动安装xmtop,或者您下载或创建新的布局或配色方案,则需要将布局文件放在xmtop可以找到的地方。要查看xmtop查找文件的目录列表,请运行`xmtop -h`。第一个目录始终是运行xmtop的目录。
|
2020-04-07 00:04:08 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
- **二进制安装**:
|
|
|
|
|
```
|
|
|
|
|
wget
|
|
|
|
|
|
2020-05-05 21:18:35 +08:00
|
|
|
|
```
|
2020-06-02 22:09:23 +08:00
|
|
|
|
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
### 控制台(Console)用
|
2020-03-01 20:10:57 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
xmtop需要一些特殊符合和Unicode代码点的字体;一些发行版不提供此功能。在xmtop存储库中有一种字体,使用此字体可能会改善xmtop在终端中的呈现方式。使用方法如下:
|
2020-04-14 01:54:13 +08:00
|
|
|
|
|
|
|
|
|
```shell
|
2020-06-02 22:09:23 +08:00
|
|
|
|
curl -O -L https://raw.githubusercontent.com/xxxserxxx/gotop/master/fonts/Lat15-VGA16-braille.psf
|
|
|
|
|
setfont Lat15-VGA16-braille.psf
|
2019-01-17 13:00:38 +08:00
|
|
|
|
```
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
### 编译
|
2020-02-21 00:05:58 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
xmtop需要使用go1.21或以后的版本编译
|
2020-03-06 21:29:23 +08:00
|
|
|
|
|
2020-06-02 22:09:23 +08:00
|
|
|
|
```shell
|
2024-07-17 15:33:14 +08:00
|
|
|
|
git clone ssh://git@gitea.whlug.cn:33262/LK/xmtop.git && cd xmtop
|
2021-02-04 04:27:46 +08:00
|
|
|
|
# This ugly SOB gets a usable version from the git tag list
|
2024-07-17 15:33:14 +08:00
|
|
|
|
# 这个丑陋的SOB从git标签列表中获取可用版本
|
2020-07-02 04:57:50 +08:00
|
|
|
|
VERS="$(git tag -l --sort=-v:refname | sed 's/v\([^-].*\)/\1/g' | head -1 | tr -d '-' ).$(git describe --long --tags | sed 's/\([^-].*\)-\([0-9]*\)-\(g.*\)/r\2.\3/g' | tr -d '-')"
|
|
|
|
|
DAT=$(date +%Y%m%dT%H%M%S)
|
|
|
|
|
go build -o gotop \
|
|
|
|
|
-ldflags "-X main.Version=v${VERS} -X main.BuildDate=${DAT}" \
|
|
|
|
|
./cmd/gotop
|
2020-02-21 00:05:58 +08:00
|
|
|
|
```
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
如果您想在Linux上尽可能压缩可执行文件,请将`ldflags`行更改为:
|
2021-02-04 04:27:46 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
-ldflags "-X main.Version=v${VERS} -X main.BuildDate=${DAT} -extldflags '-s -w'" \
|
|
|
|
|
```
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
编译完成后将`xmtop`可执行文件移动到$PATH中的某个位置。
|
2020-05-25 03:19:10 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
如果Go没有安装或者是错误的版本,并且您没有root访问权限或不想升级Go,则会提供一个脚本来下载Go和gotops源,编译gotops,然后进行清理。请参见`scripts/install_without_root.sh`。
|
2020-06-19 23:01:26 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
## 使用
|
2020-06-19 23:01:26 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
运行`-h`可以获取帮助菜单。其中许多功能都可以通过创建配置文件来配置; 有关更多信息,请参见下一节。键绑定可以在xmtop运行时通过按`?`键,或者可以使用`——list keys`命令打印出来。
|
2018-02-21 10:57:18 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
除了键绑定之外,还可以使用鼠标来控制进程列表:
|
2020-05-05 21:18:35 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
- 点击选择流程
|
|
|
|
|
- 鼠标滚轮滚动浏览进程
|
2018-02-19 15:25:02 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
有关其他主题的更多信息,请参阅
|
2018-02-19 15:25:02 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
- [Layouts](./docs/layouts.md)
|
|
|
|
|
- [Configuration](./docs/configuration.md)
|
|
|
|
|
- [Color schemes](./docs/colorschemes.md)
|
|
|
|
|
- [Device filtering](./docs/devices.md)
|
|
|
|
|
- [Extensions](./docs/extensions.md)
|
2020-04-23 23:41:20 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
## 监控远程机器
|
2021-07-21 02:37:03 +08:00
|
|
|
|
--------------------------
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
gotops可以监视在远程计算机上运行的gotops,并在单个实例中显示 (某些) 指标。Gottop希望在代理后面,或者在安全的内部网内。文档中提供了一个
|
|
|
|
|
[远程监控实例](./docs/remote-monitoring.md)
|
|
|
|
|
设置
|
2019-09-10 02:46:34 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
## 截图
|
2020-02-23 22:13:43 +08:00
|
|
|
|
|
2020-05-31 06:23:03 +08:00
|
|
|
|
#### '-l kitchensink' + colorscheme
|
|
|
|
|
<img src="./assets/screenshots/kitchensink.gif" />
|
|
|
|
|
|
2020-02-23 22:13:43 +08:00
|
|
|
|
#### "-l battery"
|
|
|
|
|
<img src="./assets/screenshots/battery.png" />
|
2020-03-01 20:10:57 +08:00
|
|
|
|
|
2020-02-23 22:13:43 +08:00
|
|
|
|
#### "-l minimal"
|
|
|
|
|
<img src="./assets/screenshots/minimal.png" />
|
2020-03-01 20:10:57 +08:00
|
|
|
|
|
2020-02-23 22:13:43 +08:00
|
|
|
|
#### Custom (layouts/procs)
|
|
|
|
|
<img src="./assets/screenshots/procs.png" />
|
|
|
|
|
|
2018-04-14 08:02:10 +08:00
|
|
|
|
## Built With
|
|
|
|
|
|
2019-01-01 08:55:50 +08:00
|
|
|
|
- [gizak/termui](https://github.com/gizak/termui)
|
2019-09-27 07:01:02 +08:00
|
|
|
|
- [nsf/termbox](https://github.com/nsf/termbox-go)
|
2019-01-01 08:55:50 +08:00
|
|
|
|
- [exrook/drawille-go](https://github.com/exrook/drawille-go)
|
|
|
|
|
- [shirou/gopsutil](https://github.com/shirou/gopsutil)
|
2019-02-07 11:23:56 +08:00
|
|
|
|
- [goreleaser/nfpm](https://github.com/goreleaser/nfpm)
|
2019-01-05 01:51:31 +08:00
|
|
|
|
- [distatus/battery](https://github.com/distatus/battery)
|
2024-07-17 15:33:14 +08:00
|
|
|
|
- [VictoriaMetrics/metrics](https://github.com/VictoriaMetrics/metrics) 看看这个!该API干净、优雅,引入的间接依赖比Prometheus客户端少得多,并且将二进制文件的大小减少了50%。
|
|
|
|
|
- [lingo](https://github.com/xxxserxxx/lingo) 基于 [jdkeke142's](https://github.com/jdkeke142/lingo-toml) 派生于 [kortemy's](https://github.com/kortemy/lingo) 的lingo.
|
2020-06-03 21:34:31 +08:00
|
|
|
|
|
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
## 项目历史
|
2020-06-03 21:34:31 +08:00
|
|
|
|
|
2024-07-17 15:33:14 +08:00
|
|
|
|
gotop的最初作者在Rust中启动了一个名为[ytop](https://github.com/cjbassi/ytop)的新工具,并弃用了他的Go版本。这个项目是基于[gotop项目的xxxserxxx分支](https://github.com/xxxserxxx/gotop)制作的。主要目的是用来优化龙架构的使用体验和添加更丰富的功能。
|
2020-06-03 21:34:31 +08:00
|
|
|
|
|
|
|
|
|
|