Package org.elasticsearch.common.logging
Class NodeAndClusterIdConverter
java.lang.Object
org.apache.logging.log4j.core.pattern.AbstractPatternConverter
org.apache.logging.log4j.core.pattern.LogEventPatternConverter
org.elasticsearch.common.logging.NodeAndClusterIdConverter
- All Implemented Interfaces:
org.apache.logging.log4j.core.pattern.PatternConverter
@Plugin(category="Converter",
name="NodeAndClusterIdConverter")
public final class NodeAndClusterIdConverter
extends org.apache.logging.log4j.core.pattern.LogEventPatternConverter
Pattern converter to format the node_and_cluster_id variable into JSON fields
node.id
and cluster.uuid
.
Keeping those two fields together assures that they will be atomically set and become visible in logs at the same time.-
Field Summary
-
Constructor Summary
Constructors Constructor Description NodeAndClusterIdConverter()
-
Method Summary
Modifier and Type Method Description void
format(org.apache.logging.log4j.core.LogEvent event, java.lang.StringBuilder toAppendTo)
Formats the node.id and cluster.uuid into json fields.static NodeAndClusterIdConverter
newInstance(java.lang.String[] options)
Called by log4j2 to initialize this converter.static void
setNodeIdAndClusterId(java.lang.String nodeId, java.lang.String clusterUUID)
Updates only once the clusterID and nodeId.Methods inherited from class org.apache.logging.log4j.core.pattern.LogEventPatternConverter
format, handlesThrowable, isVariable
-
Constructor Details
-
NodeAndClusterIdConverter
public NodeAndClusterIdConverter()
-
-
Method Details
-
newInstance
Called by log4j2 to initialize this converter. -
setNodeIdAndClusterId
public static void setNodeIdAndClusterId(java.lang.String nodeId, java.lang.String clusterUUID)Updates only once the clusterID and nodeId. Subsequent executions will throwSetOnce.AlreadySetException
.- Parameters:
nodeId
- a nodeId received from cluster state updateclusterUUID
- a clusterId received from cluster state update
-
format
public void format(org.apache.logging.log4j.core.LogEvent event, java.lang.StringBuilder toAppendTo)Formats the node.id and cluster.uuid into json fields.- Specified by:
format
in classorg.apache.logging.log4j.core.pattern.LogEventPatternConverter
- Parameters:
event
- - a log event is ignored in this method as it uses the nodeId and clusterId to format
-