Class ObjectFieldsAppendingMarker
- All Implemented Interfaces:
Serializable,Iterable<org.slf4j.Marker>,StructuredArgument,org.slf4j.Marker
Marker OR StructuredArgument that
that "unwraps" the given object into the logstash event.
When writing to the JSON data (via ArgumentsJsonProvider or LogstashMarkersJsonProvider),
the fields of the object are written inline into the JSON event
similar to how the JsonUnwrapped annotation works.
When writing to a String (when used as a StructuredArgument to the event's formatted message),
StructuredArguments.toString(Object) is used to convert the object to a string.
For example, if the message is "mymessage {}", and the object argument is:
{
name1 : "value1",
name2 : 5,
name3 : [1, 2, 3],
name4 : {
name5 : 6
}
}
Then the message, name1, name2, name3, name4 fields will be added to the json for the logstash event.
For example:
{
"message" : "mymessage objectsToStringValue",
"name1" : "value1",
"name2" : 5,
"name3" : [1, 2, 3],
"name4" : { "name5" : 6 }
}
Note that if the object cannot be unwrapped, then nothing will be written.- See Also:
-
Field Summary
FieldsFields inherited from class net.logstash.logback.marker.LogstashMarker
MARKER_NAME_PREFIXFields inherited from interface org.slf4j.Marker
ANY_MARKER, ANY_NON_NULL_MARKER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleancontains(org.slf4j.Marker other) booleangetName()booleanDeprecated.inthashCode()booleanIterator<org.slf4j.Marker>iterator()booleanremove(org.slf4j.Marker referenceToRemove) Returns a string representation of this object, without including any references.voidwriteTo(JsonGenerator generator) Writes the data associated with this marker to the givenJsonGenerator.Methods inherited from class net.logstash.logback.marker.LogstashMarker
add, and, toString, withMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, iterator, spliteratorMethods inherited from interface net.logstash.logback.argument.StructuredArgument
toString
-
Field Details
-
MARKER_NAME
- See Also:
-
-
Constructor Details
-
ObjectFieldsAppendingMarker
-
-
Method Details
-
writeTo
Description copied from class:LogstashMarkerWrites the data associated with this marker to the givenJsonGenerator.- Specified by:
writeToin interfaceStructuredArgument- Specified by:
writeToin classLogstashMarker- Parameters:
generator- the generator to which to write the output of this marker.- Throws:
IOException- if there was an error writing to the generator
-
toStringSelf
Description copied from class:LogstashMarkerReturns a string representation of this object, without including any references.Subclasses should override
LogstashMarker.toStringSelf()instead ofLogstashMarker.toString(), sinceLogstashMarker.toString()will automatically include theLogstashMarker.toStringSelf()and references.- Overrides:
toStringSelfin classLogstashMarker- Returns:
- a string representation of this object, without including any references.
-
equals
- Specified by:
equalsin interfaceorg.slf4j.Marker
-
hashCode
public int hashCode()- Specified by:
hashCodein interfaceorg.slf4j.Marker
-
getName
- Specified by:
getNamein interfaceorg.slf4j.Marker
-
hasReferences
public boolean hasReferences()- Specified by:
hasReferencesin interfaceorg.slf4j.Marker
-
hasChildren
Deprecated.- Specified by:
hasChildrenin interfaceorg.slf4j.Marker
-
iterator
- Specified by:
iteratorin interfaceorg.slf4j.Marker
-
remove
public boolean remove(org.slf4j.Marker referenceToRemove) - Specified by:
removein interfaceorg.slf4j.Marker
-
contains
public boolean contains(org.slf4j.Marker other) - Specified by:
containsin interfaceorg.slf4j.Marker
-
contains
- Specified by:
containsin interfaceorg.slf4j.Marker
-