public class MapEntriesAppendingMarker extends LogstashMarker implements StructuredArgument
Marker
OR StructuredArgument
that appends entries
from a Map
into the logging event output.
When writing to the JSON data (via ArgumentsJsonProvider
or LogstashMarkersJsonProvider
):
String
via String.valueOf(Object)
, and used as field names.ObjectMapper
.
When writing to a String (when used as a StructuredArgument
to the event's formatted message),
String.valueOf(Object)
is used to convert the map to a string.
For example, if the message is "mymessage {}", and map argument contains is
name1= a String "value1",
name2= an Integer 5,
name3= an array containing [1, 2, 3],
name4= a map containing name5=6
Then the message, name1, name2, name3, name4 fields will be added to the json for the logstash event.
For example:
{ "message" : "mymessage [name1=value1,name2=5,name3=[b...,name4=[name5=6]]", "name1" : "value1", "name2" : 5, "name3" : [1, 2, 3], "name4" : { "name5" : 6 } }
Modifier and Type | Field and Description |
---|---|
static String |
MARKER_NAME |
MARKER_NAME_PREFIX
Constructor and Description |
---|
MapEntriesAppendingMarker(Map<?,?> map) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
int |
hashCode() |
String |
toStringSelf()
Returns a string representation of this object, without including any references.
|
void |
writeTo(JsonGenerator generator)
Writes the data associated with this marker to the given
JsonGenerator . |
and, toString, with
add, contains, contains, getName, hasChildren, hasReferences, iterator, remove
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
toString
forEach, iterator, spliterator
public static final String MARKER_NAME
public MapEntriesAppendingMarker(Map<?,?> map)
public void writeTo(JsonGenerator generator) throws IOException
LogstashMarker
JsonGenerator
.writeTo
in interface StructuredArgument
writeTo
in class LogstashMarker
generator
- the generator to which to write the output of this marker.IOException
- if there was an error writing to the generatorpublic String toStringSelf()
LogstashMarker
Subclasses should override LogstashMarker.toStringSelf()
instead of LogstashMarker.toString()
,
since LogstashMarker.toString()
will automatically include the LogstashMarker.toStringSelf()
and references.
toStringSelf
in class LogstashMarker
public boolean equals(Object obj)
equals
in interface org.slf4j.Marker
equals
in class LogstashBasicMarker
public int hashCode()
hashCode
in interface org.slf4j.Marker
hashCode
in class LogstashBasicMarker
Copyright © 2020. All rights reserved.