Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
山不在高_有仙则灵
SkyWalking
提交
469ce5ea
S
SkyWalking
项目概览
山不在高_有仙则灵
/
SkyWalking
与 Fork 源项目一致
Fork自
apache / SkyWalking
通知
12
Star
0
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SkyWalking
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
469ce5ea
编写于
12月 07, 2016
作者:
A
ascrutae
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修复部分问题
上级
3be4fb38
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
50 addition
and
43 deletion
+50
-43
skywalking-sniffer/skywalking-agent/pom.xml
skywalking-sniffer/skywalking-agent/pom.xml
+10
-5
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/model/ContextData.java
...src/main/java/com/a/eye/skywalking/model/ContextData.java
+7
-3
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/model/Span.java
...ng-api/src/main/java/com/a/eye/skywalking/model/Span.java
+30
-14
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/util/ContextGenerator.java
...main/java/com/a/eye/skywalking/util/ContextGenerator.java
+3
-16
skywalking-storage-center/data/file/2016_12_05_14_26_19_094_1000
...ing-storage-center/data/file/2016_12_05_14_26_19_094_1000
+0
-1
skywalking-storage-center/data/file/2016_12_05_14_28_56_230_1000
...ing-storage-center/data/file/2016_12_05_14_28_56_230_1000
+0
-1
skywalking-storage-center/data/file/2016_12_05_19_19_19_996_1000
...ing-storage-center/data/file/2016_12_05_19_19_19_996_1000
+0
-1
skywalking-storage-center/data/file/2016_12_06_16_24_50_333_1000
...ing-storage-center/data/file/2016_12_06_16_24_50_333_1000
+0
-1
skywalking-storage-center/data/file/2016_12_06_16_55_18_667_1000
...ing-storage-center/data/file/2016_12_06_16_55_18_667_1000
+0
-1
未找到文件。
skywalking-sniffer/skywalking-agent/pom.xml
浏览文件 @
469ce5ea
...
...
@@ -29,27 +29,32 @@
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-jedis-2.x-plugin
</artifactId>
<version>
2.0-2016
</version>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-jdbc-plugin
</artifactId>
<version>
2.0-2016
</version>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-httpClient-4.x-plugin
</artifactId>
<version>
2.0-2016
</version>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-dubbo-plugin
</artifactId>
<version>
2.0-2016
</version>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
tomcat-7.x-8.x-plugin
</artifactId>
<version>
2.0-2016
</version>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
motan-plugin
</artifactId>
<version>
${project.version}
</version>
</dependency>
</dependencies>
<build>
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/model/ContextData.java
浏览文件 @
469ce5ea
...
...
@@ -10,13 +10,13 @@ public class ContextData {
private
TraceId
traceId
;
private
String
parentLevel
;
private
int
levelId
;
private
long
routeKey
;
private
int
routeKey
;
ContextData
()
{
}
public
ContextData
(
TraceId
traceId
,
String
parentLevelId
,
long
routeKey
)
{
public
ContextData
(
TraceId
traceId
,
String
parentLevelId
,
int
routeKey
)
{
this
.
traceId
=
traceId
;
this
.
parentLevel
=
parentLevelId
;
this
.
routeKey
=
routeKey
;
...
...
@@ -53,7 +53,7 @@ public class ContextData {
this
.
traceId
=
traceIdBuilder
.
build
();
this
.
parentLevel
=
value
[
1
].
trim
();
this
.
levelId
=
Integer
.
valueOf
(
value
[
2
]);
this
.
routeKey
=
Long
.
parseLong
(
value
[
3
]);
this
.
routeKey
=
Integer
.
parseInt
(
value
[
3
]);
}
public
TraceId
getTraceId
()
{
...
...
@@ -68,6 +68,10 @@ public class ContextData {
return
levelId
;
}
public
int
getRouteKey
(){
return
this
.
routeKey
;
}
@Override
public
String
toString
()
{
StringBuilder
stringBuilder
=
new
StringBuilder
();
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/model/Span.java
浏览文件 @
469ce5ea
package
com.a.eye.skywalking.model
;
import
com.a.eye.skywalking.conf.Config
;
import
com.a.eye.skywalking.network.grpc.AckSpan
;
import
com.a.eye.skywalking.network.grpc.RequestSpan
;
import
com.a.eye.skywalking.network.grpc.TraceId
;
import
com.a.eye.skywalking.util.RoutingKeyGenerator
;
import
com.a.eye.skywalking.util.StringUtil
;
import
com.a.eye.skywalking.util.TraceIdGenerator
;
import
java.io.ByteArrayOutputStream
;
import
java.io.IOException
;
...
...
@@ -24,7 +27,7 @@ public class Span {
* 当前调用链的上级描述<br/>
* 如当前序号为:0.1.0时,parentLevel=0.1
*/
protected
String
parentLevel
;
protected
String
parentLevel
;
/**
* 当前调用链的本机描述<br/>
* 如当前序号为:0.1.0时,levelId=0
...
...
@@ -42,7 +45,7 @@ public class Span {
* 1:异常<br/>
* 异常判断原则:代码产生exception,并且此exception不在忽略列表中
*/
protected
byte
statusCode
=
0
;
protected
byte
statusCode
=
0
;
/**
* 节点调用的错误堆栈<br/>
* 堆栈以JAVA的exception为主要判断依据
...
...
@@ -68,23 +71,28 @@ public class Span {
*/
private
String
username
;
private
String
viewPointId
;
private
int
routeKey
;
private
int
routeKey
;
public
Span
(
TraceId
traceId
,
String
applicationCode
,
String
username
)
{
this
.
traceId
=
traceId
;
this
.
applicationCode
=
applicationCode
;
this
.
username
=
username
;
this
.
parentLevel
=
""
;
public
Span
(
String
operationName
)
{
this
(
TraceIdGenerator
.
generate
(),
""
,
0
,
operationName
,
RoutingKeyGenerator
.
generate
(
operationName
));
}
public
Span
(
Span
parentSpan
,
String
operationName
)
{
this
(
parentSpan
.
traceId
,
parentSpan
.
generateParentLevelId
(),
0
,
operationName
,
parentSpan
.
getRouteKey
());
}
public
Span
(
ContextData
contextData
,
String
operationName
)
{
this
(
contextData
.
getTraceId
(),
contextData
.
getParentLevel
(),
contextData
.
getLevelId
(),
operationName
,
contextData
.
getRouteKey
());
}
p
ublic
Span
(
TraceId
traceId
,
String
parentLevel
,
int
levelId
,
String
applicationCode
,
String
username
,
String
viewPointId
)
{
p
rivate
Span
(
TraceId
traceId
,
String
parentLevel
,
int
levelId
,
String
operationName
,
int
routeKey
)
{
this
.
traceId
=
traceId
;
this
.
parentLevel
=
parentLevel
;
this
.
levelId
=
levelId
;
this
.
applicationCode
=
applicationCode
;
this
.
username
=
username
;
this
.
viewPointId
=
viewPointId
;
this
.
routeKey
=
RoutingKeyGenerator
.
generate
(
viewPointId
)
;
this
.
applicationCode
=
Config
.
SkyWalking
.
APPLICATION_CODE
;
this
.
username
=
Config
.
SkyWalking
.
USERNAME
;
this
.
routeKey
=
routeKey
;
this
.
viewPointId
=
operationName
;
}
public
TraceId
getTraceId
()
{
...
...
@@ -205,7 +213,7 @@ public class Span {
return
builder
;
}
public
AckSpan
.
Builder
buildAckSpan
(
AckSpan
.
Builder
builder
){
public
AckSpan
.
Builder
buildAckSpan
(
AckSpan
.
Builder
builder
)
{
builder
.
setTraceId
(
this
.
traceId
).
setParentLevel
(
this
.
parentLevel
).
setLevelId
(
this
.
levelId
)
.
setCost
(
System
.
currentTimeMillis
()
-
this
.
startDate
).
setStatusCode
(
this
.
statusCode
)
.
setExceptionStack
(
this
.
exceptionStack
).
setUsername
(
this
.
username
).
setApplicationCode
(
this
.
applicationCode
)
...
...
@@ -220,4 +228,12 @@ public class Span {
public
int
getRouteKey
()
{
return
routeKey
;
}
private
String
generateParentLevelId
()
{
if
(!
StringUtil
.
isEmpty
(
this
.
getParentLevel
()))
{
return
this
.
getParentLevel
()
+
"."
+
this
.
getLevelId
();
}
else
{
return
String
.
valueOf
(
this
.
getLevelId
());
}
}
}
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/util/ContextGenerator.java
浏览文件 @
469ce5ea
package
com.a.eye.skywalking.util
;
import
com.a.eye.skywalking.conf.Config
;
import
com.a.eye.skywalking.context.CurrentThreadSpanStack
;
import
com.a.eye.skywalking.model.ContextData
;
import
com.a.eye.skywalking.model.Identification
;
...
...
@@ -28,8 +27,7 @@ public final class ContextGenerator {
public
static
Span
generateSpanFromContextData
(
ContextData
context
,
Identification
id
)
{
Span
spanData
=
CurrentThreadSpanStack
.
peek
();
if
(
context
!=
null
&&
context
.
getTraceId
()
!=
null
&&
spanData
==
null
)
{
spanData
=
new
Span
(
context
.
getTraceId
(),
context
.
getParentLevel
(),
context
.
getLevelId
(),
Config
.
SkyWalking
.
APPLICATION_CODE
,
Config
.
SkyWalking
.
USERNAME
,
id
.
getViewPoint
());
spanData
=
new
Span
(
context
,
id
.
getViewPoint
());
}
else
{
spanData
=
getSpanFromThreadLocal
(
id
);
}
...
...
@@ -42,28 +40,17 @@ public final class ContextGenerator {
// 1.获取Context,从ThreadLocal栈中获取中
final
Span
parentSpan
=
CurrentThreadSpanStack
.
peek
();
// 2 校验Context,Context是否存在
int
routeKey
;
if
(
parentSpan
==
null
)
{
// 不存在,新创建一个Context
span
=
new
Span
(
TraceIdGenerator
.
generate
(),
Config
.
SkyWalking
.
APPLICATION_CODE
,
Config
.
SkyWalking
.
USERNAME
);
routeKey
=
RoutingKeyGenerator
.
generate
(
id
.
getViewPoint
());
span
=
new
Span
(
id
.
getViewPoint
());
}
else
{
// 根据ParentContextData的TraceId和RPCID
// LevelId是由SpanNode类的nextSubSpanLevelId字段进行初始化的.
// 所以在这里不需要初始化
span
=
new
Span
(
parentSpan
.
getTraceId
(),
Config
.
SkyWalking
.
APPLICATION_CODE
,
Config
.
SkyWalking
.
USERNAME
);
if
(!
StringUtil
.
isEmpty
(
parentSpan
.
getParentLevel
()))
{
span
.
setParentLevel
(
parentSpan
.
getParentLevel
()
+
"."
+
parentSpan
.
getLevelId
());
}
else
{
span
.
setParentLevel
(
String
.
valueOf
(
parentSpan
.
getLevelId
()));
}
routeKey
=
parentSpan
.
getRouteKey
();
span
=
new
Span
(
parentSpan
,
id
.
getViewPoint
());
}
span
.
setStartDate
(
System
.
currentTimeMillis
());
span
.
setViewPointId
(
id
.
getViewPoint
());
span
.
setRouteKey
(
routeKey
);
return
span
;
}
...
...
skywalking-storage-center/data/file/2016_12_05_14_26_19_094_1000
已删除
100644 → 0
浏览文件 @
3be4fb38
JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1
\ No newline at end of file
skywalking-storage-center/data/file/2016_12_05_14_28_56_230_1000
已删除
100644 → 0
浏览文件 @
3be4fb38
JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1
\ No newline at end of file
skywalking-storage-center/data/file/2016_12_05_19_19_19_996_1000
已删除
100644 → 0
浏览文件 @
3be4fb38
JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1
\ No newline at end of file
skywalking-storage-center/data/file/2016_12_06_16_24_50_333_1000
已删除
100644 → 0
浏览文件 @
3be4fb38
JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1
\ No newline at end of file
skywalking-storage-center/data/file/2016_12_06_16_55_18_667_1000
已删除
100644 → 0
浏览文件 @
3be4fb38
JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1JappR1
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录