提交 d393e92e 编写于 作者: A ascrutae

Merge branch 'master' of https://github.com/wu-sheng/sky-walking

......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -4,7 +4,7 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=2
consumer.max_wait_time=5
......
......@@ -4,7 +4,7 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=2
consumer.max_wait_time=5
......
......@@ -4,7 +4,7 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=2
consumer.max_wait_time=5
......
......@@ -4,7 +4,7 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=2
consumer.max_wait_time=5
......
......@@ -4,7 +4,7 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=2
consumer.max_wait_time=5
......
......@@ -59,10 +59,7 @@ public class LocalBuriedPointSender extends ApplicationExceptionHandler
+ "\tbusinessKey:" + spanData.getBusinessKey());
}
// 存放到本地发送进程中
if (!Config.Sender.IS_OFF) {
ContextBuffer.save(spanData);
}
ContextBuffer.save(spanData);
} catch (Throwable t) {
logger.error(t.getMessage(), t);
}
......
......@@ -22,59 +22,62 @@ import com.ai.cloud.skywalking.util.TraceIdGenerator;
*
*/
@Deprecated
public class ThreadBuriedPointSender extends ApplicationExceptionHandler implements IBuriedPointSender {
private static Logger logger = LogManager.getLogger(ThreadBuriedPointSender.class);
public class ThreadBuriedPointSender extends ApplicationExceptionHandler
implements IBuriedPointSender {
private static Logger logger = LogManager
.getLogger(ThreadBuriedPointSender.class);
private Span span;
private Span span;
public ThreadBuriedPointSender(int threadSeqId) {
if (!AuthDesc.isAuth())
return;
Span spanData;
// 从ThreadLocal中取出上下文
final Span parentSpanData = Context.getLastSpan();
if (parentSpanData == null) {
spanData = new Span(TraceIdGenerator.generate(), Config.SkyWalking.APPLICATION_CODE,
Config.SkyWalking.USER_ID);
} else {
// 如果不为空,则将当前的Context存放到上下文
spanData = new Span(parentSpanData.getTraceId(), Config.SkyWalking.APPLICATION_CODE,
Config.SkyWalking.USER_ID);
spanData.setParentLevel(parentSpanData.getParentLevel() + "." + parentSpanData.getLevelId());
spanData.setLevelId(threadSeqId);
}
this.span = spanData;
}
public ThreadBuriedPointSender(int threadSeqId) {
if (!AuthDesc.isAuth())
return;
Span spanData;
// 从ThreadLocal中取出上下文
final Span parentSpanData = Context.getLastSpan();
if (parentSpanData == null) {
spanData = new Span(TraceIdGenerator.generate(),
Config.SkyWalking.APPLICATION_CODE,
Config.SkyWalking.USER_ID);
} else {
// 如果不为空,则将当前的Context存放到上下文
spanData = new Span(parentSpanData.getTraceId(),
Config.SkyWalking.APPLICATION_CODE,
Config.SkyWalking.USER_ID);
spanData.setParentLevel(parentSpanData.getParentLevel() + "."
+ parentSpanData.getLevelId());
spanData.setLevelId(threadSeqId);
}
this.span = spanData;
}
public ContextData beforeSend(Identification id) {
if (!AuthDesc.isAuth())
return new EmptyContextData();
public ContextData beforeSend(Identification id) {
if (!AuthDesc.isAuth())
return new EmptyContextData();
if (this.span == null) {
return null;
}
span.setStartDate(System.currentTimeMillis());
span.setViewPointId(id.getViewPoint());
span.setProcessNo(BuriedPointMachineUtil.getProcessNo());
Context.append(span);
return new ContextData(span);
}
if (this.span == null) {
return null;
}
span.setStartDate(System.currentTimeMillis());
span.setViewPointId(id.getViewPoint());
span.setProcessNo(BuriedPointMachineUtil.getProcessNo());
Context.append(span);
return new ContextData(span);
}
public void afterSend() {
Span span = Context.removeLastSpan();
if (span == null) {
return;
}
// 填上必要信息
span.setCost(System.currentTimeMillis() - span.getStartDate());
if (Config.BuriedPoint.PRINTF) {
logger.debug("viewpointId:" + span.getViewPointId() + "\tParentLevelId:" + span.
getParentLevel() + "\tLevelId:" + span.getLevelId());
}
// 存放到本地发送进程中
if (!Config.Sender.IS_OFF) {
ContextBuffer.save(span);
}
}
public void afterSend() {
Span span = Context.removeLastSpan();
if (span == null) {
return;
}
// 填上必要信息
span.setCost(System.currentTimeMillis() - span.getStartDate());
if (Config.BuriedPoint.PRINTF) {
logger.debug("viewpointId:" + span.getViewPointId()
+ "\tParentLevelId:" + span.getParentLevel() + "\tLevelId:"
+ span.getLevelId());
}
ContextBuffer.save(span);
}
}
......@@ -21,38 +21,38 @@ import com.ai.cloud.skywalking.util.ContextGenerator;
*
*/
@Deprecated
public class ThreadFactoryBuriedPointSender extends ApplicationExceptionHandler implements IBuriedPointSender {
private static Logger logger = LogManager.getLogger(ThreadBuriedPointSender.class);
public class ThreadFactoryBuriedPointSender extends ApplicationExceptionHandler
implements IBuriedPointSender {
private static Logger logger = LogManager
.getLogger(ThreadBuriedPointSender.class);
public ContextData beforeSend(Identification id) {
if (!AuthDesc.isAuth())
return new EmptyContextData();
public ContextData beforeSend(Identification id) {
if (!AuthDesc.isAuth())
return new EmptyContextData();
Span spanData = ContextGenerator.generateSpanFromThreadLocal(id);
// 将新创建的Context存放到ThreadLocal栈中。
Context.append(spanData);
// 并将当前的Context返回回去
return new ContextData(spanData);
}
Span spanData = ContextGenerator.generateSpanFromThreadLocal(id);
// 将新创建的Context存放到ThreadLocal栈中。
Context.append(spanData);
// 并将当前的Context返回回去
return new ContextData(spanData);
}
public void afterSend() {
if (!AuthDesc.isAuth())
return;
public void afterSend() {
if (!AuthDesc.isAuth())
return;
// 获取上下文的栈顶中的元素
Span spanData = Context.removeLastSpan();
if (spanData == null) {
return;
}
// 填上必要信息
spanData.setCost(System.currentTimeMillis() - spanData.getStartDate());
if (Config.BuriedPoint.PRINTF) {
logger.debug("viewpointId:" + spanData.getViewPointId() + "\tParentLevelId:" + spanData.
getParentLevel() + "\tLevelId:" + spanData.getLevelId());
}
// 存放到本地发送进程中
if (!Config.Sender.IS_OFF) {
ContextBuffer.save(spanData);
}
}
// 获取上下文的栈顶中的元素
Span spanData = Context.removeLastSpan();
if (spanData == null) {
return;
}
// 填上必要信息
spanData.setCost(System.currentTimeMillis() - spanData.getStartDate());
if (Config.BuriedPoint.PRINTF) {
logger.debug("viewpointId:" + spanData.getViewPointId()
+ "\tParentLevelId:" + spanData.getParentLevel()
+ "\tLevelId:" + spanData.getLevelId());
}
ContextBuffer.save(spanData);
}
}
......@@ -52,9 +52,6 @@ public class Config {
// 发送服务端配置
public static String SERVERS_ADDR = "127.0.0.1:34000";
// 是否开启发送
public static boolean IS_OFF = false;
// 最大发送副本数量
public static int MAX_COPY_NUM = 2;
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
......@@ -26,8 +26,8 @@ sender.max_copy_num=2
sender.max_send_length=20000
#当没有Sender时,尝试获取sender的等待周期
sender.retry_get_sender_wait_interval=2000
#是否开启发送消息
sender.is_off=false
#最大消费线程数
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册