diff --git a/README.md b/README.md index 6611d33da..c31d22384 100644 --- a/README.md +++ b/README.md @@ -21,16 +21,21 @@ SkyWalking: Large-Scale Distributed Systems Tracing Infrastructure, 是一个对 * By using [byte-buddy](https://github.com/raphw/byte-buddy) (Thanks to [raphw](https://github.com/raphw)), plugins use dynamic byte code generation to avoid invasive codes. plugins API, execution time of blocking saving span must between 200μs and 300μs, including execution time of dynamic byte code. * Provide trace log analysis and presentation capabilities, Reduce or avoid add-on functions development. -|plugins|using config file|using dynamic byte code| coding |remarks| -| ----------- |---------| ----------|----------|----------| -|web-plugin|web.xml| - | - | - | -|spring-plugin| spring config file | - | - | - | -|tomcat8-plugin| - | YES | - | - | -|dubbo-plugin| - | YES | - | - | -|jdbc-plugin| - | YES | - | support mysql, oracle, h2, easily extend to support sybase, sqlserver, jtds, db2, informix | -|httpClient-4.x-plugin| - | YES | - | - | -|jedis-2.x-plugin| - | YES | - | - | - +# Supported components +* web container + * Tomcat7 + * Tomcat8 +* database + * mysql + * oracle + * h2 + * easily extend to support sybase, sqlserver, jtds, db2, informix +* rpc framework + * dubbo (tested 2.5.3) + * dubbox (tested 2.8.4-dubbo protocol, 2.8.4-rest protocol) + * httpClient 4.x +* cache + * jedix 2.x # 主要贡献者 / Contributors diff --git a/skywalking-collector/skywalking-sdk-plugin/pom.xml b/skywalking-collector/skywalking-sdk-plugin/pom.xml index 49dfc2c4b..6634a1e06 100644 --- a/skywalking-collector/skywalking-sdk-plugin/pom.xml +++ b/skywalking-collector/skywalking-sdk-plugin/pom.xml @@ -12,9 +12,7 @@ skywalking-sdk-plugin dubbo-plugin - spring-plugin jdbc-plugin - web-plugin httpClient-4.x-plugin jedis-2.x-plugin tomcat-7.x-8.x-plugin @@ -77,4 +75,4 @@ https://api.bintray.com/maven/wu-sheng/skywalking/com.ai.cloud.skywalking-sdk-plugin/;publish=1 - \ No newline at end of file + diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/README.md b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/README.md deleted file mode 100644 index 5e27af2eb..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# 如何追踪注册在Spring中类实例的方法调用? -- 引入所需插件 -```xml - - - com.ai.cloud - skywalking-spring-plugin - {latest_version} - -``` -- Spring配置文件头部,配置所需的命名空间 -```xml -xmlns:skywalking="http://cloud.asiainfo.com/schema/skywalking" -xsi:schemaLocation="http://cloud.asiainfo.com/schema/skywalking - http://cloud.asiainfo.com/schema/skywalking/skywalking.xsd" -``` -- 典型Spring配置文件如下 -```xml - -``` -- Spring配置文件中,设置需要追踪包名、类名或方法名。可配置多个 -```xml - - -``` -- 对于方法的追踪,仅限于实例级的public方法。其他方法由于Java运行时原因,无法追踪。 -- 部分类由于被Spring代理后,类名发生变化,可能造成无法追踪 - diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/pom.xml b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/pom.xml deleted file mode 100644 index 4999ab091..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/pom.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - skywalking-sdk-plugin - com.ai.cloud - 1.0-Final - - 4.0.0 - - skywalking-spring-plugin - jar - - spring-plugin - http://maven.apache.org - - - UTF-8 - - - - - org.aspectj - aspectjweaver - 1.8.7 - compile - - - com.ai.cloud - skywalking-api - ${project.version} - - - junit - junit - 3.8.1 - test - - - org.apache.logging.log4j - log4j-core - 2.4.1 - test - - - org.springframework - spring-context - 3.2.0.RELEASE - compile - - - - org.springframework - spring-tx - 3.2.0.RELEASE - test - - - org.springframework - spring-jdbc - 3.2.9.RELEASE - test - - - org.apache.commons - commons-dbcp2 - 2.1.1 - test - - - - mysql - mysql-connector-java - 5.1.38 - test - - - - - - - - org.apache.maven.plugins - maven-resources-plugin - 2.4.3 - - ${project.build.sourceEncoding} - - - - - org.apache.maven.plugins - maven-source-plugin - - - - attach-sources - - jar - - - - - - - - - - bintray-wu-sheng-sky-walking-repository - wu-sheng-sky-walking-repository - https://api.bintray.com/maven/wu-sheng/skywalking/com.ai.cloud.skywalking-spring-plugin/;publish=1 - - - diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringBuriedPointType.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringBuriedPointType.java deleted file mode 100644 index 834916f4e..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringBuriedPointType.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import com.ai.cloud.skywalking.api.IBuriedPointType; -import com.ai.cloud.skywalking.protocol.common.CallType; - -public class SpringBuriedPointType implements IBuriedPointType { - - private static SpringBuriedPointType springBuriedPointType; - - public static IBuriedPointType instance() { - if (springBuriedPointType == null) { - springBuriedPointType = new SpringBuriedPointType(); - } - - return springBuriedPointType; - } - - @Override - public String getTypeName() { - return "M"; - } - - @Override - public CallType getCallType() { - return CallType.LOCAL; - } - - private SpringBuriedPointType() { - // Non - } - -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringTagNamespaceHandler.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringTagNamespaceHandler.java deleted file mode 100644 index c771bc7be..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/SpringTagNamespaceHandler.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import org.springframework.beans.factory.xml.NamespaceHandlerSupport; - -public class SpringTagNamespaceHandler extends NamespaceHandlerSupport { - @Override - public void init() { - registerBeanDefinitionParser("trace", new TracingPatternParser()); - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingAspect.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingAspect.java deleted file mode 100644 index e5da6ab9d..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingAspect.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import com.ai.cloud.skywalking.invoke.monitor.LocalMethodInvokeMonitor; -import com.ai.cloud.skywalking.model.Identification; -import org.aspectj.lang.ProceedingJoinPoint; - -public class TracingAspect { - - public Object doTracing(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { - LocalMethodInvokeMonitor localMethodInvokeMonitor = new LocalMethodInvokeMonitor(); - try { - localMethodInvokeMonitor.beforeInvoke(Identification.newBuilder().viewPoint(proceedingJoinPoint.getSignature().toString()).spanType(SpringBuriedPointType.instance()).build()); - return proceedingJoinPoint.proceed(); - } catch (Throwable e) { - localMethodInvokeMonitor.occurException(e); - throw e; - } finally { - localMethodInvokeMonitor.afterInvoke(); - } - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingEnhanceProcessor.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingEnhanceProcessor.java deleted file mode 100644 index 2db7aaa27..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingEnhanceProcessor.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import com.ai.cloud.skywalking.conf.AuthDesc; -import com.ai.cloud.skywalking.plugin.spring.util.ConcurrentHashSet; -import org.aspectj.lang.ProceedingJoinPoint; -import org.springframework.aop.aspectj.AspectInstanceFactory; -import org.springframework.aop.aspectj.AspectJAroundAdvice; -import org.springframework.aop.aspectj.AspectJExpressionPointcut; -import org.springframework.aop.aspectj.SimpleAspectInstanceFactory; -import org.springframework.aop.framework.ProxyFactory; -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.DisposableBean; -import org.springframework.beans.factory.config.BeanFactoryPostProcessor; -import org.springframework.beans.factory.config.BeanPostProcessor; -import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; -import org.springframework.context.ApplicationContext; -import org.springframework.context.ApplicationContextAware; - -import java.lang.reflect.Method; -import java.util.Set; - -public class TracingEnhanceProcessor implements DisposableBean, - BeanPostProcessor, BeanFactoryPostProcessor, ApplicationContextAware { - private final Set beanSet = new ConcurrentHashSet(); - - @Override - public void postProcessBeanFactory( - ConfigurableListableBeanFactory beanFactory) throws BeansException { - for (TracingPattern tracingPattern : applicationContext.getBeansOfType(TracingPattern.class) - .values()) { - - AspectJExpressionPointcut packageMatcher = new AspectJExpressionPointcut(); - packageMatcher.setExpression("within(" + tracingPattern.getPackageExpression() + ")"); - tracingPattern.setPackageMatcher(packageMatcher); - - AspectJExpressionPointcut pointcut = new AspectJExpressionPointcut(); - pointcut.setExpression("execution(* " + tracingPattern.getPackageExpression().substring(0, tracingPattern.getPackageExpression().length() - 1) + tracingPattern.getClassExpression() + ".*(..))"); - tracingPattern.setPointcut(pointcut); - - beanSet.add(tracingPattern); - } - - } - - @Override - public Object postProcessBeforeInitialization(Object bean, String beanName) - throws BeansException { - return bean; - } - - private ApplicationContext applicationContext; - - @Override - public void setApplicationContext(ApplicationContext applicationContext) - throws BeansException { - this.applicationContext = applicationContext; - } - - @Override - public Object postProcessAfterInitialization(Object bean, String beanName) - throws BeansException { - if (!AuthDesc.isAuth()) { - return bean; - } - - for (TracingPattern tracingPattern : beanSet) { - if (tracingPattern.getPackageMatcher().matches(bean.getClass()) && matchClassName(tracingPattern.getClassExpression(), bean - .getClass().getSimpleName())) { - ProxyFactory proxyFactory = new ProxyFactory(bean); - proxyFactory.setProxyTargetClass(true); - AspectInstanceFactory aspectInstanceFactory = new SimpleAspectInstanceFactory(TracingAspect.class); - Method method = null; - try { - method = TracingAspect.class.getMethod("doTracing", ProceedingJoinPoint.class); - } catch (NoSuchMethodException e) { - throw new IllegalStateException("Failed to find doTracing method", e); - } - AspectJAroundAdvice advised = new AspectJAroundAdvice(method, - tracingPattern.getPointcut(), aspectInstanceFactory); - proxyFactory.addAdvice(advised); - - return proxyFactory.getProxy(); - } - } - return bean; - } - - private boolean matchClassName(String className, String simpleName) { - if ("*".equals(className)) { - return true; - } else if (className.endsWith("*")) { - return simpleName.startsWith(className); - } - return false; - } - - @Override - public void destroy() throws Exception { - - } - -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPattern.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPattern.java deleted file mode 100644 index 1ce807723..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPattern.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import org.springframework.aop.aspectj.AspectJExpressionPointcut; - -public class TracingPattern { - private String packageExpression = ""; - private String classExpression = ""; - private AspectJExpressionPointcut packageMatcher; - private AspectJExpressionPointcut pointcut; - - public String getPackageExpression() { - return packageExpression; - } - - public void setPackageExpression(String packageExpression) { - this.packageExpression = packageExpression; - } - - public String getClassExpression() { - return classExpression; - } - - public void setClassExpression(String classExpression) { - this.classExpression = classExpression; - } - - public AspectJExpressionPointcut getPackageMatcher() { - return packageMatcher; - } - - public void setPackageMatcher(AspectJExpressionPointcut packageMatcher) { - this.packageMatcher = packageMatcher; - } - - public AspectJExpressionPointcut getPointcut() { - return pointcut; - } - - public void setPointcut(AspectJExpressionPointcut pointcut) { - this.pointcut = pointcut; - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPatternParser.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPatternParser.java deleted file mode 100644 index c3b2ff96a..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/TracingPatternParser.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring; - -import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.config.RuntimeBeanReference; -import org.springframework.beans.factory.support.RootBeanDefinition; -import org.springframework.beans.factory.xml.BeanDefinitionParser; -import org.springframework.beans.factory.xml.ParserContext; -import org.w3c.dom.Element; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; - -public class TracingPatternParser implements BeanDefinitionParser { - - private final String TRACE_ENHANCE_PROCESSOR_BEAN_NAME = "TracingEnhanceProcessor"; - - @Override - public BeanDefinition parse(Element element, ParserContext parserContext) { - RootBeanDefinition beanDefinition = new RootBeanDefinition(); - beanDefinition.setBeanClass(TracingPattern.class); - String id = element.getAttribute("id"); - if (id == null || id.length() == 0) { - id = TracingPattern.class.getName(); - int counter = 2; - while (parserContext.getRegistry().containsBeanDefinition(id)) { - id = id + (counter++); - } - } - if (id != null && id.length() > 0) { - if (parserContext.getRegistry().containsBeanDefinition(id)) { - throw new IllegalStateException("Duplicate spring bean id " + id); - } - parserContext.getRegistry().registerBeanDefinition(id, beanDefinition); - } - NamedNodeMap nnm = element.getAttributes(); - for (int i = 0; i < nnm.getLength(); i++) { - Node node = nnm.item(i); - String key = node.getLocalName(); - String value = node.getNodeValue(); - if (key.equals("entity")) { - if (parserContext.getRegistry().containsBeanDefinition(value)) { - beanDefinition.getPropertyValues().add(key, parserContext.getRegistry().getBeanDefinition(value)); - } else { - beanDefinition.getPropertyValues().add(key, new RuntimeBeanReference(value)); - } - } else { - beanDefinition.getPropertyValues().add(key, value); - } - } - - if (!parserContext.getRegistry().containsBeanDefinition(TRACE_ENHANCE_PROCESSOR_BEAN_NAME)){ - RootBeanDefinition traceEnhanceProcessorBeanDefinition = new RootBeanDefinition(); - traceEnhanceProcessorBeanDefinition.setBeanClass(TracingEnhanceProcessor.class); - traceEnhanceProcessorBeanDefinition.setLazyInit(false); - parserContext.getRegistry().registerBeanDefinition(TRACE_ENHANCE_PROCESSOR_BEAN_NAME, traceEnhanceProcessorBeanDefinition); - } - - return beanDefinition; - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/util/ConcurrentHashSet.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/util/ConcurrentHashSet.java deleted file mode 100644 index 1160799f1..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/java/com/ai/cloud/skywalking/plugin/spring/util/ConcurrentHashSet.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring.util; - -import java.io.Serializable; -import java.util.AbstractSet; -import java.util.Iterator; -import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; - -public class ConcurrentHashSet extends AbstractSet implements Set, Serializable { - private static final long serialVersionUID = -8672117787651310382L; - private static final Object PRESENT = new Object(); - private final ConcurrentHashMap map; - - @SuppressWarnings("unchecked") - public ConcurrentHashSet() { - this.map = new ConcurrentHashMap(); - } - - @SuppressWarnings("unchecked") - public ConcurrentHashSet(int initialCapacity) { - this.map = new ConcurrentHashMap(initialCapacity); - } - - public Iterator iterator() { - return this.map.keySet().iterator(); - } - - public int size() { - return this.map.size(); - } - - public boolean isEmpty() { - return this.map.isEmpty(); - } - - public boolean contains(Object o) { - return this.map.containsKey(o); - } - - public boolean add(E e) { - return this.map.put(e, PRESENT) == null; - } - - public boolean remove(Object o) { - return this.map.remove(o) == PRESENT; - } - - public void clear() { - this.map.clear(); - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/skywalking.xsd b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/skywalking.xsd deleted file mode 100644 index ba8ff4276..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/skywalking.xsd +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.handlers b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.handlers deleted file mode 100644 index 5a48f34df..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.handlers +++ /dev/null @@ -1 +0,0 @@ -http\://cloud.asiainfo.com/schema/skywalking=com.ai.cloud.skywalking.plugin.spring.SpringTagNamespaceHandler \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.schemas b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.schemas deleted file mode 100644 index f26f1b043..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/main/resources/META-INF/spring.schemas +++ /dev/null @@ -1 +0,0 @@ -http\://cloud.asiainfo.com/schema/skywalking/skywalking.xsd=META-INF/skywalking.xsd \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/java/com/ai/cloud/skywalking/plugin/spring/test/TestBean.java b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/java/com/ai/cloud/skywalking/plugin/spring/test/TestBean.java deleted file mode 100644 index 20a0464fb..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/java/com/ai/cloud/skywalking/plugin/spring/test/TestBean.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.ai.cloud.skywalking.plugin.spring.test; - -import org.springframework.context.support.ClassPathXmlApplicationContext; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -@Service -//@Transactional -public class TestBean/* implements TestInterface*/ { - private String value; - - public void testPrintln(String value) { - System.out.println(value); - } - - private void testPrintln2(String value) { - System.out.println(value); - } - - - public static void main(String[] args) throws IllegalAccessException { - ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("classpath*:springConfig-common.xml"); - TestBean testBean = classPathXmlApplicationContext.getBean(TestBean.class); - testBean.testPrintln("Hello World"); - } - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/jdbc.properties b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/jdbc.properties deleted file mode 100644 index fcbb2a288..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/jdbc.properties +++ /dev/null @@ -1,8 +0,0 @@ -jdbc.driverClassName=com.mysql.jdbc.Driver -jdbc.url=jdbc:mysql://10.1.241.20:31306/sw_db -jdbc.username=sw_dbusr01 -jdbc.password=sw_dbusr01 -jdbc.maxTotal=200 -jdbc.maxIdle=50 -jdbc.maxWaitMillis=1000 -jdbc.defaultAutoCommit=false \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/log4j2.xml b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/log4j2.xml deleted file mode 100644 index 852698762..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/log4j2.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/sky-walking.auth b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/sky-walking.auth deleted file mode 100644 index cc8b1c7bb..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/sky-walking.auth +++ /dev/null @@ -1,47 +0,0 @@ -#skyWalking用户ID -skywalking.user_id=123 -#skyWalking应用编码 -skywalking.application_code=test -#skywalking auth的环境变量名字 -skywalking.auth_system_env_name=SKYWALKING_RUN -#skywalking数据编码 -skywalking.charset=UTF-8 - -#是否打印数据 -buriedpoint.printf=true -#埋点异常的最大长度 -buriedpoint.max_exception_stack_length=4000 -#业务字段的最大长度 -buriedpoint.businesskey_max_length=300 -#过滤异常 -buriedpoint.exclusive_exceptions=java.lang.RuntimeException - -#最大发送者的连接数阀比例 -sender.connect_percent=100 -#发送服务端配置 -sender.servers_addr=127.0.0.1:34000 -#最大发送的副本数量 -sender.max_copy_num=2 -#发送的最大长度 -sender.max_send_length=20000 -#当没有Sender时,尝试获取sender的等待周期 -sender.retry_get_sender_wait_interval=2000 - - - - -#最大消费线程数 -consumer.max_consumer=2 -#消费者最大等待时间 -consumer.max_wait_time=5 -#发送失败等待时间 -consumer.consumer_fail_retry_wait_interval=50 - -#每个Buffer的最大个数 -buffer.buffer_max_size=18000 -#Buffer池的最大长度 -buffer.pool_size=5 - -#发送检查线程检查周期 -senderchecker.check_polling_time=200 - diff --git a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/springConfig-common.xml b/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/springConfig-common.xml deleted file mode 100644 index d1b13c94e..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/spring-plugin/src/test/resources/springConfig-common.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/skywalking-collector/skywalking-sdk-plugin/web-plugin/README.md b/skywalking-collector/skywalking-sdk-plugin/web-plugin/README.md deleted file mode 100644 index f575e8e5f..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/web-plugin/README.md +++ /dev/null @@ -1,27 +0,0 @@ -# 如何追踪web应用服务器访问? -- 引入所需插件 -```xml - - - com.ai.cloud - skywalking-web-plugin - {latest_version} - -``` -- 服务端使用Filter追踪web请求 -```xml - - tracingFilter - com.ai.cloud.skywalking.plugin.web.SkyWalkingFilter - - tracing-name - - SkyWalking-TRACING-NAME - - - - tracingFilter - - /request-uri - -``` diff --git a/skywalking-collector/skywalking-sdk-plugin/web-plugin/pom.xml b/skywalking-collector/skywalking-sdk-plugin/web-plugin/pom.xml deleted file mode 100644 index c1a414900..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/web-plugin/pom.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - skywalking-sdk-plugin - com.ai.cloud - 1.0-Final - - 4.0.0 - - skywalking-web-plugin - jar - - web-plugin - http://maven.apache.org - - - UTF-8 - - - - - com.ai.cloud - skywalking-api - ${project.version} - - - - javax.servlet - javax.servlet-api - 3.0.1 - compile - - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - attach-sources - - jar - - - - - - - - - - bintray-wu-sheng-sky-walking-repository - wu-sheng-sky-walking-repository - https://api.bintray.com/maven/wu-sheng/skywalking/com.ai.cloud.skywalking-web-plugin/;publish=1 - - - diff --git a/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/SkyWalkingFilter.java b/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/SkyWalkingFilter.java deleted file mode 100644 index 2944f2d56..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/SkyWalkingFilter.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.ai.cloud.skywalking.plugin.web; - - -import com.ai.cloud.skywalking.api.Tracing; -import com.ai.cloud.skywalking.invoke.monitor.RPCServerInvokeMonitor; -import com.ai.cloud.skywalking.conf.AuthDesc; -import com.ai.cloud.skywalking.model.ContextData; -import com.ai.cloud.skywalking.model.Identification; - -import javax.servlet.*; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -public class SkyWalkingFilter implements Filter { - - private final String secondKey = "ContextData"; - private String tracingName; - private static final String DEFAULT_TRACE_NAME = "SkyWalking-TRACING-NAME"; - private static final String TRACE_ID_HEADER_NAME = "SW-TraceId"; - - public void init(FilterConfig filterConfig) throws ServletException { - tracingName = filterConfig.getInitParameter("tracing-name"); - if (tracingName == null || tracingName.length() <= 0) { - tracingName = DEFAULT_TRACE_NAME; - } - } - - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { - if (!AuthDesc.isAuth()) { - filterChain.doFilter(servletRequest, servletResponse); - return; - } - - RPCServerInvokeMonitor rpcServerInvokeMonitor = null; - try { - HttpServletRequest request = (HttpServletRequest) servletRequest; - String tracingHeaderValue = request.getHeader(tracingName); - ContextData contextData = null; - if (tracingHeaderValue != null) { - String contextDataStr = null; - int index = tracingHeaderValue.indexOf("="); - if (index > 0) { - String key = tracingHeaderValue.substring(0, index); - if (secondKey.equals(key)) { - contextDataStr = tracingHeaderValue.substring(index + 1); - } - } - - if (contextDataStr != null && contextDataStr.length() > 0) { - contextData = new ContextData(contextDataStr); - } - } - rpcServerInvokeMonitor = new RPCServerInvokeMonitor(); - rpcServerInvokeMonitor.beforeInvoke(contextData, generateIdentification(request)); - filterChain.doFilter(servletRequest, servletResponse); - - HttpServletResponse httpServletResponse = (HttpServletResponse) servletResponse; - httpServletResponse.addHeader(TRACE_ID_HEADER_NAME, Tracing.getTraceId()); - } catch (Throwable e) { - rpcServerInvokeMonitor.occurException(e); - throw new ServletException(e); - } finally { - rpcServerInvokeMonitor.afterInvoke(); - } - - } - - - private Identification generateIdentification(HttpServletRequest request) { - return Identification.newBuilder() - .viewPoint(request.getRequestURL().toString()) - .spanType(WebBuriedPointType.instance()) - .build(); - } - - public void destroy() { - // do-nothing - } -} diff --git a/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/WebBuriedPointType.java b/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/WebBuriedPointType.java deleted file mode 100644 index abd86391e..000000000 --- a/skywalking-collector/skywalking-sdk-plugin/web-plugin/src/main/java/com/ai/cloud/skywalking/plugin/web/WebBuriedPointType.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.ai.cloud.skywalking.plugin.web; - -import com.ai.cloud.skywalking.api.IBuriedPointType; -import com.ai.cloud.skywalking.protocol.common.CallType; - -public class WebBuriedPointType implements IBuriedPointType { - - private static WebBuriedPointType webBuriedPointType; - - public static IBuriedPointType instance() { - if (webBuriedPointType == null) { - webBuriedPointType = new WebBuriedPointType(); - } - - return webBuriedPointType; - } - - @Override - public String getTypeName() { - return "W"; - } - - @Override - public CallType getCallType() { - return CallType.SYNC; - } - - private WebBuriedPointType() { - // Non - } -} diff --git a/skywalking-protocol/dependency-reduced-pom.xml b/skywalking-protocol/dependency-reduced-pom.xml index 70f12e546..4faea7f84 100644 --- a/skywalking-protocol/dependency-reduced-pom.xml +++ b/skywalking-protocol/dependency-reduced-pom.xml @@ -1,102 +1,102 @@ - - - 4.0.0 - com.ai.cloud - skywalking-protocol - skywalking-protocol - 1.0-Final - http://maven.apache.org - - - - maven-shade-plugin - 2.4.1 - - - package - - shade - - - false - true - true - true - - - ${shade.com.google.protobuf.source} - ${shade.com.google.protobuf.target} - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 1.9.1 - - - add-source - generate-sources - - add-source - - - - ${project.basedir}/src/main/gen-java - - - - - - - maven-resources-plugin - 2.4.3 - - ${project.build.sourceEncoding} - - - - maven-source-plugin - 2.4 - - - attach-sources - - jar - - - - - - - - - junit - junit - 4.12 - test - - - hamcrest-core - org.hamcrest - - - - - - - bintray-wu-sheng-sky-walking-repository - wu-sheng-sky-walking-repository - https://api.bintray.com/maven/wu-sheng/skywalking/com.ai.cloud.skywalking-protocol/;publish=1 - - - - com.google.protobuf - com.ai.cloud.skywalking.protocol.dependencies.com.google.protobuf - UTF-8 - - - + + + 4.0.0 + com.ai.cloud + skywalking-protocol + skywalking-protocol + 1.0-Final + http://maven.apache.org + + + + maven-shade-plugin + 2.4.1 + + + package + + shade + + + false + true + true + true + + + ${shade.com.google.protobuf.source} + ${shade.com.google.protobuf.target} + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 1.9.1 + + + add-source + generate-sources + + add-source + + + + ${project.basedir}/src/main/gen-java + + + + + + + maven-resources-plugin + 2.4.3 + + ${project.build.sourceEncoding} + + + + maven-source-plugin + 2.4 + + + attach-sources + + jar + + + + + + + + + junit + junit + 4.12 + test + + + hamcrest-core + org.hamcrest + + + + + + + bintray-wu-sheng-sky-walking-repository + wu-sheng-sky-walking-repository + https://api.bintray.com/maven/wu-sheng/skywalking/com.ai.cloud.skywalking-protocol/;publish=1 + + + + com.google.protobuf + com.ai.cloud.skywalking.protocol.dependencies.com.google.protobuf + UTF-8 + + +