在运维(尤其是线上系统排障、安全溯源、成本分析)场景中,“定位流量来源”通常指:
搞清楚请求是谁发起的、从哪条链路进来的、去了哪个服务、为什么这么多。
下面按常见场景 + 实用方法 + 工具系统讲一下。
| 类型 | 典型问题 |
|---|---|
| 客户端来源 | 哪个 IP / 地区 / 运营商 / 用户 |
| 入口来源 | 网关 / LB / CDN / 公网 / 内网 |
| 服务来源 | 哪个上游服务调用 |
| 业务来源 | 哪个页面 / 接口 / 渠道 |
| 异常来源 | 爬虫 / 攻击 / 误调用 |
# 实时连接
ss -tnp
netstat -tnp
# 按 IP 统计连接数
netstat -nt | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
tcpdump -i eth0 port 80 -nn
适合:
关键字段:
$remote_addr:真实客户端 IP$http_x_forwarded_for:经过代理的源头$request_uri:哪个接口$upstream_addr:转发到哪log_format main '$remote_addr - $http_x_forwarded_for - $request_uri - $upstream_addr';
统计示例:
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head
示例:
{
"userId": "123",
"source": "mini-program",
"traceId": "abc-123"
}
可定位:
如果你愿意,可以告诉我:
我可以直接给你可复制的命令或配置。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。