上节回顾:https://www.cnblogs.com/dotnetcrazy/p/9986873.html
以CentOS为例:
1.环境
PS:如果不需要Golang环境,可以编译后把执行文件copy到服务器(相同环境下,编译的执行文件可以直接执行)
1.安装Golang
yum install golang -y
(这一步需要root权限)
2.安装go-sniffer
go get -v -u github.com/40t/go-sniffer
3.配置环境
方法一
vi ~/.profile
确保~/go/bin/
在环境变量中,eg:
PATH="$HOME/go/bin:$PATH"
然后刷新一下:source ~/.profile
方法二
echo 'export PATH="$HOME/go/bin:$PATH"' >> ~/.bashrc
然后刷新一下:source ~/.bashrc
2.案例
1.go-sniffer帮助
先简单看看帮助文档:
[dnt@localhost ~]$ go-sniffer
==================================================================================
[Usage]
go-sniffer [device] [plug] [plug's params(optional)]
[exp]
go-sniffer en0 redis Capture redis packet
go-sniffer en0 mysql -p 3306 Capture mysql packet
go-sniffer --[commend]
--help "this page"
--env "environment variable"
--list "Plug-in list"
--ver "version"
--dev "device"
[exp]
go-sniffer --list "show all plug-in"
==================================================================================
[device] : lo : 127.0.0.1
[device] : eth0 : 00:15:5d:24:90:00 192.168.36.123
==================================================================================
2.MySQL案例
我是在MariaDB服务器端监控的:go-sniffer eth0 mysql
(需要root权限,本地就用lo)
随便运行一个Python的案例:
ok,监控起效了~
PS:并不是有些人说的批量执行哦~
3.Redis案例
前置条件:/etc/redis.conf
- 注释掉
bind=127.0.0.1
- 添加密码:
requirepass 密码
Python案例
PS:6379端口权限记得给一下:
# 开放6379端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
# 刷新
firewall-cmd --reload
4.另一款神器soar
【推荐】SQL
自动优化和改写的工具:(小米开源,之前推过)
https://github.com/lotapp/soar
不用配置什么环境,直接echo "你的sql语句" | soar
来运行即可