diff --git a/skywalking-log/example/example.iml b/skywalking-log/example/example.iml
new file mode 100644
index 0000000000000000000000000000000000000000..7db0c86ca2ec10f379a2df79dcf427f35595ed2a
--- /dev/null
+++ b/skywalking-log/example/example.iml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/skywalking-log/log4j-1.x-plugin/pom.xml b/skywalking-log/log4j-1.x-plugin/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..88cec53301fd6e871aa4b753267287f9104b4500
--- /dev/null
+++ b/skywalking-log/log4j-1.x-plugin/pom.xml
@@ -0,0 +1,39 @@
+
+
+ skywalking-log
+ com.ai.cloud
+ 1.0-SNAPSHOT
+
+ 4.0.0
+
+ skywalking-log4j-1.x-plugin
+ jar
+
+ log4j-1.x-plugin
+ http://maven.apache.org
+
+
+ UTF-8
+
+
+
+
+ junit
+ junit
+ 3.8.1
+ test
+
+
+ log4j
+ log4j
+ 1.2.17
+ compile
+
+
+ com.ai.cloud
+ skywalking-api
+ 1.0-SNAPSHOT
+
+
+
diff --git a/skywalking-log/log4j-1.x-plugin/src/test/java/com/ai/TestLog.java b/skywalking-log/log4j-1.x-plugin/src/test/java/com/ai/TestLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..a913774d4e4ee5f29e7118f6024c21e8a9fa57da
--- /dev/null
+++ b/skywalking-log/log4j-1.x-plugin/src/test/java/com/ai/TestLog.java
@@ -0,0 +1,10 @@
+package com.ai;
+
+import org.apache.log4j.Logger;
+
+public class TestLog {
+ public static void main(String[] args) {
+ Logger logger = Logger.getLogger(TestLog.class);
+ logger.info("TTTTTTTTTTTTTTTTTTTTTTTT");
+ }
+}
diff --git a/skywalking-log/log4j-1.x-plugin/src/test/resources/log4j.properties b/skywalking-log/log4j-1.x-plugin/src/test/resources/log4j.properties
new file mode 100644
index 0000000000000000000000000000000000000000..72a571f684561cc5ed5c2b9c23c681aa27836387
--- /dev/null
+++ b/skywalking-log/log4j-1.x-plugin/src/test/resources/log4j.properties
@@ -0,0 +1,13 @@
+log4j.rootLogger=INFO, A1
+#log4j.appender.A1=org.apache.log4j.FileAppender
+#log4j.appender.A1.File=${catalina.base}/logs/mvno_crm_all.log
+#log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+#log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss.SSS} %c %n[%p] %n%m%n
+
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+#log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A1.layout=com.ai.cloud.skywalking.plugin.log.log4j.v1.x.TraceIdPatternLayout
+log4j.appender.A1.layout.ConversionPattern=[%x] %-d{yyyy-MM-dd HH:mm:ss.SSS} %c %n[%p] %n%m%n
+
+log4j.logger.com.ailk=DEBUG
+log4j.logger.org.springframework=DEBUG
\ No newline at end of file
diff --git a/skywalking-log/log4j-2.x-plugin/pom.xml b/skywalking-log/log4j-2.x-plugin/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e3f1549cb1800c5e5a4e7e07e1e7d4e88fb79f4f
--- /dev/null
+++ b/skywalking-log/log4j-2.x-plugin/pom.xml
@@ -0,0 +1,38 @@
+
+
+ skywalking-log
+ com.ai.cloud
+ 1.0-SNAPSHOT
+
+ 4.0.0
+
+ skywalking-log4j-2.x-plugin
+ jar
+
+ log4j-2.x-plugin
+ http://maven.apache.org
+
+
+ UTF-8
+
+
+
+
+ junit
+ junit
+ 3.8.1
+ test
+
+
+ com.ai.cloud
+ skywalking-api
+ 1.0-SNAPSHOT
+
+
+ org.apache.logging.log4j
+ log4j-core
+ 2.2
+
+
+
diff --git a/skywalking-log/pom.xml b/skywalking-log/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ae188fe00e901447c4d678426a1b5e03c6c88d1e
--- /dev/null
+++ b/skywalking-log/pom.xml
@@ -0,0 +1,30 @@
+
+ 4.0.0
+
+ com.ai.cloud
+ skywalking-log
+ 1.0-SNAPSHOT
+
+ log4j-1.x-plugin
+ log4j-2.x-plugin
+ example
+
+ pom
+
+ skywalking-log
+ http://maven.apache.org
+
+
+ UTF-8
+
+
+
+
+ junit
+ junit
+ 3.8.1
+ test
+
+
+