Class StackdriverJsonLayout

  • All Implemented Interfaces:
    ch.qos.logback.core.Layout<ch.qos.logback.classic.spi.ILoggingEvent>, ch.qos.logback.core.spi.ContextAware, ch.qos.logback.core.spi.LifeCycle

    public class StackdriverJsonLayout
    extends ch.qos.logback.contrib.json.classic.JsonLayout
    Logback JsonLayout class to include tracing and other MDC fields.
    Since:
    3.2.0
    Author:
    Vinicius Carvalho
    • Field Summary

      • Fields inherited from class ch.qos.logback.contrib.json.classic.JsonLayout

        CONTEXT_ATTR_NAME, EXCEPTION_ATTR_NAME, FORMATTED_MESSAGE_ATTR_NAME, includeContextName, includeException, includeFormattedMessage, includeLevel, includeLoggerName, includeMDC, includeMessage, includeThreadName, LEVEL_ATTR_NAME, LOGGER_ATTR_NAME, MDC_ATTR_NAME, MESSAGE_ATTR_NAME, THREAD_ATTR_NAME, TIMESTAMP_ATTR_NAME
      • Fields inherited from class ch.qos.logback.contrib.json.JsonLayoutBase

        appendLineSeparator, CONTENT_TYPE, includeTimestamp, jsonFormatter, timestampFormat, timestampFormatTimezoneId
      • Fields inherited from class ch.qos.logback.core.LayoutBase

        started
      • Fields inherited from class ch.qos.logback.core.spi.ContextAwareBase

        context
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.lang.String formatTraceId​(java.lang.String traceId)
      Formats traceId to be exact 32 digits.
      java.util.Map<java.lang.String,​java.lang.Object> getCustomJson()  
      java.lang.String getProjectId()  
      boolean isIncludeExceptionInMessage()  
      boolean isIncludeSpanId()  
      boolean isIncludeTraceId()  
      void setCustomJson​(java.util.Map<java.lang.String,​java.lang.Object> customJson)  
      void setIncludeExceptionInMessage​(boolean includeExceptionInMessage)  
      void setIncludeSpanId​(boolean includeSpanId)  
      void setIncludeTraceId​(boolean includeTraceId)  
      void setProjectId​(java.lang.String projectId)  
      void start()  
      protected java.util.Map<java.lang.String,​java.lang.Object> toJsonMap​(ch.qos.logback.classic.spi.ILoggingEvent event)
      Convert a logging event into a Map.
      • Methods inherited from class ch.qos.logback.contrib.json.classic.JsonLayout

        addCustomDataToJsonMap, addThrowableInfo, getThrowableProxyConverter, isIncludeContextName, isIncludeException, isIncludeFormattedMessage, isIncludeLevel, isIncludeLoggerName, isIncludeMDC, isIncludeMessage, isIncludeThreadName, setIncludeContextName, setIncludeException, setIncludeFormattedMessage, setIncludeLevel, setIncludeLoggerName, setIncludeMDC, setIncludeMessage, setIncludeThreadName, setThrowableProxyConverter, stop
      • Methods inherited from class ch.qos.logback.contrib.json.JsonLayoutBase

        add, addMap, addTimestamp, createDateFormat, doLayout, format, formatTimestamp, getContentType, getJsonFormatter, getTimestampFormat, getTimestampFormatTimezoneId, isAppendLineSeparator, isIncludeTimestamp, setAppendLineSeparator, setIncludeTimestamp, setJsonFormatter, setTimestampFormat, setTimestampFormatTimezoneId
      • Methods inherited from class ch.qos.logback.core.LayoutBase

        getContext, getFileFooter, getFileHeader, getPresentationFooter, getPresentationHeader, isStarted, setContext, setFileFooter, setFileHeader, setPresentationFooter, setPresentationHeader
      • Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase

        addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getDeclaredOrigin, getStatusManager
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface ch.qos.logback.core.spi.ContextAware

        addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn
    • Constructor Detail

      • StackdriverJsonLayout

        public StackdriverJsonLayout()
    • Method Detail

      • start

        public void start()
        Specified by:
        start in interface ch.qos.logback.core.spi.LifeCycle
        Overrides:
        start in class ch.qos.logback.contrib.json.classic.JsonLayout
      • toJsonMap

        protected java.util.Map<java.lang.String,​java.lang.Object> toJsonMap​(ch.qos.logback.classic.spi.ILoggingEvent event)
        Convert a logging event into a Map.
        Overrides:
        toJsonMap in class ch.qos.logback.contrib.json.classic.JsonLayout
        Parameters:
        event - the logging event
        Returns:
        the map which should get rendered as JSON
      • formatTraceId

        protected java.lang.String formatTraceId​(java.lang.String traceId)
        Formats traceId to be exact 32 digits.
        Parameters:
        traceId -
        Returns:
        formated tracedId
      • getProjectId

        public java.lang.String getProjectId()
        Returns:
        the project Id
      • setProjectId

        public void setProjectId​(java.lang.String projectId)
        Parameters:
        projectId - to set
      • isIncludeTraceId

        public boolean isIncludeTraceId()
        Returns:
        should trace id be included
      • setIncludeTraceId

        public void setIncludeTraceId​(boolean includeTraceId)
        Parameters:
        includeTraceId - sets traceId inclusion
      • isIncludeSpanId

        public boolean isIncludeSpanId()
        Returns:
        SpanId is included
      • setIncludeSpanId

        public void setIncludeSpanId​(boolean includeSpanId)
        Parameters:
        includeSpanId - sets include span id
      • isIncludeExceptionInMessage

        public boolean isIncludeExceptionInMessage()
        Returns:
        include message in exception
      • setIncludeExceptionInMessage

        public void setIncludeExceptionInMessage​(boolean includeExceptionInMessage)
        Parameters:
        includeExceptionInMessage - includeExceptionInMessage
      • getCustomJson

        public java.util.Map<java.lang.String,​java.lang.Object> getCustomJson()
        Returns:
        customJson
      • setCustomJson

        public void setCustomJson​(java.util.Map<java.lang.String,​java.lang.Object> customJson)
        Parameters:
        customJson - sets CustomJson Map