クラス AmqpAppender
java.lang.ObjectSE
ch.qos.logback.core.spi.ContextAwareBase
ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
org.springframework.amqp.rabbit.logback.AmqpAppender
- 実装されているすべてのインターフェース:
ch.qos.logback.core.Appender<ch.qos.logback.classic.spi.ILoggingEvent>、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 AmqpAppender
extends ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>
ロギングイベントを AMQP Exchange に発行する Logback アペンダー。
すべてのオプションがデフォルトに設定された、完全に構成された AmqpAppender は次のようになります。
<appender name="AMQP" class="org.springframework.amqp.rabbit.logback.AmqpAppender">
<layout>
<pattern><![CDATA[ %d %p %t [%c] - <%m>%n ]]></pattern>
</layout>
<!-- <abbreviation>36</abbreviation --> <!-- no category abbreviation by default -->
<applicationId>AmqpAppenderTest</applicationId>
<routingKeyPattern>%property{applicationId}.%c.%p</routingKeyPattern>
<generateId>true</generateId>
<charset>UTF-8</charset>
<durable>false</durable>
<deliveryMode>NON_PERSISTENT</deliveryMode>
</appender>
- 導入:
- 1.4
- 作成者:
- Artem Bilan, Gary Russell, Stephen Oakey, Dominique Villard, Nicolas Ristock, Eugene Gusev, Wayne Chu
ネストされたクラスの要約
ネストされたクラス修飾子と型クラス説明protected static classLoggingEvent、その MDC プロパティ、および再試行回数をカプセル化する小さなヘルパークラス。protected class実際に LoggingEvents を非同期で送信するためのヘルパークラス。フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSEメッセージプロパティ内のアプリケーション ID のキー名 (appender 構成で設定されている場合)。static final StringSEメッセージプロパティのロガーレベル名のキー名static final StringSEメッセージプロパティのロガーカテゴリ名のキー名static final StringSEメッセージプロパティのスレッド名のキー名。クラス ch.qos.logback.core.AppenderBase から継承されたフィールド
name, startedコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected voidappend(ch.qos.logback.classic.spi.ILoggingEvent event) protected voidRabbitConnectionFactoryBeanを構成します。protected BlockingQueueSE<AmqpAppender.Event> サブクラスは、このメソッドをオーバーライドして、カスタムキューの実装を挿入できます。protected @Nullable com.rabbitmq.client.ConnectionFactoryConnectionFactoryを作成します。@Nullable StringSE@Nullable StringSE@Nullable StringSE@Nullable StringSE@Nullable ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> @Nullable StringSEgetHost()@Nullable StringSE@Nullable StringSEint@Nullable StringSE@Nullable IntegerSEgetPort()int送信待ちのイベント数を返します。@Nullable StringSEint@Nullable StringSE@Nullable StringSE@Nullable StringSE@Nullable StringSE@Nullable URISEgetUri()@Nullable StringSE@Nullable StringSEbooleanbooleanbooleanbooleanbooleanbooleanbooleanisUseSsl()booleanTLS ホスト名の検証が有効になっている場合は、true (デフォルト) を返します。protected MessagepostProcessMessageBeforeSend(Message message, AmqpAppender.Event event) サブクラスは、送信前に最終メッセージを変更できます。protected MessagePropertiesvoidsetAbbreviation(int len) voidsetAddMdcAsHeaders(boolean addMdcAsHeaders) voidsetAddresses(StringSE addresses) voidsetApplicationId(StringSE applicationId) voidsetAutoDelete(boolean autoDelete) voidsetCharset(StringSE charset) voidsetClientConnectionProperties(StringSE clientConnectionProperties) key:value[,key:value]...の形式で、rabbit 接続に追加する追加のクライアント接続プロパティを設定します。voidsetConnectionName(StringSE connectionName) RabbitMQ 管理 UI に表示される接続の名前を設定します。voidsetContentEncoding(StringSE contentEncoding) voidsetContentType(StringSE contentType) voidsetDeclareExchange(boolean declareExchange) voidsetDeliveryMode(StringSE deliveryMode) voidsetDurable(boolean durable) voidsetEncoder(ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> encoder) voidsetExchangeName(StringSE exchangeName) voidsetExchangeType(StringSE exchangeType) voidsetGenerateId(boolean generateId) voidvoidsetIncludeCallerData(boolean includeCallerData) true の場合、呼び出し元データはターゲット AMQP メッセージで使用できます。voidsetKeyStore(StringSE keyStore) voidsetKeyStorePassphrase(StringSE keyStorePassphrase) voidsetKeyStoreType(StringSE keyStoreType) voidsetLayout(ch.qos.logback.core.Layout<ch.qos.logback.classic.spi.ILoggingEvent> layout) voidsetMaxSenderRetries(int maxSenderRetries) voidsetPassword(StringSE password) voidvoidsetRoutingKeyPattern(StringSE routingKeyPattern) voidsetSaslConfig(StringSE saslConfig) SaslConfigを設定します。voidsetSenderPoolSize(int senderPoolSize) voidsetSslAlgorithm(StringSE sslAlgorithm) voidsetSslPropertiesLocation(StringSE sslPropertiesLocation) voidsetTrustStore(StringSE trustStore) voidsetTrustStorePassphrase(StringSE trustStorePassphrase) voidsetTrustStoreType(StringSE trustStoreType) protected voidvoidvoidsetUsername(StringSE username) voidsetUseSsl(boolean ssl) voidsetVerifyHostname(boolean enable) TLS 接続のサーバーホスト名検証を有効にします。voidsetVirtualHost(StringSE virtualHost) voidstart()voidstop()protected voidupdateConnectionClientProperties(MapSE<StringSE, ObjectSE> clientProperties) サブクラスは、このメソッドをオーバーライドして、プロパティを接続クライアントプロパティに追加できます。クラス ch.qos.logback.core.AppenderBase から継承されたメソッド
addFilter, clearAllFilters, doAppend, getCopyOfAttachedFiltersList, getFilterChainDecision, getName, isStarted, setName, toStringクラス ch.qos.logback.core.spi.ContextAwareBase から継承されたメソッド
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getDeclaredOrigin, getStatusManager, setContextクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース ch.qos.logback.core.spi.ContextAware から継承されたメソッド
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, setContext
フィールドの詳細
APPLICATION_ID
メッセージプロパティ内のアプリケーション ID のキー名 (appender 構成で設定されている場合)。- 関連事項:
CATEGORY_NAME
CATEGORY_LEVEL
THREAD_NAME
コンストラクターの詳細
AmqpAppender
public AmqpAppender()
メソッドの詳細
setRoutingKeyPattern
getUri
setUri
getHost
setHost
getPort
setPort
setAddresses
getAddresses
getVirtualHost
setVirtualHost
getUsername
setUsername
getPassword
setPassword
isUseSsl
public boolean isUseSsl()setUseSsl
public void setUseSsl(boolean ssl) setVerifyHostname
public void setVerifyHostname(boolean enable) TLS 接続のサーバーホスト名検証を有効にします。- パラメーター:
enable- 無効にする場合は false。- 導入:
- 2.1.6
- 関連事項:
isVerifyHostname
public boolean isVerifyHostname()TLS ホスト名の検証が有効になっている場合は、true (デフォルト) を返します。- 戻り値:
- TLS ホスト名検証が有効な場合は true (デフォルト)。
- 導入:
- 2.1.6
getSslAlgorithm
setSslAlgorithm
getSslPropertiesLocation
setSslPropertiesLocation
getKeyStore
setKeyStore
getKeyStorePassphrase
setKeyStorePassphrase
getKeyStoreType
setKeyStoreType
getTrustStore
setTrustStore
getTrustStorePassphrase
setTrustStorePassphrase
getTrustStoreType
setTrustStoreType
getSaslConfig
setSaslConfig
SaslConfigを設定します。- パラメーター:
saslConfig- 設定する saslConfig- 導入:
- 1.7.14
- 関連事項:
getExchangeName
setExchangeName
getExchangeType
setExchangeType
getRoutingKeyPattern
isDeclareExchange
public boolean isDeclareExchange()setDeclareExchange
public void setDeclareExchange(boolean declareExchange) getContentType
setContentType
getContentEncoding
setContentEncoding
getApplicationId
setApplicationId
getSenderPoolSize
public int getSenderPoolSize()setSenderPoolSize
public void setSenderPoolSize(int senderPoolSize) getMaxSenderRetries
public int getMaxSenderRetries()setMaxSenderRetries
public void setMaxSenderRetries(int maxSenderRetries) isAddMdcAsHeaders
public boolean isAddMdcAsHeaders()setAddMdcAsHeaders
public void setAddMdcAsHeaders(boolean addMdcAsHeaders) isDurable
public boolean isDurable()setDurable
public void setDurable(boolean durable) getDeliveryMode
setDeliveryMode
isAutoDelete
public boolean isAutoDelete()setAutoDelete
public void setAutoDelete(boolean autoDelete) isGenerateId
public boolean isGenerateId()setGenerateId
public void setGenerateId(boolean generateId) getCharset
setCharset
setLayout
public void setLayout(ch.qos.logback.core.Layout<ch.qos.logback.classic.spi.ILoggingEvent> layout) getEncoder
public @Nullable ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> getEncoder()setEncoder
public void setEncoder(ch.qos.logback.core.encoder.Encoder<ch.qos.logback.classic.spi.ILoggingEvent> encoder) setAbbreviation
public void setAbbreviation(int len) getQueuedEventCount
public int getQueuedEventCount()送信待ちのイベント数を返します。- 戻り値:
- 送信待ちのイベント数。
setConnectionName
RabbitMQ 管理 UI に表示される接続の名前を設定します。- パラメーター:
connectionName- 接続名。- 導入:
- 2.1.1
setClientConnectionProperties
key:value[,key:value]...の形式で、rabbit 接続に追加する追加のクライアント接続プロパティを設定します。- パラメーター:
clientConnectionProperties- プロパティ。- 導入:
- 1.5.6
isIncludeCallerData
public boolean isIncludeCallerData()setIncludeCallerData
public void setIncludeCallerData(boolean includeCallerData) true の場合、呼び出し元データはターゲット AMQP メッセージで利用可能になります。デフォルトでは、呼び出し元データは RabbitMQ に送信されません。- パラメーター:
includeCallerData- 呼び出し元データを含めるまたはオンにする- 導入:
- 1.7.1
- 関連事項:
start
public void start()- 次で指定:
- インターフェース
ch.qos.logback.core.spi.LifeCycleのstart - オーバーライド:
- クラス
ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>のstart
createRabbitConnectionFactory
protected @Nullable com.rabbitmq.client.ConnectionFactory createRabbitConnectionFactory()ConnectionFactoryを作成します。- 戻り値:
ConnectionFactory。
configureRabbitConnectionFactory
RabbitConnectionFactoryBeanを設定します。サブクラスをオーバーライドして、Bean の設定をカスタマイズできます。- パラメーター:
factoryBean-RabbitConnectionFactoryBean
updateConnectionClientProperties
createEventQueue
サブクラスは、このメソッドをオーバーライドして、カスタムキューの実装を挿入できます。- 戻り値:
- ログ記録イベントを処理する前にキューに入れるために使用するキュー。
- 導入:
- 2.0.1
stop
public void stop()- 次で指定:
- インターフェース
ch.qos.logback.core.spi.LifeCycleのstop - オーバーライド:
- クラス
ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>のstop
append
protected void append(ch.qos.logback.classic.spi.ILoggingEvent event) - 次で指定:
- クラス
ch.qos.logback.core.AppenderBase<ch.qos.logback.classic.spi.ILoggingEvent>のappend
setUpExchangeDeclaration
protected void setUpExchangeDeclaration()prepareMessageProperties
postProcessMessageBeforeSend
サブクラスは、送信前に最終メッセージを変更できます。- パラメーター:
message- メッセージ。event- 行事。- 戻り値:
- 変更されたメッセージ。
- 導入:
- 1.4