Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
javalover123888
SkyWalking
提交
dfee12c5
S
SkyWalking
项目概览
javalover123888
/
SkyWalking
与 Fork 源项目一致
Fork自
山不在高_有仙则灵 / SkyWalking
通知
2
Star
0
Fork
0
代码
文件
提交
分支
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,发现更多精彩内容 >>
提交
dfee12c5
编写于
2月 28, 2017
作者:
A
ascrutae
浏览文件
操作
浏览文件
下载
差异文件
Merge commit '
ee7cf9da
' into feature/3.0
上级
bc848be5
ee7cf9da
变更
50
隐藏空白更改
内联
并排
Showing
50 changed file
with
462 addition
and
308 deletion
+462
-308
pom.xml
pom.xml
+1
-0
skywalking-commons/pom.xml
skywalking-commons/pom.xml
+0
-1
skywalking-commons/skywalking-logging/pom.xml
skywalking-commons/skywalking-logging/pom.xml
+0
-20
skywalking-commons/skywalking-logging/skywalking-logging-api/pom.xml
...commons/skywalking-logging/skywalking-logging-api/pom.xml
+0
-14
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/pom.xml
...skywalking-logging/skywalking-logging-impl-log4j2/pom.xml
+0
-32
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/src/main/java/com/a/eye/skywalking/api/logging/impl/log4j2/Log4j2Logger.java
.../eye/skywalking/api/logging/impl/log4j2/Log4j2Logger.java
+0
-80
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/src/main/java/com/a/eye/skywalking/api/logging/impl/log4j2/Log4j2Resolver.java
...ye/skywalking/api/logging/impl/log4j2/Log4j2Resolver.java
+0
-15
skywalking-commons/skywalking-trace/pom.xml
skywalking-commons/skywalking-trace/pom.xml
+0
-5
skywalking-sniffer/skywalking-agent/src/main/java/com/a/eye/skywalking/agent/SkyWalkingAgent.java
...main/java/com/a/eye/skywalking/agent/SkyWalkingAgent.java
+4
-4
skywalking-sniffer/skywalking-api/pom.xml
skywalking-sniffer/skywalking-api/pom.xml
+0
-6
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/conf/Constants.java
...rc/main/java/com/a/eye/skywalking/api/conf/Constants.java
+1
-1
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/conf/SnifferConfigInitializer.java
...m/a/eye/skywalking/api/conf/SnifferConfigInitializer.java
+20
-10
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/EasyLogResolver.java
...ava/com/a/eye/skywalking/api/logging/EasyLogResolver.java
+0
-3
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/EasyLogger.java
...ain/java/com/a/eye/skywalking/api/logging/EasyLogger.java
+2
-10
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/ILog.java
.../src/main/java/com/a/eye/skywalking/api/logging/ILog.java
+2
-4
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/LogManager.java
...ain/java/com/a/eye/skywalking/api/logging/LogManager.java
+1
-1
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/LogResolver.java
...in/java/com/a/eye/skywalking/api/logging/LogResolver.java
+1
-1
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/NoopLogger.java
...ain/java/com/a/eye/skywalking/api/logging/NoopLogger.java
+9
-11
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/SyncFileWriter.java
...java/com/a/eye/skywalking/api/logging/SyncFileWriter.java
+3
-4
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/ThrowableFormatter.java
.../com/a/eye/skywalking/api/logging/ThrowableFormatter.java
+3
-3
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/WriterFactory.java
.../java/com/a/eye/skywalking/api/logging/WriterFactory.java
+0
-3
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/AbstractClassEnhancePluginDefine.java
...ywalking/api/plugin/AbstractClassEnhancePluginDefine.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/PluginBootstrap.java
...java/com/a/eye/skywalking/api/plugin/PluginBootstrap.java
+4
-4
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/PluginResourcesResolver.java
.../a/eye/skywalking/api/plugin/PluginResourcesResolver.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/TracingBootstrap.java
...ava/com/a/eye/skywalking/api/plugin/TracingBootstrap.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/bytebuddy/ArgumentTypeNameMatch.java
...kywalking/api/plugin/bytebuddy/ArgumentTypeNameMatch.java
+4
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassConstructorInterceptor.java
...ugin/interceptor/enhance/ClassConstructorInterceptor.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassEnhancePluginDefine.java
.../plugin/interceptor/enhance/ClassEnhancePluginDefine.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassInstanceMethodsInterceptor.java
.../interceptor/enhance/ClassInstanceMethodsInterceptor.java
+5
-5
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassStaticMethodsInterceptor.java
...in/interceptor/enhance/ClassStaticMethodsInterceptor.java
+5
-5
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/DefaultClassConstructorInterceptor.java
...terceptor/enhance/DefaultClassConstructorInterceptor.java
+2
-2
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/loader/InterceptorInstanceLoader.java
.../plugin/interceptor/loader/InterceptorInstanceLoader.java
+2
-2
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/conf/ConstantsTest.java
...est/java/com/a/eye/skywalking/api/conf/ConstantsTest.java
+14
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/conf/SnifferConfigInitializerTest.java
...eye/skywalking/api/conf/SnifferConfigInitializerTest.java
+38
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/EasyLogResolverTest.java
...com/a/eye/skywalking/api/logging/EasyLogResolverTest.java
+14
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/EasyLoggerTest.java
...java/com/a/eye/skywalking/api/logging/EasyLoggerTest.java
+64
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/LogManagerTest.java
...java/com/a/eye/skywalking/api/logging/LogManagerTest.java
+3
-6
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/NoopLoggerTest.java
...java/com/a/eye/skywalking/api/logging/NoopLoggerTest.java
+2
-3
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/STDOutWriterTest.java
...va/com/a/eye/skywalking/api/logging/STDOutWriterTest.java
+52
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/ThrowableFormatterTest.java
.../a/eye/skywalking/api/logging/ThrowableFormatterTest.java
+18
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/WriterFactoryTest.java
...a/com/a/eye/skywalking/api/logging/WriterFactoryTest.java
+42
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/plugin/bytebuddy/AllObjectDefaultMethodsMatchTest.java
...pi/plugin/bytebuddy/AllObjectDefaultMethodsMatchTest.java
+12
-0
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/plugin/bytebuddy/ArgumentTypeNameMatchTest.java
...lking/api/plugin/bytebuddy/ArgumentTypeNameMatchTest.java
+39
-0
skywalking-sniffer/skywalking-api/src/test/resources/sky-walking.config
...ffer/skywalking-api/src/test/resources/sky-walking.config
+3
-0
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/span/SpanGeneration.java
...king/sniffer/mock/trace/builders/span/SpanGeneration.java
+29
-0
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
...sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
+48
-36
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java
...ock/trace/builders/trace/SingleTomcat200TraceBuilder.java
+1
-1
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java
...ock/trace/builders/trace/SingleTomcat404TraceBuilder.java
+1
-1
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java
...ock/trace/builders/trace/SingleTomcat500TraceBuilder.java
+1
-1
skywalking-sniffer/skywalking-toolkit-activation/skywalking-toolkit-trace-context-activation/src/main/java/com/a/eye/skywalking/toolkit/activation/trace/TraceContextInterceptor.java
...ing/toolkit/activation/trace/TraceContextInterceptor.java
+2
-2
未找到文件。
pom.xml
浏览文件 @
dfee12c5
...
...
@@ -155,6 +155,7 @@
<instrumentation>
<excludes>
<exclude>
com/a/eye/skywalking/trace/proto/*.class
</exclude>
<exclude>
com/a/eye/skywalking/sniffer/mock/**/*.class
</exclude>
</excludes>
</instrumentation>
</configuration>
...
...
skywalking-commons/pom.xml
浏览文件 @
dfee12c5
...
...
@@ -12,7 +12,6 @@
<modules>
<module>
skywalking-trace
</module>
<module>
skywalking-logging
</module>
<module>
skywalking-util
</module>
</modules>
...
...
skywalking-commons/skywalking-logging/pom.xml
已删除
100644 → 0
浏览文件 @
bc848be5
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
skywalking-commons
</artifactId>
<groupId>
com.a.eye
</groupId>
<version>
3.0-2017
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
skywalking-logging
</artifactId>
<packaging>
pom
</packaging>
<name>
skywalking-logging
</name>
<url>
http://maven.apache.org
</url>
<modules>
<module>
skywalking-logging-api
</module>
<module>
skywalking-logging-impl-log4j2
</module>
</modules>
</project>
skywalking-commons/skywalking-logging/skywalking-logging-api/pom.xml
已删除
100644 → 0
浏览文件 @
bc848be5
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
skywalking-logging
</artifactId>
<groupId>
com.a.eye
</groupId>
<version>
3.0-2017
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<packaging>
jar
</packaging>
<artifactId>
skywalking-logging-api
</artifactId>
</project>
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/pom.xml
已删除
100644 → 0
浏览文件 @
bc848be5
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
skywalking-logging
</artifactId>
<groupId>
com.a.eye
</groupId>
<version>
3.0-2017
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<packaging>
jar
</packaging>
<artifactId>
skywalking-logging-impl-log4j2
</artifactId>
<dependencies>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-logging-api
</artifactId>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
org.apache.logging.log4j
</groupId>
<artifactId>
log4j-api
</artifactId>
<version>
2.6.2
</version>
</dependency>
<dependency>
<groupId>
org.apache.logging.log4j
</groupId>
<artifactId>
log4j-core
</artifactId>
<version>
2.6.2
</version>
</dependency>
</dependencies>
</project>
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/src/main/java/com/a/eye/skywalking/api/logging/impl/log4j2/Log4j2Logger.java
已删除
100644 → 0
浏览文件 @
bc848be5
package
com.a.eye.skywalking.api.logging.impl.log4j2
;
import
com.a.eye.skywalking.api.logging.api.ILog
;
import
org.apache.logging.log4j.Logger
;
/**
* Created by wusheng on 2016/11/11.
*/
public
class
Log4j2Logger
implements
ILog
{
private
Logger
logger
;
public
Log4j2Logger
(
Logger
logger
)
{
this
.
logger
=
logger
;
}
@Override
public
void
info
(
String
message
)
{
logger
.
info
(
message
);
}
@Override
public
void
info
(
String
message
,
Object
...
arguments
)
{
logger
.
info
(
message
,
arguments
);
}
@Override
public
void
warn
(
String
format
,
Object
...
arguments
)
{
logger
.
warn
(
format
,
arguments
);
}
@Override
public
void
warn
(
String
format
,
Object
arguments
,
Throwable
e
)
{
logger
.
warn
(
format
,
arguments
,
e
);
}
@Override
public
void
error
(
String
message
,
Throwable
e
)
{
logger
.
error
(
message
,
e
);
}
@Override
public
void
error
(
String
message
,
Object
argument
,
Throwable
e
)
{
logger
.
error
(
message
,
argument
,
e
);
}
@Override
public
boolean
isDebugEnable
()
{
return
logger
.
isDebugEnabled
();
}
@Override
public
boolean
isInfoEnable
()
{
return
logger
.
isInfoEnabled
();
}
@Override
public
boolean
isWarnEnable
()
{
return
logger
.
isWarnEnabled
();
}
@Override
public
boolean
isErrorEnable
()
{
return
logger
.
isErrorEnabled
();
}
@Override
public
void
debug
(
String
format
)
{
logger
.
debug
(
format
);
}
@Override
public
void
debug
(
String
format
,
Object
...
arguments
)
{
logger
.
debug
(
format
,
arguments
);
}
@Override
public
void
error
(
String
format
)
{
logger
.
error
(
format
);
}
}
skywalking-commons/skywalking-logging/skywalking-logging-impl-log4j2/src/main/java/com/a/eye/skywalking/api/logging/impl/log4j2/Log4j2Resolver.java
已删除
100644 → 0
浏览文件 @
bc848be5
package
com.a.eye.skywalking.api.logging.impl.log4j2
;
import
com.a.eye.skywalking.api.logging.api.ILog
;
import
com.a.eye.skywalking.api.logging.api.LogResolver
;
import
org.apache.logging.log4j.LogManager
;
/**
* Created by wusheng on 2016/11/11.
*/
public
class
Log4j2Resolver
implements
LogResolver
{
@Override
public
ILog
getLogger
(
Class
<?>
clazz
)
{
return
new
Log4j2Logger
(
LogManager
.
getLogger
(
clazz
));
}
}
skywalking-commons/skywalking-trace/pom.xml
浏览文件 @
dfee12c5
...
...
@@ -12,11 +12,6 @@
<artifactId>
skywalking-trace
</artifactId>
<dependencies>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-logging-api
</artifactId>
<version>
${project.version}
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-util
</artifactId>
...
...
skywalking-sniffer/skywalking-agent/src/main/java/com/a/eye/skywalking/agent/SkyWalkingAgent.java
浏览文件 @
dfee12c5
...
...
@@ -4,8 +4,8 @@ import com.a.eye.skywalking.agent.junction.SkyWalkingEnhanceMatcher;
import
com.a.eye.skywalking.api.conf.Config
;
import
com.a.eye.skywalking.api.conf.SnifferConfigInitializer
;
import
com.a.eye.skywalking.api.logging.EasyLogResolver
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.AbstractClassEnhancePluginDefine
;
import
com.a.eye.skywalking.api.plugin.PluginBootstrap
;
import
com.a.eye.skywalking.api.plugin.PluginFinder
;
...
...
@@ -26,8 +26,8 @@ import static net.bytebuddy.matcher.ElementMatchers.isInterface;
import
static
net
.
bytebuddy
.
matcher
.
ElementMatchers
.
not
;
/**
* The main entrance of sky-waking agent
.
*
It bases
on javaagent mechanism.
* The main entrance of sky-waking agent
,
*
based
on javaagent mechanism.
*
* @author wusheng
*/
...
...
skywalking-sniffer/skywalking-api/pom.xml
浏览文件 @
dfee12c5
...
...
@@ -20,7 +20,6 @@
</properties>
<dependencies>
<dependency>
<groupId>
net.bytebuddy
</groupId>
<artifactId>
byte-buddy
</artifactId>
...
...
@@ -36,11 +35,6 @@
<artifactId>
disruptor
</artifactId>
<version>
3.3.6
</version>
</dependency>
<dependency>
<groupId>
com.a.eye
</groupId>
<artifactId>
skywalking-logging-api
</artifactId>
<version>
${project.version}
</version>
</dependency>
</dependencies>
<build>
<plugins>
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/conf/Constants.java
浏览文件 @
dfee12c5
...
...
@@ -7,5 +7,5 @@ public class Constants {
* This is the version, which will be the first segment of traceid.
* Ref {@link TraceIdGenerator#generate()}
*/
public
static
String
SDK_VERSION
=
"302017"
;
public
final
static
String
SDK_VERSION
=
"302017"
;
}
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/conf/SnifferConfigInitializer.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.conf
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.util.ConfigInitializer
;
import
com.a.eye.skywalking.api.util.StringUtil
;
...
...
@@ -11,7 +11,7 @@ import java.io.InputStream;
import
java.util.Properties
;
public
class
SnifferConfigInitializer
{
private
static
ILog
logger
=
LogManager
.
getLogger
(
SnifferConfigInitializer
.
class
);
private
static
ILog
logger
=
LogManager
.
getLogger
(
SnifferConfigInitializer
.
class
);
public
static
void
initialize
()
{
InputStream
configFileStream
;
...
...
@@ -32,24 +32,34 @@ public class SnifferConfigInitializer {
logger
.
error
(
"Failed to read the config file, sky-walking api run in default config."
,
e
);
}
}
Config
.
SkyWalking
.
USERNAME
=
System
.
getProperty
(
"username"
);
Config
.
SkyWalking
.
APPLICATION_CODE
=
System
.
getProperty
(
"applicationCode"
);
Config
.
SkyWalking
.
SERVERS
=
System
.
getProperty
(
"servers"
);
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
USERNAME
)){
String
username
=
System
.
getProperty
(
"username"
);
if
(!
StringUtil
.
isEmpty
(
username
))
{
Config
.
SkyWalking
.
USERNAME
=
username
;
}
String
applicationCode
=
System
.
getProperty
(
"applicationCode"
);
if
(!
StringUtil
.
isEmpty
(
applicationCode
))
{
Config
.
SkyWalking
.
APPLICATION_CODE
=
applicationCode
;
}
String
servers
=
System
.
getProperty
(
"servers"
);
if
(!
StringUtil
.
isEmpty
(
servers
))
{
Config
.
SkyWalking
.
SERVERS
=
servers
;
}
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
USERNAME
))
{
throw
new
ExceptionInInitializerError
(
"'-Dusername=' is missing."
);
}
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
APPLICATION_CODE
))
{
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
APPLICATION_CODE
))
{
throw
new
ExceptionInInitializerError
(
"'-DapplicationCode=' is missing."
);
}
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
SERVERS
))
{
if
(
StringUtil
.
isEmpty
(
Config
.
SkyWalking
.
SERVERS
))
{
throw
new
ExceptionInInitializerError
(
"'-Dservers=' is missing."
);
}
}
private
static
InputStream
fetchAuthFileInputStream
()
{
try
{
return
new
FileInputStream
(
Config
.
SkyWalking
.
AGENT_BASE_PATH
+
File
.
separator
+
"
/
sky-walking.config"
);
return
new
FileInputStream
(
Config
.
SkyWalking
.
AGENT_BASE_PATH
+
File
.
separator
+
"sky-walking.config"
);
}
catch
(
Exception
e
)
{
logger
.
warn
(
"sky-walking.config is missing, use default config."
);
return
null
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/EasyLogResolver.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
com.a.eye.skywalking.api.logging.api.ILog
;
import
com.a.eye.skywalking.api.logging.api.LogResolver
;
/**
* Created by wusheng on 2016/11/26.
*/
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/EasyLogger.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
com.a.eye.skywalking.api.logging.api.ILog
;
import
com.a.eye.skywalking.api.util.LoggingUtil
;
import
java.net.URLEncoder
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
...
...
@@ -34,7 +31,7 @@ public class EasyLogger implements ILog {
}
if
(
e
!=
null
)
{
WriterFactory
.
getLogWriter
().
writeError
(
LoggingUtil
.
fetchThrowableStack
(
e
));
WriterFactory
.
getLogWriter
().
writeError
(
ThrowableFormatter
.
format
(
e
));
}
}
...
...
@@ -76,18 +73,13 @@ public class EasyLogger implements ILog {
logger
(
WARN
,
replaceParam
(
format
,
arguments
),
null
);
}
@Override
public
void
warn
(
String
format
,
Object
arguments
,
Throwable
e
)
{
logger
(
WARN
,
replaceParam
(
format
,
arguments
),
e
);
}
@Override
public
void
error
(
String
format
,
Throwable
e
)
{
logger
(
ERROR
,
format
,
e
);
}
@Override
public
void
error
(
String
format
,
Object
arguments
,
Throwable
e
)
{
public
void
error
(
Throwable
e
,
String
format
,
Object
...
arguments
)
{
logger
(
ERROR
,
replaceParam
(
format
,
arguments
),
e
);
}
...
...
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/main/java/com/a/eye/skywalking/api/logging/api
/ILog.java
→
skywalking-
sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging
/ILog.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
/**
* The Log interface.
...
...
@@ -14,11 +14,9 @@ public interface ILog {
void
warn
(
String
format
,
Object
...
arguments
);
void
warn
(
String
format
,
Object
arguments
,
Throwable
e
);
void
error
(
String
format
,
Throwable
e
);
void
error
(
String
format
,
Object
arguments
,
Throwable
e
);
void
error
(
Throwable
e
,
String
format
,
Object
...
arguments
);
boolean
isDebugEnable
();
...
...
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/main/java/com/a/eye/skywalking/api/logging/api
/LogManager.java
→
skywalking-
sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging
/LogManager.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
/**
* LogManager is the {@link LogResolver} implementation manager.
...
...
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/main/java/com/a/eye/skywalking/api/logging/api
/LogResolver.java
→
skywalking-
sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging
/LogResolver.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
/**
* {@link LogResolver} just do only one thing: return the {@link ILog} implementation.
...
...
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/main/java/com/a/eye/skywalking/api/logging/api
/NoopLogger.java
→
skywalking-
sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging
/NoopLogger.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
/**
...
...
@@ -8,7 +8,9 @@ package com.a.eye.skywalking.api.logging.api;
* Created by xin on 2016/11/10.
*/
public
enum
NoopLogger
implements
ILog
{
INSTANCE
;
INSTANCE
{
};
@Override
public
void
info
(
String
message
)
{
...
...
@@ -25,20 +27,11 @@ public enum NoopLogger implements ILog {
}
@Override
public
void
warn
(
String
format
,
Object
arguments
,
Throwable
e
)
{
}
@Override
public
void
error
(
String
format
,
Throwable
e
)
{
}
@Override
public
void
error
(
String
format
,
Object
argument
,
Throwable
e
)
{
}
@Override
public
boolean
isDebugEnable
()
{
return
false
;
...
...
@@ -73,4 +66,9 @@ public enum NoopLogger implements ILog {
public
void
error
(
String
format
)
{
}
@Override
public
void
error
(
Throwable
e
,
String
format
,
Object
...
arguments
)
{
}
}
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/SyncFileWriter.java
浏览文件 @
dfee12c5
...
...
@@ -3,7 +3,6 @@ package com.a.eye.skywalking.api.logging;
import
com.a.eye.skywalking.api.conf.Config
;
import
com.a.eye.skywalking.api.util.LoggingUtil
;
import
java.io.File
;
import
java.io.FileNotFoundException
;
import
java.io.FileOutputStream
;
...
...
@@ -97,15 +96,15 @@ public class SyncFileWriter implements IWriter {
try
{
File
file
=
new
File
(
Config
.
Logging
.
LOG_DIR_NAME
,
Config
.
Logging
.
SYSTEM_ERROR_LOG_FILE_NAME
);
fileOutputStream
=
new
FileOutputStream
(
file
,
true
);
fileOutputStream
.
write
((
"Failed to init sync File Writer.\n"
+
LoggingUtil
.
fetchThrowableStack
(
e
)).
getBytes
());
fileOutputStream
.
write
((
"Failed to init sync File Writer.\n"
+
ThrowableFormatter
.
format
(
e
)).
getBytes
());
}
catch
(
Exception
e1
)
{
System
.
err
.
print
(
LoggingUtil
.
fetchThrowableStack
(
e1
));
System
.
err
.
print
(
ThrowableFormatter
.
format
(
e1
));
}
finally
{
if
(
fileOutputStream
!=
null
)
{
try
{
fileOutputStream
.
close
();
}
catch
(
IOException
e1
)
{
System
.
err
.
print
(
LoggingUtil
.
fetchThrowableStack
(
e1
));
System
.
err
.
print
(
ThrowableFormatter
.
format
(
e1
));
}
}
}
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/
util/LoggingUtil
.java
→
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/
logging/ThrowableFormatter
.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.
util
;
package
com.a.eye.skywalking.api.
logging
;
import
java.io.ByteArrayOutputStream
;
import
java.io.IOException
;
...
...
@@ -6,8 +6,8 @@ import java.io.IOException;
/**
* Created by xin on 16-6-24.
*/
public
class
LoggingUtil
{
public
static
String
f
etchThrowableStack
(
Throwable
e
)
{
public
class
ThrowableFormatter
{
public
static
String
f
ormat
(
Throwable
e
)
{
ByteArrayOutputStream
buf
=
new
ByteArrayOutputStream
();
e
.
printStackTrace
(
new
java
.
io
.
PrintWriter
(
buf
,
true
));
String
expMessage
=
buf
.
toString
();
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/logging/WriterFactory.java
浏览文件 @
dfee12c5
...
...
@@ -3,9 +3,6 @@ package com.a.eye.skywalking.api.logging;
import
com.a.eye.skywalking.api.conf.Config
;
public
class
WriterFactory
{
private
WriterFactory
(){
}
public
static
IWriter
getLogWriter
(){
if
(
Config
.
SkyWalking
.
IS_PREMAIN_MODE
){
return
SyncFileWriter
.
instance
();
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/AbstractClassEnhancePluginDefine.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.enhance.ClassEnhancePluginDefine
;
import
com.a.eye.skywalking.api.util.StringUtil
;
import
net.bytebuddy.dynamic.DynamicType
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/PluginBootstrap.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
net.bytebuddy.pool.TypePool
;
import
java.net.URL
;
...
...
@@ -37,7 +37,7 @@ public class PluginBootstrap {
try
{
PluginCfg
.
INSTANCE
.
load
(
pluginUrl
.
openStream
());
}
catch
(
Throwable
t
)
{
logger
.
error
(
"plugin [{}] init failure."
,
new
Object
[]
{
pluginUrl
},
t
);
logger
.
error
(
t
,
"plugin [{}] init failure."
,
pluginUrl
);
}
}
...
...
@@ -52,7 +52,7 @@ public class PluginBootstrap {
plugin
.
setClassTypePool
(
classTypePool
);
plugins
.
add
(
plugin
);
}
catch
(
Throwable
t
)
{
logger
.
error
(
"loade plugin [{}] failure."
,
new
Object
[]
{
pluginClassName
},
t
);
logger
.
error
(
t
,
"loade plugin [{}] failure."
,
pluginClassName
);
}
}
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/PluginResourcesResolver.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
java.io.IOException
;
import
java.net.URL
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/TracingBootstrap.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
net.bytebuddy.ByteBuddy
;
import
net.bytebuddy.dynamic.ClassFileLocator
;
import
net.bytebuddy.dynamic.DynamicType
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/bytebuddy/ArgumentTypeNameMatch.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.bytebuddy
;
import
net.bytebuddy.description.method.MethodDescription
;
import
net.bytebuddy.description.method.ParameterList
;
import
net.bytebuddy.matcher.ElementMatcher
;
/**
...
...
@@ -39,8 +40,9 @@ public class ArgumentTypeNameMatch implements ElementMatcher<MethodDescription>
*/
@Override
public
boolean
matches
(
MethodDescription
target
)
{
if
(
target
.
getParameters
().
size
()
>
index
)
{
return
target
.
getParameters
().
get
(
index
).
getType
().
asErasure
().
getName
().
equals
(
argumentTypeName
);
ParameterList
<?>
parameters
=
target
.
getParameters
();
if
(
parameters
.
size
()
>
index
)
{
return
parameters
.
get
(
index
).
getType
().
asErasure
().
getName
().
equals
(
argumentTypeName
);
}
return
false
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassConstructorInterceptor.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.enhance
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.loader.InterceptorInstanceLoader
;
import
com.a.eye.skywalking.api.plugin.interceptor.EnhancedClassInstanceContext
;
import
net.bytebuddy.implementation.bind.annotation.AllArguments
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassEnhancePluginDefine.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.enhance
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.AbstractClassEnhancePluginDefine
;
import
com.a.eye.skywalking.api.plugin.PluginException
;
import
com.a.eye.skywalking.api.plugin.interceptor.ConstructorInterceptPoint
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassInstanceMethodsInterceptor.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.enhance
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.loader.InterceptorInstanceLoader
;
import
com.a.eye.skywalking.api.plugin.interceptor.EnhancedClassInstanceContext
;
import
net.bytebuddy.implementation.bind.annotation.*
;
...
...
@@ -55,7 +55,7 @@ public class ClassInstanceMethodsInterceptor {
try
{
interceptor
.
beforeMethod
(
instanceContext
,
interceptorContext
,
result
);
}
catch
(
Throwable
t
)
{
logger
.
error
(
"class[{}] before method[{}] intercept failue:{}"
,
new
Object
[]
{
obj
.
getClass
(),
method
.
getName
(),
t
.
getMessage
()},
t
);
logger
.
error
(
t
,
"class[{}] before method[{}] intercept failure"
,
obj
.
getClass
(),
method
.
getName
()
);
}
Object
ret
=
null
;
...
...
@@ -69,14 +69,14 @@ public class ClassInstanceMethodsInterceptor {
try
{
interceptor
.
handleMethodException
(
t
,
instanceContext
,
interceptorContext
);
}
catch
(
Throwable
t2
)
{
logger
.
error
(
"class[{}] handle method[{}] exception failue:{}"
,
new
Object
[]
{
obj
.
getClass
(),
method
.
getName
(),
t2
.
getMessage
()},
t2
);
logger
.
error
(
t2
,
"class[{}] handle method[{}] exception failure"
,
obj
.
getClass
(),
method
.
getName
()
);
}
throw
t
;
}
finally
{
try
{
ret
=
interceptor
.
afterMethod
(
instanceContext
,
interceptorContext
,
ret
);
}
catch
(
Throwable
t
)
{
logger
.
error
(
"class[{}] after method[{}] intercept failue:{}"
,
new
Object
[]
{
obj
.
getClass
(),
method
.
getName
(),
t
.
getMessage
()},
t
);
logger
.
error
(
t
,
"class[{}] after method[{}] intercept failure"
,
obj
.
getClass
(),
method
.
getName
()
);
}
}
return
ret
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/ClassStaticMethodsInterceptor.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.enhance
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.loader.InterceptorInstanceLoader
;
import
net.bytebuddy.implementation.bind.annotation.AllArguments
;
import
net.bytebuddy.implementation.bind.annotation.Origin
;
...
...
@@ -55,7 +55,7 @@ public class ClassStaticMethodsInterceptor {
try
{
interceptor
.
beforeMethod
(
interceptorContext
,
result
);
}
catch
(
Throwable
t
)
{
logger
.
error
(
"class[{}] before static method[{}] intercept failue:{}"
,
new
Object
[]
{
clazz
,
method
.
getName
(),
t
.
getMessage
()},
t
);
logger
.
error
(
t
,
"class[{}] before static method[{}] intercept failure"
,
clazz
,
method
.
getName
()
);
}
...
...
@@ -70,14 +70,14 @@ public class ClassStaticMethodsInterceptor {
try
{
interceptor
.
handleMethodException
(
t
,
interceptorContext
);
}
catch
(
Throwable
t2
)
{
logger
.
error
(
"class[{}] handle static method[{}] exception failue:{}"
,
new
Object
[]
{
clazz
,
method
.
getName
(),
t2
.
getMessage
()},
t2
);
logger
.
error
(
t2
,
"class[{}] handle static method[{}] exception failure"
,
clazz
,
method
.
getName
(),
t2
.
getMessage
()
);
}
throw
t
;
}
finally
{
try
{
ret
=
interceptor
.
afterMethod
(
interceptorContext
,
ret
);
}
catch
(
Throwable
t
)
{
logger
.
error
(
"class[{}] after static method[{}] intercept failue:{}"
,
new
Object
[]
{
clazz
,
method
.
getName
(),
t
.
getMessage
()},
t
);
logger
.
error
(
t
,
"class[{}] after static method[{}] intercept failure:{}"
,
clazz
,
method
.
getName
(),
t
.
getMessage
()
);
}
}
return
ret
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/enhance/DefaultClassConstructorInterceptor.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.enhance
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.EnhancedClassInstanceContext
;
import
net.bytebuddy.implementation.bind.annotation.AllArguments
;
import
net.bytebuddy.implementation.bind.annotation.FieldProxy
;
...
...
skywalking-sniffer/skywalking-api/src/main/java/com/a/eye/skywalking/api/plugin/interceptor/loader/InterceptorInstanceLoader.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.interceptor.loader
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
java.io.BufferedInputStream
;
import
java.io.ByteArrayOutputStream
;
...
...
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/conf/ConstantsTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.conf
;
import
org.junit.Assert
;
import
org.junit.Test
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
ConstantsTest
{
@Test
public
void
testSDKVersion
(){
Assert
.
assertEquals
(
"302017"
,
Constants
.
SDK_VERSION
);
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/conf/SnifferConfigInitializerTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.conf
;
import
org.junit.AfterClass
;
import
org.junit.Assert
;
import
org.junit.Test
;
/**
* @author wusheng
*/
public
class
SnifferConfigInitializerTest
{
@Test
public
void
testInitialize
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
false
;
SnifferConfigInitializer
.
initialize
();
Assert
.
assertEquals
(
"testUser"
,
Config
.
SkyWalking
.
USERNAME
);
Assert
.
assertEquals
(
"crmApp"
,
Config
.
SkyWalking
.
APPLICATION_CODE
);
Assert
.
assertEquals
(
"127.0.0.1:8080"
,
Config
.
SkyWalking
.
SERVERS
);
Assert
.
assertNotNull
(
Config
.
Disruptor
.
BUFFER_SIZE
);
Assert
.
assertNotNull
(
Config
.
Logging
.
LOG_DIR_NAME
);
Assert
.
assertNotNull
(
Config
.
Logging
.
LOG_FILE_NAME
);
Assert
.
assertNotNull
(
Config
.
Logging
.
MAX_LOG_FILE_LENGTH
);
Assert
.
assertNotNull
(
Config
.
Logging
.
SYSTEM_ERROR_LOG_FILE_NAME
);
}
@Test
(
expected
=
ExceptionInInitializerError
.
class
)
public
void
testErrorInitialize
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
true
;
SnifferConfigInitializer
.
initialize
();
}
@AfterClass
public
static
void
reset
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
false
;
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/EasyLogResolverTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
org.junit.Assert
;
import
org.junit.Test
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
EasyLogResolverTest
{
@Test
public
void
testGetLogger
(){
Assert
.
assertTrue
(
new
EasyLogResolver
().
getLogger
(
EasyLogResolverTest
.
class
)
instanceof
EasyLogger
);
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/EasyLoggerTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
com.a.eye.skywalking.api.conf.Config
;
import
java.io.PrintStream
;
import
org.junit.AfterClass
;
import
org.junit.Assert
;
import
org.junit.BeforeClass
;
import
org.junit.Test
;
import
org.mockito.Mockito
;
import
static
org
.
mockito
.
Matchers
.
anyString
;
import
static
org
.
mockito
.
Mockito
.
times
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
EasyLoggerTest
{
private
static
PrintStream
outRef
;
private
static
PrintStream
errRef
;
@BeforeClass
public
static
void
initAndHoldOut
(){
outRef
=
System
.
out
;
errRef
=
System
.
err
;
}
@Test
public
void
testLog
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
false
;
PrintStream
output
=
Mockito
.
mock
(
PrintStream
.
class
);
System
.
setOut
(
output
);
PrintStream
err
=
Mockito
.
mock
(
PrintStream
.
class
);
System
.
setErr
(
err
);
EasyLogger
logger
=
new
EasyLogger
(
EasyLoggerTest
.
class
);
Assert
.
assertTrue
(
logger
.
isDebugEnable
());
Assert
.
assertTrue
(
logger
.
isInfoEnable
());
Assert
.
assertTrue
(
logger
.
isWarnEnable
());
Assert
.
assertTrue
(
logger
.
isErrorEnable
());
logger
.
debug
(
"hello world"
);
logger
.
debug
(
"hello {}"
,
"world"
);
logger
.
info
(
"hello world"
);
logger
.
info
(
"hello {}"
,
"world"
);
logger
.
warn
(
"hello {}"
,
"world"
);
logger
.
warn
(
"hello world"
);
logger
.
error
(
"hello world"
);
logger
.
error
(
"hello world"
,
new
NullPointerException
());
logger
.
error
(
new
NullPointerException
(),
"hello {}"
,
"world"
);
Mockito
.
verify
(
output
,
times
(
4
))
.
println
(
anyString
());
Mockito
.
verify
(
err
,
times
(
7
))
.
println
(
anyString
());
}
@AfterClass
public
static
void
reset
(){
System
.
setOut
(
outRef
);
System
.
setErr
(
errRef
);
}
}
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/test/java/com/a/eye/skywalking/api/logging/api
/LogManagerTest.java
→
skywalking-
sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging
/LogManagerTest.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
import
org.junit.After
;
import
org.junit.Assert
;
...
...
@@ -50,15 +50,11 @@ public class LogManagerTest {
}
@Override
public
void
warn
(
String
format
,
Object
arguments
,
Throwable
e
)
{
}
@Override
public
void
error
(
String
format
,
Throwable
e
)
{
}
@Override
public
void
error
(
String
format
,
Object
arguments
,
Throwable
e
)
{
@Override
public
void
error
(
Throwable
e
,
String
format
,
Object
...
arguments
)
{
}
...
...
@@ -91,3 +87,4 @@ public class LogManagerTest {
}
}
}
skywalking-
commons/skywalking-logging/skywalking-logging-api/src/test/java/com/a/eye/skywalking/api/logging/api
/NoopLoggerTest.java
→
skywalking-
sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging
/NoopLoggerTest.java
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
.api
;
package
com.a.eye.skywalking.api.logging
;
import
org.junit.Assert
;
import
org.junit.Test
;
import
static
com
.
a
.
eye
.
skywalking
.
api
.
logging
.
api
.
NoopLogger
.
INSTANCE
;
import
static
com
.
a
.
eye
.
skywalking
.
api
.
logging
.
NoopLogger
.
INSTANCE
;
/**
* Created by wusheng on 2017/2/27.
...
...
@@ -24,6 +24,5 @@ public class NoopLoggerTest {
INSTANCE
.
warn
(
"Any string"
,
new
Object
[
0
],
new
NullPointerException
());
INSTANCE
.
error
(
"Any string"
);
INSTANCE
.
error
(
"Any string"
,
new
NullPointerException
());
INSTANCE
.
error
(
"Any string"
,
new
Object
[
0
],
new
NullPointerException
());
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/STDOutWriterTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
java.io.PrintStream
;
import
org.junit.AfterClass
;
import
org.junit.BeforeClass
;
import
org.junit.Test
;
import
org.mockito.Mockito
;
import
static
org
.
mockito
.
Matchers
.
anyString
;
import
static
org
.
mockito
.
Mockito
.
times
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
STDOutWriterTest
{
private
static
PrintStream
outRef
;
private
static
PrintStream
errRef
;
@BeforeClass
public
static
void
initAndHoldOut
(){
outRef
=
System
.
out
;
errRef
=
System
.
err
;
}
@Test
public
void
testWrite
(){
PrintStream
mockStream
=
Mockito
.
mock
(
PrintStream
.
class
);
System
.
setOut
(
mockStream
);
STDOutWriter
writer
=
new
STDOutWriter
();
writer
.
write
(
"hello"
);
Mockito
.
verify
(
mockStream
,
times
(
1
)).
println
(
anyString
());
}
@Test
public
void
testWriteError
(){
PrintStream
mockStream
=
Mockito
.
mock
(
PrintStream
.
class
);
System
.
setErr
(
mockStream
);
STDOutWriter
writer
=
new
STDOutWriter
();
writer
.
writeError
(
"hello"
);
Mockito
.
verify
(
mockStream
,
times
(
1
)).
println
(
anyString
());
}
@AfterClass
public
static
void
reset
(){
System
.
setOut
(
outRef
);
System
.
setErr
(
errRef
);
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/ThrowableFormatterTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
org.junit.Assert
;
import
org.junit.Test
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
ThrowableFormatterTest
{
@Test
public
void
testFormat
(){
NullPointerException
exception
=
new
NullPointerException
();
String
formatLines
=
ThrowableFormatter
.
format
(
exception
);
String
[]
lines
=
formatLines
.
split
(
"\n"
);
Assert
.
assertEquals
(
"java.lang.NullPointerException"
,
lines
[
0
]);
Assert
.
assertEquals
(
"\tat com.a.eye.skywalking.api.logging.ThrowableFormatterTest.testFormat(ThrowableFormatterTest.java:12)"
,
lines
[
1
]);
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/logging/WriterFactoryTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.logging
;
import
com.a.eye.skywalking.api.conf.Config
;
import
java.io.PrintStream
;
import
org.junit.AfterClass
;
import
org.junit.Assert
;
import
org.junit.BeforeClass
;
import
org.junit.Test
;
import
org.mockito.Mockito
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
WriterFactoryTest
{
private
static
PrintStream
errRef
;
@BeforeClass
public
static
void
initAndHoldOut
(){
errRef
=
System
.
err
;
}
/**
* During this test case,
* reset {@link System#out} to a Mock object, for avoid a console system.error.
*/
@Test
public
void
testGetLogWriter
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
true
;
PrintStream
mockStream
=
Mockito
.
mock
(
PrintStream
.
class
);
System
.
setErr
(
mockStream
);
Assert
.
assertEquals
(
SyncFileWriter
.
instance
(),
WriterFactory
.
getLogWriter
());
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
false
;
Assert
.
assertTrue
(
WriterFactory
.
getLogWriter
()
instanceof
STDOutWriter
);
}
@AfterClass
public
static
void
reset
(){
Config
.
SkyWalking
.
IS_PREMAIN_MODE
=
false
;
System
.
setErr
(
errRef
);
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/plugin/bytebuddy/AllObjectDefaultMethodsMatchTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.bytebuddy
;
import
org.junit.Test
;
/**
* Created by wusheng on 2017/2/28.
*/
public
class
AllObjectDefaultMethodsMatchTest
{
@Test
public
void
testMatches
(){
}
}
skywalking-sniffer/skywalking-api/src/test/java/com/a/eye/skywalking/api/plugin/bytebuddy/ArgumentTypeNameMatchTest.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.api.plugin.bytebuddy
;
import
net.bytebuddy.description.method.MethodDescription
;
import
net.bytebuddy.description.method.ParameterDescription
;
import
org.junit.Assert
;
import
org.junit.Test
;
import
org.mockito.Mockito
;
import
static
org
.
mockito
.
Mockito
.
when
;
/**
* @author wusheng
*/
public
class
ArgumentTypeNameMatchTest
{
@Test
public
void
testMatches
()
throws
IllegalAccessException
{
MethodDescription
methodDescription
=
Mockito
.
mock
(
MethodDescription
.
class
,
Mockito
.
RETURNS_DEEP_STUBS
);
ParameterDescription
parameterDescription
=
Mockito
.
mock
(
ParameterDescription
.
class
,
Mockito
.
RETURNS_DEEP_STUBS
);
when
(
methodDescription
.
getParameters
().
get
(
0
)).
thenReturn
(
parameterDescription
);
when
(
methodDescription
.
getParameters
().
size
()).
thenReturn
(
1
);
when
(
parameterDescription
.
getType
().
asErasure
().
getName
()).
thenReturn
(
"com.a.eye.TestClass"
);
ArgumentTypeNameMatch
matcher
=
((
ArgumentTypeNameMatch
)
ArgumentTypeNameMatch
.
takesArgumentWithType
(
0
,
"com.a.eye.TestClass"
));
Assert
.
assertTrue
(
matcher
.
matches
(
methodDescription
));
ArgumentTypeNameMatch
matcher2
=
((
ArgumentTypeNameMatch
)
ArgumentTypeNameMatch
.
takesArgumentWithType
(
0
,
"com.a.eye.TestClass2"
));
Assert
.
assertFalse
(
matcher2
.
matches
(
methodDescription
));
}
@Test
public
void
testMatchesWithNoParameters
(){
MethodDescription
methodDescription
=
Mockito
.
mock
(
MethodDescription
.
class
,
Mockito
.
RETURNS_DEEP_STUBS
);
ParameterDescription
parameterDescription
=
Mockito
.
mock
(
ParameterDescription
.
class
,
Mockito
.
RETURNS_DEEP_STUBS
);
when
(
methodDescription
.
getParameters
().
size
()).
thenReturn
(
0
);
ArgumentTypeNameMatch
matcher2
=
((
ArgumentTypeNameMatch
)
ArgumentTypeNameMatch
.
takesArgumentWithType
(
0
,
"com.a.eye.TestClass"
));
Assert
.
assertFalse
(
matcher2
.
matches
(
methodDescription
));
}
}
skywalking-sniffer/skywalking-api/src/test/resources/sky-walking.config
0 → 100644
浏览文件 @
dfee12c5
skywalking
.
username
=
testUser
skywalking
.
application_code
=
crmApp
skywalking
.
servers
=
127
.
0
.
0
.
1
:
8080
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/span/SpanGeneration.java
0 → 100644
浏览文件 @
dfee12c5
package
com.a.eye.skywalking.sniffer.mock.trace.builders.span
;
/**
* Created by wusheng on 2017/2/28.
*/
public
abstract
class
SpanGeneration
{
private
SpanGeneration
next
;
public
SpanGeneration
build
(
SpanGeneration
next
){
this
.
next
=
next
;
return
next
;
}
public
SpanGeneration
build
(){
return
this
;
}
protected
abstract
void
before
();
protected
abstract
void
after
();
public
void
generate
(){
this
.
before
();
if
(
next
!=
null
){
next
.
generate
();
}
this
.
after
();
}
}
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
浏览文件 @
dfee12c5
...
...
@@ -9,45 +9,57 @@ import com.a.eye.skywalking.trace.tag.Tags;
*
* Created by wusheng on 2017/2/20.
*/
public
enum
TomcatSpanGenerator
{
INSTANCE
;
/**
* When tomcat response 200.
*/
public
void
on200
(){
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/serviceA"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/serviceA"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
Tags
.
STATUS_CODE
.
set
(
webSpan
,
200
);
ContextManager
.
INSTANCE
.
stopSpan
(
webSpan
);
public
class
TomcatSpanGenerator
{
public
static
class
ON200
extends
SpanGeneration
{
public
static
final
ON200
INSTANCE
=
new
ON200
();
@Override
protected
void
before
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/serviceA"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/serviceA"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
}
@Override
protected
void
after
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
activeSpan
();
Tags
.
STATUS_CODE
.
set
(
webSpan
,
200
);
ContextManager
.
INSTANCE
.
stopSpan
();
}
}
/**
* When tomcat response 404.
*/
public
void
on404
(){
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/service/unknown"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/unknown"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
Tags
.
STATUS_CODE
.
set
(
webSpan
,
404
);
Tags
.
ERROR
.
set
(
webSpan
,
true
);
ContextManager
.
INSTANCE
.
stopSpan
(
webSpan
);
public
static
class
ON404
extends
SpanGeneration
{
public
static
final
ON404
INSTANCE
=
new
ON404
();
@Override
protected
void
before
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/service/unknown"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/unknown"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
}
@Override
protected
void
after
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
activeSpan
();
Tags
.
STATUS_CODE
.
set
(
webSpan
,
404
);
Tags
.
ERROR
.
set
(
webSpan
,
true
);
ContextManager
.
INSTANCE
.
stopSpan
();
}
}
public
static
class
ON500
extends
SpanGeneration
{
public
static
final
ON500
INSTANCE
=
new
ON500
();
@Override
protected
void
before
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/error/service"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/error/service"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
}
/**
* When tomcat response 500.
*/
public
void
on500
(){
Span
webSpan
=
ContextManager
.
INSTANCE
.
createSpan
(
"/web/error/service"
);
Tags
.
COMPONENT
.
set
(
webSpan
,
"tomcat"
);
Tags
.
URL
.
set
(
webSpan
,
"http://10.21.9.35/web/error/service"
);
Tags
.
SPAN_KIND
.
set
(
webSpan
,
Tags
.
SPAN_KIND_SERVER
);
Tags
.
STATUS_CODE
.
set
(
webSpan
,
500
);
Tags
.
ERROR
.
set
(
webSpan
,
true
);
webSpan
.
log
(
new
NumberFormatException
(
"Can't convert 'abc' to int."
));
ContextManager
.
INSTANCE
.
stopSpan
(
webSpan
);
@Override
protected
void
after
()
{
Span
webSpan
=
ContextManager
.
INSTANCE
.
activeSpan
();
Tags
.
STATUS_CODE
.
set
(
webSpan
,
500
);
Tags
.
ERROR
.
set
(
webSpan
,
true
);
webSpan
.
log
(
new
NumberFormatException
(
"Can't convert 'abc' to int."
));
ContextManager
.
INSTANCE
.
stopSpan
();
}
}
}
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java
浏览文件 @
dfee12c5
...
...
@@ -14,7 +14,7 @@ public enum SingleTomcat200TraceBuilder implements TraceSegmentBuilder {
INSTANCE
;
@Override
public
TraceSegment
build
(
MockTracerContextListener
listener
)
{
TomcatSpanGenerator
.
INSTANCE
.
on200
();
TomcatSpanGenerator
.
ON200
.
INSTANCE
.
build
().
generate
();
return
listener
.
getFinished
(
0
);
}
}
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java
浏览文件 @
dfee12c5
...
...
@@ -14,7 +14,7 @@ public enum SingleTomcat404TraceBuilder implements TraceSegmentBuilder {
INSTANCE
;
@Override
public
TraceSegment
build
(
MockTracerContextListener
listener
)
{
TomcatSpanGenerator
.
INSTANCE
.
on404
();
TomcatSpanGenerator
.
ON404
.
INSTANCE
.
build
().
generate
();
return
listener
.
getFinished
(
0
);
}
}
skywalking-sniffer/skywalking-sniffer-mock/src/main/java/com/a/eye/skywalking/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java
浏览文件 @
dfee12c5
...
...
@@ -14,7 +14,7 @@ public enum SingleTomcat500TraceBuilder implements TraceSegmentBuilder {
INSTANCE
;
@Override
public
TraceSegment
build
(
MockTracerContextListener
listener
)
{
TomcatSpanGenerator
.
INSTANCE
.
on500
();
TomcatSpanGenerator
.
ON500
.
INSTANCE
.
build
().
generate
();
return
listener
.
getFinished
(
0
);
}
}
skywalking-sniffer/skywalking-toolkit-activation/skywalking-toolkit-trace-context-activation/src/main/java/com/a/eye/skywalking/toolkit/activation/trace/TraceContextInterceptor.java
浏览文件 @
dfee12c5
...
...
@@ -2,8 +2,8 @@ package com.a.eye.skywalking.toolkit.activation.trace;
import
com.a.eye.skywalking.api.context.ContextCarrier
;
import
com.a.eye.skywalking.api.context.ContextManager
;
import
com.a.eye.skywalking.api.logging.
api.
ILog
;
import
com.a.eye.skywalking.api.logging.
api.
LogManager
;
import
com.a.eye.skywalking.api.logging.ILog
;
import
com.a.eye.skywalking.api.logging.LogManager
;
import
com.a.eye.skywalking.api.plugin.interceptor.enhance.MethodInterceptResult
;
import
com.a.eye.skywalking.api.plugin.interceptor.enhance.MethodInvokeContext
;
import
com.a.eye.skywalking.api.plugin.interceptor.enhance.StaticMethodInvokeContext
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录