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

    Fields inherited from class org.apache.logging.log4j.core.pattern.AbstractPatternConverter

    LOGGER

    Fields inherited from interface org.apache.logging.log4j.core.pattern.PatternConverter

    CATEGORY
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    format(org.apache.logging.log4j.core.LogEvent event, StringBuilder toAppendTo)
    Formats the node.id and cluster.uuid into json fields.
    newInstance(String[] options)
    Called by log4j2 to initialize this converter.
    static void
    setNodeIdAndClusterId(String nodeId, String clusterUUID)
    Updates only once the clusterID and nodeId.

    Methods inherited from class org.apache.logging.log4j.core.pattern.LogEventPatternConverter

    format, handlesThrowable, isVariable

    Methods inherited from class org.apache.logging.log4j.core.pattern.AbstractPatternConverter

    getName, getStyleClass

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NodeAndClusterIdConverter

      public NodeAndClusterIdConverter()
  • Method Details

    • newInstance

      public static NodeAndClusterIdConverter newInstance(String[] options)
      Called by log4j2 to initialize this converter.
    • setNodeIdAndClusterId

      public static void setNodeIdAndClusterId(String nodeId, String clusterUUID)
      Updates only once the clusterID and nodeId. Subsequent executions will throw SetOnce.AlreadySetException.
      Parameters:
      nodeId - a nodeId received from cluster state update
      clusterUUID - a clusterId received from cluster state update
    • format

      public void format(org.apache.logging.log4j.core.LogEvent event, StringBuilder toAppendTo)
      Formats the node.id and cluster.uuid into json fields.
      Specified by:
      format in class org.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