Comments (4)
@burning-papaya If you haven't made any progress yet, I think that you might be interested in this. What you described is achievable with Log4j2 params and unwrapping serializers.
from log4j2-elasticsearch.
@burning-papaya I don't see many other options than ThreadContext
tbh.
If you're tied to Log4j2 and need to log these events with other appenders, custom MessageFactory
and mixins for Message
may be a way to go. Otherwise, you can use AsyncBatchDelivery
directly and serialize your own classes instead of LogEvent
.
from log4j2-elasticsearch.
@rfoltyns Thank you, for your reply.
Could you please elaborate on the last sentence (direct usage of AsyncBatchDelivery
with my own class)? I have a class which i have to log, every field has to be written in elasticsearch separately for ease of searching (it's Kotlin data class):
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
data class RequestLog (
@JsonProperty("verb") var verb: String = "",
@JsonProperty("uri") var uri: String = "",
@JsonProperty("query") var query: String = "",
@JsonProperty("body") var body: String = "",
@JsonProperty("io_type") var type: String = "OUT_REQUEST"
)
from log4j2-elasticsearch.
You can use parts of programmatic config test and use this library like this:
asyncBatchDelivery.add(indexName, itemSourceFactory.create(instanceOfYourClass, objectWriter));
ItemSourceFactory
and AsyncBatchDelivery
must be started explicitly in this case.
from log4j2-elasticsearch.
Related Issues (20)
- Supporting ecs-logging-java HOT 8
- Package naming conventions HOT 11
- How to pass the value from ThreadContext to ValueProperty? HOT 3
- Can not log to elastic using log4j2 <PatternLayout> HOT 11
- Support elasticsearch data_streams HOT 6
- Failed to Load StackTraceElementMixIn HOT 22
- InvalidTypeNameException on invalid mappingType in ES 5 HOT 8
- Log4j2 Zero-Day vulnerability (CVE-2021-44228) HOT 2
- Support OpenSearch 2.x and Elasticsearch 8.x HOT 9
- Unable to determine if index already exists HOT 1
- Support for ECSLayout for elasticsearch-ahc and / or elaticsearch-jest in combination with data streams HOT 10
- Is it possible to deseriailze JSON within the message into properties? HOT 2
- Run elastic search appender in specific environment HOT 2
- Logging-Cleaner ERROR Could not create plugin HOT 3
- How do I add mdc attributes? HOT 1
- Could not initialize ChronicleMapRetryFailoverPolicy HOT 2
- ServiceDiscovery ERROR HCServiceDiscovery: Unable to refresh addresses: Cannot invoke "org.appenders.log4j2.elasticsearch.hc.discovery.NodeInfo$PublishAddress.getPublishAddress()" HOT 1
- Using log4j2-elasticsearch-hc -> Does AsyncLogger still not support adding dynamic keyValue pairs in Jackson JSONLayout HOT 5
- IS JacksonModule is implemented in latest version? HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from log4j2-elasticsearch.