3.4.2. Log Producer MQ Provider#
Logları sisteme göndermek için kullanılacak MQ (Messaging Queue) sağlayıcı altyapısıdır. Mevcut durumda kafka desteği sağlanmaktadır. Bu altyapı kullanılarak logların MQ sistemine gönderimi sağlanmaktadır.
Bağımlılıklar#
Gradle Dependencies
Log Producer MQ Provider#
Provider kullanımı için Application Yml'a eklenmesi gerekenler#
hvl:
logger:
producer:
enabled: ${LOGGER_PRODUCER_ENABLED:true}
url: ${LOGGER_PRODUCER_URL:http://hvlloggerproducer:8091}
path: ${LOGGER_PRODUCER_PATH:/event}
provider:
mq:
type: ${LOGGER_PRODUCER_PROVIDER_MQ_TYPE:kafka}
topicName: ${LOGGER_PRODUCER_PROVIDER_MQ_TOPIC:javalt-logger-producer-log}
configurable-log:
enabled: ${LOGGER_PRODUCER_C_LOG_ENABLED:false}
setting-event-topic-name: ${LOGGER_PRODUCER_C_LOG_SETTING_EVENT_TOPIC_NAME:javalt-system-setting-operation}
cache:
module-names: ${LOGGER_PRODUCER_C_LOG_CACHE_MODULE_NAMES:}
type: ${LOGGER_PRODUCER_C_LOG_CACHE_TYPE:LOGGER}
ignored-event-types: ${LOGGER_PRODUCER_C_LOG_IGNORED_EVENT_TYPES:}
search:
url: ${LOGGER_SEARCH_URL:http://hvlloggersearch:8093}
path: ${LOGGER_SEARCH_PATH:/es}
indices-name: ${LOGGER_SEARCH_INDICES_NAME:hvl-*}
Provider aynı zamanda kafkaya erişimi aktifleştirdiği için yml dosyası aşağıdaki sayfalarda verildiği gibi konfigüre edilmelidir.
hvl-infra üzerinden Config Server kullanıldığı durumlarda bootstrap.yml dosyasındaki spring.cloud.config.profile pathine hvl-logger değerinin eklenmesi gerekmektedir. Böylece yukarıdaki özelliklerin ve daha fazlasının olduğu application-hvl-logger.yml dosyası projeye dahil olacaktır.
Uyarı
hvl.logger.producer.enabled
değeri geliştirme ortamları için varsayılan olarak false
olarak ayarlanmıştır.
Log Producer MQ Provider Kullanımı#
MQ Provider'ın sağladığı sınıfların aktif hale gelmesi için aşağıdaki anotasyon konfigürasyon sınıfına eklenmelidir.
@HvlEnableLogProducerMQProvider
Örnek:
@Configuration
@HvlEnableLogProducerMQProvider
public class MyConfiguration extends HvlBaseConfiguration {
}
Sonrasında HvlLogProducerMQProvider
sınıfı inject edilerek kullanılabilir.