1
+ # ###############################################################################
2
+ # Licensed to the Apache Software Foundation (ASF) under one
3
+ # or more contributor license agreements. See the NOTICE file
4
+ # distributed with this work for additional information
5
+ # regarding copyright ownership. The ASF licenses this file
6
+ # to you under the Apache License, Version 2.0 (the
7
+ # "License"); you may not use this file except in compliance
8
+ # with the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ # ###############################################################################
18
+
19
+ # The minimum amount of time, in seconds, that must elapse before the file configuration is checked for changes.
20
+ monitorInterval = 60
21
+
22
+ property.file_path = ${sys:seatunnel.logs.path:-/tmp/seatunnel/logs}
23
+ property.file_name = ${sys:seatunnel.logs.file_name:-seatunnel}
24
+ property.file_split_size = 100MB
25
+ property.file_count = 100
26
+ property.file_ttl = 7d
27
+
28
+ rootLogger.level = INFO
29
+
30
+ logger.zeta.name =org.apache.seatunnel.engine
31
+ logger.zeta.level =INFO
32
+
33
+ logger.debezium.name =io.debezium.connector
34
+ logger.debezium.level =WARN
35
+
36
+ # ########################### log output to console #############################
37
+ rootLogger.appenderRef.consoleStdout.ref = consoleStdoutAppender
38
+ rootLogger.appenderRef.consoleStderr.ref = consoleStderrAppender
39
+ # ########################### log output to console #############################
40
+ # ########################### log output to file #############################
41
+ # rootLogger.appenderRef.file.ref = fileAppender
42
+ # ########################### log output to file #############################
43
+
44
+ appender.consoleStdout.name = consoleStdoutAppender
45
+ appender.consoleStdout.type = CONSOLE
46
+ appender.consoleStdout.target = SYSTEM_OUT
47
+ appender.consoleStdout.layout.type = PatternLayout
48
+ appender.consoleStdout.layout.pattern = [%X{ST-JID}] %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%-30.30c{1.}] [%t] - %m%n
49
+ appender.consoleStdout.filter.acceptLtWarn.type = ThresholdFilter
50
+ appender.consoleStdout.filter.acceptLtWarn.level = WARN
51
+ appender.consoleStdout.filter.acceptLtWarn.onMatch = DENY
52
+ appender.consoleStdout.filter.acceptLtWarn.onMismatch = ACCEPT
53
+
54
+ appender.consoleStderr.name = consoleStderrAppender
55
+ appender.consoleStderr.type = CONSOLE
56
+ appender.consoleStderr.target = SYSTEM_ERR
57
+ appender.consoleStderr.layout.type = PatternLayout
58
+ appender.consoleStderr.layout.pattern = [%X{ST-JID}] %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%-30.30c{1.}] [%t] - %m%n
59
+ appender.consoleStderr.filter.acceptGteWarn.type = ThresholdFilter
60
+ appender.consoleStderr.filter.acceptGteWarn.level = WARN
61
+ appender.consoleStderr.filter.acceptGteWarn.onMatch = ACCEPT
62
+ appender.consoleStderr.filter.acceptGteWarn.onMismatch = DENY
63
+
64
+ appender.routing.name = routingAppender
65
+ appender.routing.type = Routing
66
+ appender.routing.purge.type = IdlePurgePolicy
67
+ appender.routing.purge.timeToLive = 60
68
+ appender.routing.route.type = Routes
69
+ appender.routing.route.pattern = $${ctx:ST-JID}
70
+ appender.routing.route.system.type = Route
71
+ appender.routing.route.system.key = $${ctx:ST-JID}
72
+ appender.routing.route.system.ref = fileAppender
73
+ appender.routing.route.job.type = Route
74
+ appender.routing.route.job.appender.type = File
75
+ appender.routing.route.job.appender.name = job-${ctx:ST-JID}
76
+ appender.routing.route.job.appender.fileName = ${file_path}/job-${ctx:ST-JID}.log
77
+ appender.routing.route.job.appender.layout.type = PatternLayout
78
+ appender.routing.route.job.appender.layout.pattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%-30.30c{1.}] [%t] - %m%n
79
+
80
+ appender.file.name = fileAppender
81
+ appender.file.type = RollingFile
82
+ appender.file.fileName = ${file_path}/${file_name}.log
83
+ appender.file.filePattern = ${file_path}/${file_name}.log.%d{yyyy-MM-dd}-%i
84
+ appender.file.append = true
85
+ appender.file.layout.type = PatternLayout
86
+ appender.file.layout.pattern = [%X{ST-JID}] %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%-30.30c{1.}] [%t] - %m%n
87
+ appender.file.policies.type = Policies
88
+ appender.file.policies.time.type = TimeBasedTriggeringPolicy
89
+ appender.file.policies.time.modulate = true
90
+ appender.file.policies.size.type = SizeBasedTriggeringPolicy
91
+ appender.file.policies.size.size = ${file_split_size}
92
+ appender.file.strategy.type = DefaultRolloverStrategy
93
+ appender.file.strategy.fileIndex = nomax
94
+ appender.file.strategy.action.type = Delete
95
+ appender.file.strategy.action.basepath = ${file_path}
96
+ appender.file.strategy.action.maxDepth = 1
97
+ appender.file.strategy.action.condition.type = IfFileName
98
+ appender.file.strategy.action.condition.glob = ${file_name}.log*
99
+ appender.file.strategy.action.condition.nested_condition.type = IfAny
100
+ appender.file.strategy.action.condition.nested_condition.lastModify.type = IfLastModified
101
+ appender.file.strategy.action.condition.nested_condition.lastModify.age = ${file_ttl}
102
+ appender.file.strategy.action.condition.nested_condition.fileCount.type = IfAccumulatedFileCount
103
+ appender.file.strategy.action.condition.nested_condition.fileCount.exceeds = ${file_count}
0 commit comments