Class TLSSyslogAppender

java.lang.Object
ch.qos.logback.core.spi.ContextAwareBase
ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
ch.admin.bag.covidcertificate.log.syslog.TLSSyslogAppender
All Implemented Interfaces:
ch.qos.logback.core.Appender<ch.qos.logback.classic.spi.ILoggingEvent>, ch.qos.logback.core.net.ssl.SSLComponent, ch.qos.logback.core.spi.ContextAware, ch.qos.logback.core.spi.FilterAttachable<ch.qos.logback.classic.spi.ILoggingEvent>, ch.qos.logback.core.spi.LifeCycle

public class TLSSyslogAppender
extends ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
implements ch.qos.logback.core.net.ssl.SSLComponent
A logback appender sending messages using a TLSSyslogConnection via TCP/SSL to a syslog server. The encoder is responsible for providing the message payload understood by the receiving syslog server. When the syslog message transfer is observed to fail, a fallback appender is used to append messages to the log (i.e. a console or file fallback).
  • Field Summary

    Fields inherited from class ch.qos.logback.core.AppenderBase

    name, started

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

    context
  • Constructor Summary

    Constructors
    Constructor Description
    TLSSyslogAppender()  
  • Method Summary

    Modifier and Type Method Description
    protected void append​(ch.qos.logback.classic.spi.ILoggingEvent eventObject)  
    protected TLSSyslogConnection createSyslogConnection​(ch.qos.logback.core.spi.ContextAware contextAware)  
    ch.qos.logback.core.net.ssl.SSLConfiguration getSsl()  
    void setEncoder​(ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> encoder)  
    void setFallback​(FallbackAppenderRef fallback)  
    void setMaxMessageSize​(int maxMessageSize)  
    void setPort​(int port)  
    void setSsl​(ch.qos.logback.core.net.ssl.SSLConfiguration ssl)  
    void setSyslogHost​(String syslogHost)  
    void setTimeoutMillis​(int timeoutMillis)  
    void start()  
    void stop()  
    protected boolean transmit​(byte[] syslogMessage)  

    Methods inherited from class ch.qos.logback.core.AppenderBase

    addFilter, clearAllFilters, doAppend, getCopyOfAttachedFiltersList, getFilterChainDecision, getName, isStarted, setName, toString

    Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase

    addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getDeclaredOrigin, getStatusManager, setContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface ch.qos.logback.core.spi.ContextAware

    addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, setContext
  • Constructor Details

    • TLSSyslogAppender

      public TLSSyslogAppender()
  • Method Details

    • append

      protected void append​(ch.qos.logback.classic.spi.ILoggingEvent eventObject)
      Specified by:
      append in class ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
    • transmit

      protected boolean transmit​(byte[] syslogMessage)
    • start

      public void start()
      Specified by:
      start in interface ch.qos.logback.core.spi.LifeCycle
      Overrides:
      start in class ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
    • stop

      public void stop()
      Specified by:
      stop in interface ch.qos.logback.core.spi.LifeCycle
      Overrides:
      stop in class ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
    • createSyslogConnection

      protected TLSSyslogConnection createSyslogConnection​(ch.qos.logback.core.spi.ContextAware contextAware) throws GeneralSecurityException
      Throws:
      GeneralSecurityException
    • setSyslogHost

      public void setSyslogHost​(String syslogHost)
    • setPort

      public void setPort​(int port)
    • setTimeoutMillis

      public void setTimeoutMillis​(int timeoutMillis)
    • setMaxMessageSize

      public void setMaxMessageSize​(int maxMessageSize)
    • setEncoder

      public void setEncoder​(ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> encoder)
    • setFallback

      public void setFallback​(FallbackAppenderRef fallback)
    • setSsl

      public void setSsl​(ch.qos.logback.core.net.ssl.SSLConfiguration ssl)
      Specified by:
      setSsl in interface ch.qos.logback.core.net.ssl.SSLComponent
    • getSsl

      public ch.qos.logback.core.net.ssl.SSLConfiguration getSsl()
      Specified by:
      getSsl in interface ch.qos.logback.core.net.ssl.SSLComponent