|
||
---|---|---|
.github | ||
assets | ||
build | ||
cmd/gotop | ||
colorschemes | ||
devices | ||
dicts | ||
docs | ||
fonts | ||
layout | ||
layouts | ||
logging | ||
scripts | ||
termui | ||
utils | ||
widgets | ||
.gitignore | ||
.travis.yml | ||
CHANGELOG.md | ||
config_test.go | ||
config.go | ||
CONTRIBUTORS.md | ||
go.mod | ||
go.sum | ||
LICENSE | ||
PACKAGING.md | ||
README.md |
一个基于终端的图形活动监视器, 基于xmtop 使用Go语言编写
看看 更新日志 最新版本都带来那些变化
安装
目前xmtop主要适配 龙架构 和 x86架构 的linux系统
如果您手动安装xmtop,或者您下载或创建新的布局或配色方案,则需要将布局文件放在xmtop可以找到的地方。要查看xmtop查找文件的目录列表,请运行xmtop -h
。第一个目录始终是运行xmtop的目录。
- 二进制安装:
wget
控制台(Console)用
xmtop需要一些特殊符合和Unicode代码点的字体;一些发行版不提供此功能。在xmtop存储库中有一种字体,使用此字体可能会改善xmtop在终端中的呈现方式。使用方法如下:
curl -O -L https://raw.githubusercontent.com/xxxserxxx/gotop/master/fonts/Lat15-VGA16-braille.psf
setfont Lat15-VGA16-braille.psf
编译
xmtop需要使用go1.21或以后的版本编译
git clone ssh://git@gitea.whlug.cn:33262/LK/xmtop.git && cd xmtop
# This ugly SOB gets a usable version from the git tag list
# 这个丑陋的SOB从git标签列表中获取可用版本
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
如果您想在Linux上尽可能压缩可执行文件,请将ldflags
行更改为:
-ldflags "-X main.Version=v${VERS} -X main.BuildDate=${DAT} -extldflags '-s -w'" \
编译完成后将xmtop
可执行文件移动到$PATH中的某个位置。
如果Go没有安装或者是错误的版本,并且您没有root访问权限或不想升级Go,则会提供一个脚本来下载Go和gotops源,编译gotops,然后进行清理。请参见scripts/install_without_root.sh
。
使用
运行-h
可以获取帮助菜单。其中许多功能都可以通过创建配置文件来配置; 有关更多信息,请参见下一节。键绑定可以在xmtop运行时通过按?
键,或者可以使用——list keys
命令打印出来。
除了键绑定之外,还可以使用鼠标来控制进程列表:
- 点击选择流程
- 鼠标滚轮滚动浏览进程
有关其他主题的更多信息,请参阅
监控远程机器
gotops可以监视在远程计算机上运行的gotops,并在单个实例中显示 (某些) 指标。Gottop希望在代理后面,或者在安全的内部网内。文档中提供了一个
远程监控实例
设置
截图
'-l kitchensink' + colorscheme
"-l battery"
"-l minimal"
Custom (layouts/procs)
Built With
- gizak/termui
- nsf/termbox
- exrook/drawille-go
- shirou/gopsutil
- goreleaser/nfpm
- distatus/battery
- VictoriaMetrics/metrics 看看这个!该API干净、优雅,引入的间接依赖比Prometheus客户端少得多,并且将二进制文件的大小减少了50%。
- lingo 基于 jdkeke142's 派生于 kortemy's 的lingo.
项目历史
gotop的最初作者在Rust中启动了一个名为ytop的新工具,并弃用了他的Go版本。这个项目是基于gotop项目的xxxserxxx分支制作的。主要目的是用来优化龙架构的使用体验和添加更丰富的功能。