dubbo 获取application和ip 打印日志,以便排查问题.
来源:互联网 发布:dt大数据梦工厂 spark 编辑:程序博客网 时间:2024/05/16 12:08
tomcat的Request层也需要打印日志目前是哪个Ip和哪个Flag. 其他日志都打印在然后按分钟切割日志.
A. provider filter中 增加 1.请求方应用名 2.请求方ip
B. consumer filter里增加 1. 提供方应用名 2.提供方ip
B. consumer filter里增加 1. 提供方应用名 2.提供方ip
这样便于排查定位线上问题.
(1) 服务消费方
dubbo 获取application和ip 打印日志,以便排查问题.. 让对方有针对的去具体某个机器上去排查.
xxxService.xxx();
// 远程调用
boolean
isConsumerSide = RpcContext.getContext().isConsumerSide();
// 本端是否为消费端,这里会返回true
String serverIP = RpcContext.getContext().getRemoteHost();
// 获取当前线程最后一次调用的提供方IP地址
String application = RpcContext.getContext().getUrl().getParameter(
"application"
);
// 获取当前服务配置信息(笔者注:为consumer,无法获取provider的application地址),所有配置信息都将转换为URL的参数
// ...
yyyService.yyy();
// 注意:每发起RPC调用,上下文状态会变化
// ...
(2) 服务提供方
public
class
XxxServiceImpl
implements
XxxService {
public
void
xxx() {
// 服务方法实现
boolean
isProviderSide = RpcContext.getContext().isProviderSide();
// 本端是否为提供端,这里会返回true
String clientIP = RpcContext.getContext().getRemoteHost();
// 获取调用方IP地址
String application = RpcContext.getContext().getUrl().getParameter(
"application"
);
// 获取当前服务配置信息(笔者注:provider还是consumer的未知,未验证!),所有配置信息都将转换为URL的参数
// ...
yyyService.yyy();
// 注意:每发起RPC调用,上下文状态会变化
boolean
isProviderSide = RpcContext.getContext().isProviderSide();
// 此时本端变成消费端,这里会返回false
// ...
}
}
1 0
- dubbo 获取application和ip 打印日志,以便排查问题.
- Dubbo分布式日志追踪,多线程不能获取窜ID和IP问题
- 获取本机IP和使用log打印日志
- 通过jstack日志分析和问题排查
- CentOS7配置IP和网络问题排查
- 1.6-1.8 配置IP和问题排查
- 日志的环绕通知(ip获取dubbo版)
- dubbo连接不通日志打印
- [转]通过jstack日志分析和问题排查
- Linux的IP配置和网络问题排查
- 配置IP,网络问题排查
- dubbo ip问题
- 注释有问题的dubbo服务和 本地启动dubbo服务的网络IP问题
- yocto 串口打印异常问题排查
- spring问题排查-调低日志等级
- 配置IP及网络问题排查
- Zookeeper不停打印错误日志NoClassDefFoundError原因排查,ConnectRequest
- ZKclient 不断重连问题排查-dubbo使用
- C++实现服务器压力测试框架
- MS SQL Server10进制和16进制之间的互相转换
- DISTINCT和GROUP BY的区别
- mybatis generator生成带有分页的Mybatis代码
- Activity的生命周期
- dubbo 获取application和ip 打印日志,以便排查问题.
- eclipse: android rename package name
- LSN的10进制和16进制之间的转换
- android 获取相册列表的实现及源码下载(四)
- 一天一段scala代码(十)
- android 3.0 升级的部分内容
- matlab
- IOS开发—应用屏幕横竖屏切换设置
- 创业公司PHP实习面试