Skip to content

Commit fd2e740

Browse files
committed
add fluent multi line parser
1 parent 3d5a0e2 commit fd2e740

File tree

3 files changed

+17
-4
lines changed

3 files changed

+17
-4
lines changed

dongtai-agent/src/main/java/io/dongtai/iast/agent/LogCollector.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,15 @@ public static void extractFluent() {
2222
}
2323
try {
2424
if (!isMacOs() && !isWindows()) {
25+
String agentId = String.valueOf(AgentRegisterReport.getAgentId());
26+
FLUENT_FILE_CONF = IastProperties.getInstance().getTmpDir() + "fluent-" + agentId + ".conf";
27+
FileUtils.getResourceToFile("bin/fluent.conf", FLUENT_FILE_CONF);
28+
FileUtils.confReplace(FLUENT_FILE_CONF);
29+
30+
String multiParserFile = IastProperties.getInstance().getTmpDir() + "parsers_multiline.conf";
31+
FileUtils.getResourceToFile("bin/parsers_multiline.conf", multiParserFile);
32+
FileUtils.confReplace(multiParserFile);
33+
2534
FLUENT_FILE = IastProperties.getInstance().getTmpDir() + "fluent";
2635
File f = new File(FLUENT_FILE);
2736
if (f.exists()) {
@@ -34,10 +43,6 @@ public static void extractFluent() {
3443
FileUtils.getResourceToFile("bin/fluent", FLUENT_FILE);
3544
}
3645

37-
String agentId = String.valueOf(AgentRegisterReport.getAgentId());
38-
FLUENT_FILE_CONF = IastProperties.getInstance().getTmpDir() + "fluent-" + agentId + ".conf";
39-
FileUtils.getResourceToFile("bin/fluent.conf", FLUENT_FILE_CONF);
40-
FileUtils.confReplace(FLUENT_FILE_CONF);
4146
if (!(new File(FLUENT_FILE)).setExecutable(true)) {
4247
DongTaiLog.warn(ErrorCode.FLUENT_SET_EXECUTABLE_FAILED, FLUENT_FILE);
4348
}

dongtai-agent/src/main/resources/bin/fluent.conf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
Daemon OFF
44
Log_Level error
55
HTTP_Server Off
6+
parsers_file parsers_multiline.conf
67
[INPUT]
78
Name tail
89
Path ${LOG_PATH}
@@ -13,6 +14,7 @@
1314
Buffer_Max_Size 16MB
1415
Skip_Long_Lines On
1516
Read_from_Head true
17+
multiline.parser multiline-regex-test
1618
[FILTER]
1719
Name record_modifier
1820
Match *
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
[MULTILINE_PARSER]
2+
name multiline-regex-test
3+
type regex
4+
flush_timeout 1000
5+
rule "start_state" "/(\d+\d+\-\d+\-\d+ \d+\:\d+\:\d+)(.*)/" "cont"
6+
rule "cont" "/(^\s+at.*|^Caused.*|^\s+\.\.\..*)/" "cont"

0 commit comments

Comments
 (0)