[踩坑] 记录一次代码追踪流程 lsof
今天遇到的场景很常见, 所以收藏一下.
场景是这样的, 我们维护了一个 redis 数据, 用户反馈数据错误 , 我们观察的确存在问题. 需要去读代码. 但是 代码非常久远了.
找了很多地方 并没有进行更新操作. 所以采用如下方案找到代码.
1. redis monitor
redis-cli -h 127.0.0.1 monitor |grep -i redis:test:hash |grep SET > test.log |
2. 去重检索 IP:端口
cat test.log |grep SET |awk '{print $3 }' |awk -F "\]" '{print $1}' |awk -F ':' '{print $1 " "$2}' |sort -rn |uniq |
montor 中输出的 客户端ip 及 客户端连接时使用端口.
3.通过客户端连接和端口找到具体的进程.
从上面的日志能看出 10.0.0.2 这台机器只有一个单端口 访问. 查看服务器IP 是其他服务的机器.
sudo lsof -i :38693 |
上面已经给到了进程名称 和 进程ID
ps -ef |grep -i 10963 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Leon!
评论



