This is an automated email from the ASF dual-hosted git repository. kezhenxu94 pushed a commit to branch pull/heads/7481 in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
commit ac39725172a26617a27f64469c016875d36b54d0 Author: zhuangchong <[email protected]> AuthorDate: Sat Dec 18 14:17:19 2021 +0800 add logger server in the standalone server --- dolphinscheduler-standalone-server/pom.xml | 5 + .../apache/dolphinscheduler/StandaloneServer.java | 4 +- .../src/main/resources/logback-spring.xml | 103 ++++++++++++++++++++- pom.xml | 5 + 4 files changed, 115 insertions(+), 2 deletions(-) diff --git a/dolphinscheduler-standalone-server/pom.xml b/dolphinscheduler-standalone-server/pom.xml index 6f854d5..4c4b2fd 100644 --- a/dolphinscheduler-standalone-server/pom.xml +++ b/dolphinscheduler-standalone-server/pom.xml @@ -46,6 +46,11 @@ </dependency> <dependency> + <groupId>org.apache.dolphinscheduler</groupId> + <artifactId>dolphinscheduler-log-server</artifactId> + </dependency> + + <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-test</artifactId> <version>${curator.test}</version> diff --git a/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/StandaloneServer.java b/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/StandaloneServer.java index 13e1ea0..ac87a8a 100644 --- a/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/StandaloneServer.java +++ b/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/StandaloneServer.java @@ -17,6 +17,8 @@ package org.apache.dolphinscheduler; +import org.apache.dolphinscheduler.server.log.LoggerServer; + import org.apache.curator.test.TestingServer; import org.springframework.boot.SpringApplication; @@ -27,7 +29,7 @@ public class StandaloneServer { public static void main(String[] args) throws Exception { final TestingServer server = new TestingServer(true); System.setProperty("registry.zookeeper.connect-string", server.getConnectString()); - + new LoggerServer().start(); SpringApplication.run(StandaloneServer.class, args); } } diff --git a/dolphinscheduler-standalone-server/src/main/resources/logback-spring.xml b/dolphinscheduler-standalone-server/src/main/resources/logback-spring.xml index 95fb54e..abed0f1 100644 --- a/dolphinscheduler-standalone-server/src/main/resources/logback-spring.xml +++ b/dolphinscheduler-standalone-server/src/main/resources/logback-spring.xml @@ -17,6 +17,8 @@ --> <configuration scan="true" scanPeriod="120 seconds"> + <property name="log.base" value="logs"/> + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern> @@ -26,11 +28,110 @@ </encoder> </appender> + <!-- api log --> + <appender name="APILOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.base}/dolphinscheduler-api.log</file> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>INFO</level> + </filter> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${log.base}/dolphinscheduler-api.%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> + <maxHistory>168</maxHistory> + <maxFileSize>64MB</maxFileSize> + </rollingPolicy> + <encoder> + <pattern> + [%level] %date{yyyy-MM-dd HH:mm:ss.SSS} %logger{96}:[%line] - %msg%n + </pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + <logger name="org.apache.zookeeper" level="WARN"/> <logger name="org.apache.hbase" level="WARN"/> <logger name="org.apache.hadoop" level="WARN"/> + <!-- alert log --> + <appender name="ALERTLOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.base}/dolphinscheduler-alert.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${log.base}/dolphinscheduler-alert.%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> + <maxHistory>20</maxHistory> + <maxFileSize>64MB</maxFileSize> + </rollingPolicy> + <encoder> + <pattern> + [%level] %date{yyyy-MM-dd HH:mm:ss.SSS} %logger{96}:[%line] - %msg%n + </pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + + <conversionRule conversionWord="messsage" + converterClass="org.apache.dolphinscheduler.server.log.SensitiveDataConverter"/> + <appender name="TASKLOGFILE" class="ch.qos.logback.classic.sift.SiftingAppender"> + <filter class="org.apache.dolphinscheduler.server.log.TaskLogFilter"/> + <Discriminator class="org.apache.dolphinscheduler.server.log.TaskLogDiscriminator"> + <key>taskAppId</key> + <logBase>${log.base}</logBase> + </Discriminator> + <sift> + <appender name="FILE-${taskAppId}" class="ch.qos.logback.core.FileAppender"> + <file>${log.base}/${taskAppId}.log</file> + <encoder> + <pattern> + [%level] %date{yyyy-MM-dd HH:mm:ss.SSS} %logger{96}:[%line] - %messsage%n + </pattern> + <charset>UTF-8</charset> + </encoder> + <append>true</append> + </appender> + </sift> + </appender> + + <!-- master log --> + <appender name="MASTERLOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.base}/dolphinscheduler-master.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${log.base}/dolphinscheduler-master.%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> + <maxHistory>168</maxHistory> + <maxFileSize>200MB</maxFileSize> + </rollingPolicy> + <encoder> + <pattern> + [%level] %date{yyyy-MM-dd HH:mm:ss.SSS} %logger{96}:[%line] - %msg%n + </pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + + <!-- worker log --> + <appender name="WORKERLOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <file>${log.base}/dolphinscheduler-worker.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> + <fileNamePattern>${log.base}/dolphinscheduler-worker.%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> + <maxHistory>168</maxHistory> + <maxFileSize>200MB</maxFileSize> + </rollingPolicy> + <encoder> + <pattern> + [%level] %date{yyyy-MM-dd HH:mm:ss.SSS} %logger{96}:[%line] - %msg%n + </pattern> + <charset>UTF-8</charset> + </encoder> + </appender> + <root level="INFO"> - <appender-ref ref="STDOUT"/> + <if condition="${DOCKER:-false}"> + <then> + <appender-ref ref="STDOUT"/> + </then> + </if> + <appender-ref ref="APILOGFILE"/> + <appender-ref ref="ALERTLOGFILE"/> + <appender-ref ref="TASKLOGFILE"/> + <appender-ref ref="MASTERLOGFILE"/> + <appender-ref ref="WORKERLOGFILE"/> </root> + </configuration> diff --git a/pom.xml b/pom.xml index ead2079..8060ddc 100644 --- a/pom.xml +++ b/pom.xml @@ -242,6 +242,11 @@ </dependency> <dependency> <groupId>org.apache.dolphinscheduler</groupId> + <artifactId>dolphinscheduler-log-server</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.apache.dolphinscheduler</groupId> <artifactId>dolphinscheduler-standalone-server</artifactId> <version>${project.version}</version> </dependency>
