This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 61542cdbd78b82df05a17b66777f5de372e9f624
Author: Mingyu Chen <[email protected]>
AuthorDate: Mon Aug 19 17:48:04 2024 +0800

    [fix](fe-log) add position info in async mode (#39419)
    
    followup #37793
    NORMAL:  sync flush + with location
    ASYNC(default): async flush + with location
    BRIEF: async flush + without location
---
 .../src/main/java/org/apache/doris/common/Config.java      | 14 +++++++-------
 .../src/main/java/org/apache/doris/common/Log4jConfig.java |  9 +++++++--
 2 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java 
b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
index 88be23b1af9..7295edac08f 100644
--- a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
+++ b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
@@ -72,13 +72,13 @@ public class Config extends ConfigBase {
     @ConfField(description = {"FE 日志的级别", "The level of FE log"}, options = 
{"INFO", "WARN", "ERROR", "FATAL"})
     public static String sys_log_level = "INFO";
 
-    @ConfField(description = {"FE 日志的输出模式,其中 NORMAL 模式是日志同步输出且包含位置信息,BRIEF 
模式是日志同步输出"
-                    + "但不包含位置信息,ASYNC 
模式为默认的输出模式,是日志异步输出且不包含位置信息,三种日志输出模式的性能依次递增",
-            "The output mode of FE log, and NORMAL mode means the logs are 
synchronized and contain location "
-                    + "information. BRIEF mode is synchronized and does not 
contain location information. "
-                    + "ASYNC mode is the default output mode, which is 
asynchronous and does not contain "
-                    + "location information. The performance of the three log 
output modes increases in sequence"},
-            options = {"NORMAL", "BRIEF", "ASYNC"})
+    @ConfField(description = {"FE 日志的输出模式,其中 NORMAL 模式是日志同步输出且包含位置信息;ASYNC 
模式为默认模式,日志异步输出"
+            + "且包含位置信息;BRIEF 是日志异步输出但不包含位置信息,三种日志输出模式的性能依次递增",
+            "The output mode of FE log. NORMAL mode is synchronous output with 
location information; "
+                    + "ASYNC mode is the default mode, asynchronous output 
with location information; "
+                    + "BRIEF is asynchronous output without location 
information. "
+                    + "The performance of the three log output modes increases 
in turn"},
+            options = {"NORMAL", "ASYNC", "BRIEF"})
     public static String sys_log_mode = "ASYNC";
 
     @ConfField(description = {"FE 日志文件的最大数量。超过这个数量后,最老的日志文件会被删除",
diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/Log4jConfig.java 
b/fe/fe-core/src/main/java/org/apache/doris/common/Log4jConfig.java
index 5395de076ae..206d1cb2089 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/common/Log4jConfig.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/common/Log4jConfig.java
@@ -298,8 +298,13 @@ public class Log4jConfig extends XmlConfiguration {
         properties.put("warn_sys_accumulated_file_size", 
String.valueOf(Config.warn_sys_accumulated_file_size));
         properties.put("audit_sys_accumulated_file_size", 
String.valueOf(Config.audit_sys_accumulated_file_size));
 
-        properties.put("include_location_flag", 
sysLogMode.equalsIgnoreCase("NORMAL") ? "true" : "false");
-        properties.put("immediate_flush_flag", 
sysLogMode.equalsIgnoreCase("ASYNC") ? "false" : "true");
+        // BRIEF: async, no location
+        // ASYNC: async, with location
+        // NORMAL: sync, with location
+        boolean includeLocation = !sysLogMode.equalsIgnoreCase("BRIEF");
+        boolean immediateFlush = sysLogMode.equalsIgnoreCase("NORMAL");
+        properties.put("include_location_flag", 
Boolean.toString(includeLocation));
+        properties.put("immediate_flush_flag", 
Boolean.toString(immediateFlush));
         properties.put("audit_file_postfix", compressAuditLog ? ".gz" : "");
 
         strSub = new StrSubstitutor(new Interpolator(properties));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to