-
Notifications
You must be signed in to change notification settings - Fork 408
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make AbstractJsonPatternParser throw an exception for invalid pattern instead of logging an ERROR status #691
Commits on Oct 29, 2021
-
Refactor PatternLayout support
- PatternLayoutBase creates a new StringBuilder for every event it must serialize causing garbage and unnecessary pressure on the GC. Try to reuse a StringBuilder per thread. - Filtering of empty fields is getting values multiple times from the event which becomes expensive when the value is computed by a PatternLayout. Use Jackson's FilteringJsonGenerator instead. - Make use of the most appropriate JsonGenerator#write() method instead of using writeObject() for "simple" value types. Using writeObject() delegates to the underlying ObjectCode which is slower and produces lot more garbage. - Refactor the code to make it easier to read and understand.
Configuration menu - View commit details
-
Copy full SHA for ec2653e - Browse repository at this point
Copy the full SHA ec2653eView commit details
Commits on Oct 31, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 9286758 - Browse repository at this point
Copy the full SHA 9286758View commit details -
DelegatingNodeWriter is private and used only by OmitEmptyFieldWriter. Suppress the class and move the delegate field directly into the sub-class.
Configuration menu - View commit details
-
Copy full SHA for 92464dd - Browse repository at this point
Copy the full SHA 92464ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 666d169 - Browse repository at this point
Copy the full SHA 666d169View commit details
Commits on Nov 3, 2021
-
Make AbstractJsonPatternParser throw an exception for invalid pattern…
…s instead of logging an ERROR status AbstractJsonPatternParser now throws a JsonPatternException in case of invalid pattern. It is up to the AbstractPatternLayoutJsonProvider to catch the exception, log an error status and decide how it should behave. Invalid PatternLayout formats are now detected and throw a JsonPatternException as well. Detection is done by configuring the PatternLayout instances with a custom Logback context that throws an exception when an ERROR status is logged. The former implementation used to ignore fields with an invalid pattern layout while keeping the other. This results in a partial JSON output with only the valid fields. This behaviour is now changed and the provider reverts to producing nothing in case of bad configuration. These changes address issue #686.
Configuration menu - View commit details
-
Copy full SHA for 414f482 - Browse repository at this point
Copy the full SHA 414f482View commit details -
Revert "Make AbstractJsonPatternParser throw an exception for invalid…
… patterns instead of logging an ERROR status" This reverts commit 414f482. This changes will be committed in a separate branch.
Configuration menu - View commit details
-
Copy full SHA for ba346a8 - Browse repository at this point
Copy the full SHA ba346a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a8eec2 - Browse repository at this point
Copy the full SHA 5a8eec2View commit details -
Make AbstractJsonPatternParser throw an exception for invalid pattern…
…s instead of logging an ERROR status AbstractJsonPatternParser now throws a JsonPatternException in case of invalid pattern. It is up to the AbstractPatternLayoutJsonProvider to catch the exception, log an error status and decide how it should behave. Invalid PatternLayout formats are now detected and throw a JsonPatternException as well. Detection is done by configuring the PatternLayout instances with a custom Logback context that throws an exception when an ERROR status is logged. The former implementation used to ignore fields with an invalid pattern layout while keeping the other. This results in a partial JSON output with only the valid fields. This behaviour is now changed and the provider reverts to producing nothing in case of bad configuration. These changes address issue #686.
Configuration menu - View commit details
-
Copy full SHA for 670d334 - Browse repository at this point
Copy the full SHA 670d334View commit details -
Configuration menu - View commit details
-
Copy full SHA for 35759d0 - Browse repository at this point
Copy the full SHA 35759d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f980a0 - Browse repository at this point
Copy the full SHA 2f980a0View commit details
Commits on Nov 4, 2021
-
Configuration menu - View commit details
-
Copy full SHA for a9fc7be - Browse repository at this point
Copy the full SHA a9fc7beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9bffffe - Browse repository at this point
Copy the full SHA 9bffffeView commit details
Commits on Nov 6, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 0930779 - Browse repository at this point
Copy the full SHA 0930779View commit details
Commits on Nov 8, 2021
-
Make 'operation' a standard java Function accepting a String as input.
- Make 'operation' a standard java Function accepting a String as input. - Build the LayoutValueGetter outside of the operation factory
Configuration menu - View commit details
-
Copy full SHA for 38aeadb - Browse repository at this point
Copy the full SHA 38aeadbView commit details