-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy pathlog4j2.properties
100 lines (80 loc) · 4.91 KB
/
log4j2.properties
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
status = info
name = PropertiesConfig
# Define a list of available appenders
appenders = es
# Define Elasticsearch appender
appender.es.name = ${sys:smokeTest.appenderName:-elasticsearch-appender}
appender.es.type = Elasticsearch
# with index 'log4j2-elasticsearch-hc' rolling hourly
appender.es.indexNameFormatter.type = RollingIndexName
appender.es.indexNameFormatter.indexName = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}
appender.es.indexNameFormatter.pattern = yyyy-MM-dd-HH
# with AsyncBatchDelivery every 3 seconds or each 5000 logs
appender.es.batchDelivery.type = AsyncBatchDelivery
appender.es.batchDelivery.batchSize = 5000
appender.es.batchDelivery.deliveryInterval = 3000
# with index template (broken example)
# TL;DR: Use complete index template without components
# Broken as order cannot be guaranteed due to log4j2-core loading this file to java.util.Properties
# As a result, mapping might not be fully configured.
# This bug does not manifest itself with other config methods since property loading methods are not based on java.util.Properties
appender.es.batchDelivery.mappings.type = ComponentTemplate
appender.es.batchDelivery.mappings.name = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}-mappings
appender.es.batchDelivery.mappings.path = classpath:componentTemplate-7-mappings.json
appender.es.batchDelivery.settings.type = ComponentTemplate
appender.es.batchDelivery.settings.name = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}-settings
appender.es.batchDelivery.settings.path = classpath:componentTemplate-7-settings.json
appender.es.batchDelivery.settings-ilm.type = ComponentTemplate
appender.es.batchDelivery.settings-ilm.name = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}-settings-ilm
appender.es.batchDelivery.settings-ilm.path = classpath:componentTemplate-7-settings-ilm.json
appender.es.batchDelivery.index-template.type = IndexTemplate
appender.es.batchDelivery.index-template.name = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}
appender.es.batchDelivery.index-template.path = classpath:composableIndexTemplate-7.json
appender.es.batchDelivery.ilm-policy.type = ILMPolicy
appender.es.batchDelivery.ilm-policy.name = ${sys:smokeTest.indexName:-log4j2-elasticsearch-hc}
appender.es.batchDelivery.ilm-policy.path = classpath:ilmPolicy-7.json
# with HC HTTP client
appender.es.batchDelivery.objectFactory.type = HCHttp
appender.es.batchDelivery.objectFactory.serverUris = https://localhost:9200
appender.es.batchDelivery.objectFactory.connTimeout = 500
appender.es.batchDelivery.objectFactory.readTimeout = 10000
appender.es.batchDelivery.objectFactory.maxTotalConnections = 8
# with buffers for serialized batchRequest objects
appender.es.batchDelivery.objectFactory.itemSourceFactory.type = PooledItemSourceFactory
appender.es.batchDelivery.objectFactory.itemSourceFactory.poolName = logItemPool
appender.es.batchDelivery.objectFactory.itemSourceFactory.itemSizeInBytes = 5120000
appender.es.batchDelivery.objectFactory.itemSourceFactory.initialPoolSize = 2
appender.es.batchDelivery.objectFactory.itemSourceFactory.monitored = true
appender.es.batchDelivery.objectFactory.itemSourceFactory.monitorTaskInterval = 5000
appender.es.batchDelivery.objectFactory.itemSourceFactory.resizeTimeout = 100
# with Security
appender.es.batchDelivery.objectFactory.auth.type = Security
appender.es.batchDelivery.objectFactory.auth.credentials.type = BasicCredentials
appender.es.batchDelivery.objectFactory.auth.credentials.username = admin
appender.es.batchDelivery.objectFactory.auth.credentials.password = changeme
appender.es.batchDelivery.objectFactory.auth.certInfo.type = PEM
appender.es.batchDelivery.objectFactory.auth.certInfo.keyPath=${sys:pemCertInfo.keyPathWithPassphrase}
appender.es.batchDelivery.objectFactory.auth.certInfo.keyPassphrase=${sys:pemCertInfo.keyPassphrase}
appender.es.batchDelivery.objectFactory.auth.certInfo.clientCertPath=${sys:pemCertInfo.clientCertPath}
appender.es.batchDelivery.objectFactory.auth.certInfo.caPath=${sys:pemCertInfo.caPath}
# with JacksonJsonLayout
appender.es.layout.type = JacksonJsonLayout
# with buffers for serialized logs
appender.es.layout.itemSourceFactory.type = PooledItemSourceFactory
appender.es.layout.itemSourceFactory.poolName = batchItemPool
appender.es.layout.itemSourceFactory.itemSizeInBytes = 512
appender.es.layout.itemSourceFactory.initialPoolSize = 10000
appender.es.layout.itemSourceFactory.monitored = true
appender.es.layout.itemSourceFactory.monitorTaskInterval = 5000
appender.es.layout.itemSourceFactory.resizeTimeout = 100
# Define a list of available loggers
loggers = esLogger
# Define named logger
logger.esLogger.name = ${sys:smokeTest.loggerName:-elasticsearch-logger}
logger.esLogger.type = AsyncLogger
logger.esLogger.additivity = false
logger.esLogger.level = info
# with reference to appender configured above
logger.esLogger.appenderRefs = es
logger.esLogger.appenderRef.es.ref = ${sys:smokeTest.appenderName:-elasticsearch-appender}
rootLogger.level = info