You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by ke...@apache.org on 2021/12/22 16:16:05 UTC
[dolphinscheduler] 01/09: add logger server in the standalone server
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 <zh...@163.com>
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>