提交 8143a5b0 编写于 作者: A ascrutae

independent data carrier project

上级 28b6d8fa
...@@ -9,23 +9,6 @@ ...@@ -9,23 +9,6 @@
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>apm-logging-log4j2</artifactId> <artifactId>apm-datacarrier</artifactId>
<dependencies>
<dependency>
<groupId>org.skywalking</groupId>
<artifactId>apm-logging-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.8</version>
</dependency>
</dependencies>
</project> </project>
package org.skywalking.apm.agent.core.datacarrier; package org.skywalking.apm.commons.datacarrier;
import org.skywalking.apm.agent.core.datacarrier.buffer.BufferStrategy; import org.skywalking.apm.commons.datacarrier.buffer.BufferStrategy;
import org.skywalking.apm.agent.core.datacarrier.buffer.Channels; import org.skywalking.apm.commons.datacarrier.buffer.Channels;
import org.skywalking.apm.agent.core.datacarrier.consumer.ConsumerPool; import org.skywalking.apm.commons.datacarrier.consumer.ConsumerPool;
import org.skywalking.apm.agent.core.datacarrier.consumer.IConsumer; import org.skywalking.apm.commons.datacarrier.consumer.IConsumer;
import org.skywalking.apm.agent.core.datacarrier.partition.IDataPartitioner; import org.skywalking.apm.commons.datacarrier.partition.IDataPartitioner;
import org.skywalking.apm.agent.core.datacarrier.partition.SimpleRollingPartitioner; import org.skywalking.apm.commons.datacarrier.partition.SimpleRollingPartitioner;
/** /**
* DataCarrier main class. * DataCarrier main class.
......
package org.skywalking.apm.agent.core.datacarrier.buffer; package org.skywalking.apm.commons.datacarrier.buffer;
import java.util.LinkedList; import java.util.LinkedList;
import org.skywalking.apm.agent.core.datacarrier.common.AtomicRangeInteger; import org.skywalking.apm.commons.datacarrier.common.AtomicRangeInteger;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier.buffer; package org.skywalking.apm.commons.datacarrier.buffer;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier.buffer; package org.skywalking.apm.commons.datacarrier.buffer;
import org.skywalking.apm.agent.core.datacarrier.partition.IDataPartitioner; import org.skywalking.apm.commons.datacarrier.partition.IDataPartitioner;
/** /**
* Channels of Buffer * Channels of Buffer
......
package org.skywalking.apm.agent.core.datacarrier.common; package org.skywalking.apm.commons.datacarrier.common;
import java.io.Serializable; import java.io.Serializable;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
/** /**
* Created by wusheng on 2016/11/15. * Created by wusheng on 2016/11/15.
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.locks.ReentrantLock;
import org.skywalking.apm.agent.core.datacarrier.buffer.Buffer; import org.skywalking.apm.commons.datacarrier.buffer.Buffer;
import org.skywalking.apm.agent.core.datacarrier.buffer.Channels; import org.skywalking.apm.commons.datacarrier.buffer.Channels;
/** /**
* Pool of consumers * Pool of consumers
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import org.skywalking.apm.agent.core.datacarrier.buffer.Buffer; import org.skywalking.apm.commons.datacarrier.buffer.Buffer;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import java.util.List; import java.util.List;
......
package org.skywalking.apm.agent.core.datacarrier.partition; package org.skywalking.apm.commons.datacarrier.partition;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier.partition; package org.skywalking.apm.commons.datacarrier.partition;
/** /**
* use threadid % total to partition * use threadid % total to partition
......
package org.skywalking.apm.agent.core.datacarrier.partition; package org.skywalking.apm.commons.datacarrier.partition;
/** /**
* use normal int to rolling. * use normal int to rolling.
......
package org.skywalking.apm.agent.core.datacarrier; package org.skywalking.apm.commons.datacarrier;
import org.skywalking.apm.agent.core.datacarrier.buffer.Buffer; import java.util.List;
import org.skywalking.apm.agent.core.datacarrier.buffer.BufferStrategy;
import org.skywalking.apm.agent.core.datacarrier.buffer.Channels;
import org.skywalking.apm.agent.core.datacarrier.consumer.IConsumer;
import org.skywalking.apm.agent.core.datacarrier.partition.ProducerThreadPartitioner;
import org.skywalking.apm.agent.core.datacarrier.partition.SimpleRollingPartitioner;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.powermock.api.support.membermodification.MemberModifier; import org.powermock.api.support.membermodification.MemberModifier;
import org.skywalking.apm.commons.datacarrier.buffer.Buffer;
import java.util.List; import org.skywalking.apm.commons.datacarrier.buffer.BufferStrategy;
import org.skywalking.apm.commons.datacarrier.buffer.Channels;
import org.skywalking.apm.commons.datacarrier.consumer.IConsumer;
import org.skywalking.apm.commons.datacarrier.partition.ProducerThreadPartitioner;
import org.skywalking.apm.commons.datacarrier.partition.SimpleRollingPartitioner;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier; package org.skywalking.apm.commons.datacarrier;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.agent.core.datacarrier.common; package org.skywalking.apm.commons.datacarrier.common;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import static org.junit.Assert.*;
/** /**
* Created by wusheng on 2016/10/25. * Created by xin on 2017/7/14.
*/ */
public class AtomicRangeIntegerTest { public class AtomicRangeIntegerTest {
@Test @Test
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.powermock.api.support.membermodification.MemberModifier; import org.powermock.api.support.membermodification.MemberModifier;
import org.skywalking.apm.agent.core.datacarrier.SampleData; import org.skywalking.apm.commons.datacarrier.SampleData;
import org.skywalking.apm.agent.core.datacarrier.buffer.BufferStrategy; import org.skywalking.apm.commons.datacarrier.buffer.BufferStrategy;
import org.skywalking.apm.agent.core.datacarrier.buffer.Channels; import org.skywalking.apm.commons.datacarrier.buffer.Channels;
import org.skywalking.apm.agent.core.datacarrier.partition.SimpleRollingPartitioner; import org.skywalking.apm.commons.datacarrier.partition.SimpleRollingPartitioner;
/** /**
* Created by wusheng on 2016/10/26. * Created by wusheng on 2016/10/26.
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashSet; import java.util.HashSet;
...@@ -7,8 +7,8 @@ import java.util.concurrent.LinkedBlockingQueue; ...@@ -7,8 +7,8 @@ import java.util.concurrent.LinkedBlockingQueue;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.powermock.api.support.membermodification.MemberModifier; import org.powermock.api.support.membermodification.MemberModifier;
import org.skywalking.apm.agent.core.datacarrier.DataCarrier; import org.skywalking.apm.commons.datacarrier.DataCarrier;
import org.skywalking.apm.agent.core.datacarrier.SampleData; import org.skywalking.apm.commons.datacarrier.SampleData;
/** /**
* Created by wusheng on 2016/10/26. * Created by wusheng on 2016/10/26.
......
package org.skywalking.apm.agent.core.datacarrier.consumer; package org.skywalking.apm.commons.datacarrier.consumer;
import java.util.List; import java.util.List;
import org.skywalking.apm.agent.core.datacarrier.SampleData; import org.skywalking.apm.commons.datacarrier.SampleData;
/** /**
* Created by wusheng on 2016/10/26. * Created by wusheng on 2016/10/26.
......
package org.skywalking.apm.agent.core.datacarrier.partition; package org.skywalking.apm.commons.datacarrier.partition;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.skywalking.apm.agent.core.datacarrier.SampleData; import org.skywalking.apm.commons.datacarrier.SampleData;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
*/ */
public class ProducerThreadPartitionerTest { public class ProducerThreadPartitionerTest {
@Test @Test
public void testPartition(){ public void testPartition() {
int partitionNum = (int)Thread.currentThread().getId() % 10; int partitionNum = (int)Thread.currentThread().getId() % 10;
ProducerThreadPartitioner<SampleData> partitioner = new ProducerThreadPartitioner<SampleData>(); ProducerThreadPartitioner<SampleData> partitioner = new ProducerThreadPartitioner<SampleData>();
Assert.assertEquals(partitioner.partition(10, new SampleData()), partitionNum); Assert.assertEquals(partitioner.partition(10, new SampleData()), partitionNum);
......
package org.skywalking.apm.agent.core.datacarrier.partition; package org.skywalking.apm.commons.datacarrier.partition;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.skywalking.apm.agent.core.datacarrier.SampleData; import org.skywalking.apm.commons.datacarrier.SampleData;
/** /**
* Created by wusheng on 2016/10/25. * Created by wusheng on 2016/10/25.
......
package org.skywalking.apm.logging.log4j2;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.skywalking.apm.logging.ILog;
/**
* @author wusheng
*/
public class Log4j2Logger implements ILog {
private Logger delegateLogger;
Log4j2Logger(Class<?> targetClass) {
delegateLogger = LogManager.getFormatterLogger(targetClass);
}
@Override
public void info(String format) {
delegateLogger.info(format);
}
@Override
public void info(String format, Object... arguments) {
delegateLogger.info(format, arguments);
}
@Override
public void warn(String format, Object... arguments) {
delegateLogger.warn(format, arguments);
}
@Override
public void error(String format, Throwable e) {
delegateLogger.error(format, e);
}
@Override
public void error(Throwable e, String format, Object... arguments) {
delegateLogger.error(format, e, arguments);
}
@Override
public boolean isDebugEnable() {
return delegateLogger.isDebugEnabled();
}
@Override
public boolean isInfoEnable() {
return delegateLogger.isInfoEnabled();
}
@Override
public boolean isWarnEnable() {
return delegateLogger.isWarnEnabled();
}
@Override
public boolean isErrorEnable() {
return delegateLogger.isErrorEnabled();
}
@Override
public void debug(String format) {
delegateLogger.debug(format);
}
@Override
public void debug(String format, Object... arguments) {
delegateLogger.debug(format, arguments);
}
@Override
public void error(String format) {
delegateLogger.error(format);
}
}
package org.skywalking.apm.logging.log4j2;
import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogResolver;
/**
* The <code>LogResolver</code> is an implementation of {@link LogResolver},
*
* @author wusheng
*/
public class Log4j2Resolver implements LogResolver {
@Override
public ILog getLogger(Class<?> clazz) {
return new Log4j2Logger(clazz);
}
}
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<modules> <modules>
<module>apm-util</module> <module>apm-util</module>
<module>apm-logging-api</module> <module>apm-logging-api</module>
<module>apm-logging-log4j2</module> <module>apm-datacarrier</module>
</modules> </modules>
<name>apm-commons</name> <name>apm-commons</name>
......
...@@ -95,6 +95,11 @@ ...@@ -95,6 +95,11 @@
</exclusions> </exclusions>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>org.skywalking</groupId>
<artifactId>apm-datacarrier</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
<extensions> <extensions>
......
...@@ -8,9 +8,9 @@ import org.skywalking.apm.agent.core.boot.ServiceManager; ...@@ -8,9 +8,9 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext; import org.skywalking.apm.agent.core.context.TracingContext;
import org.skywalking.apm.agent.core.context.TracingContextListener; import org.skywalking.apm.agent.core.context.TracingContextListener;
import org.skywalking.apm.agent.core.context.trace.TraceSegment; import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.agent.core.datacarrier.DataCarrier; import org.skywalking.apm.commons.datacarrier.DataCarrier;
import org.skywalking.apm.agent.core.datacarrier.buffer.BufferStrategy; import org.skywalking.apm.commons.datacarrier.buffer.BufferStrategy;
import org.skywalking.apm.agent.core.datacarrier.consumer.IConsumer; import org.skywalking.apm.commons.datacarrier.consumer.IConsumer;
import org.skywalking.apm.logging.ILog; import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogManager; import org.skywalking.apm.logging.LogManager;
import org.skywalking.apm.network.proto.Downstream; import org.skywalking.apm.network.proto.Downstream;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册