Exemple d'appender redis pour log4j2 qui envoie des json_event utilisables par logstash
<RedisAppender name="REDIS" key="rd_xxxxxx_prod" host="vmxxxxxxxxxxxx.hardis.fr" port="6379" password="xxxxxxxxxxxxx" ignoreExceptions="true"> <JsonTemplateLayout eventTemplateUri="classpath:LogstashJsonEventLayoutV1.json" locationInfoEnabled="true"> <EventTemplateAdditionalField key="monchamp1" value="mavaleur1"/> <EventTemplateAdditionalField key="monchamp2" value="mavaleur2"/> <EventTemplateAdditionalField key="monchamp3" value="mavaleur3"/> </JsonTemplateLayout> <RedisConnectionPoolConfig testWhileIdle="true" minEvictableIdleTimeMillis="60000" timeBetweenEvictionRunsMillis="30000" numTestsPerEvictionRun="-1"/> <RedisThrottlerConfig bufferSize="5000" batchSize="50" flushPeriodMillis="2000" maxEventCountPerSecond="unlimited" maxByteCountPerSecond="unlimited" maxErrorCountPerSecond="0.003"/> </RedisAppender>
Pour plus d'information sur les paramètres propres à l'appender redis voir : https://github.com/vy/log4j2-redis-appender
Pour plus d'information sur le JsonTemplateLayout voir : https://logging.apache.org/log4j/2.x/manual/json-template-layout.html