Ana içeriğe geç

3.3.2. İstemci API (Client)#

Log Search uygulamasının rest api uçlarını kullanmayı sağlayan yapıdır.

Bağımlılıklar#

Gradle Bağımlılıkları

api (
        [group: 'tr.com.havelsan.framework.logger.cloud', name: 'hvl-logger-search-cloud-client']
)

Rest Servis Tanımı#

Feign client uçlarını kullanabilmek için configurasyon bean'ine asağıdaki annotasyonlar eklenmelidir.

Yukarıda anlatılan tanımlama yapıldıktan sonra kullanım için

@Autowired
private HvlLogSearchRestService logSearchRestService;

kullanılacağı sınıfa servis ile ilgili kod bloğu eklenmelidir.

Sorgu Alanları#

Oluşturulacak sorguya göre aşağıdaki alanlar kullanılabilir. Kullanım başlığında detaylı örnek mevcuttur.

Kullanım#

Example

//"fleuntd*" patternine uyan indexlerde "_doc" type ile arama yapılması için aşağıdaki gibi builder oluşturulur.

HvlLogSearchCriteriaBuilder eventLogCriteriaBuilder = HvlLogSearchCriteriaBuilder.create(fluentd*, _doc);

eventLogCriteriaBuilder.stringEquals(HvlLogSearchCriteriaField.USERNAME, exampleUsername);

eventLogCriteriaBuilder.stringContains(HvlLogSearchCriteriaField.MESSAGE, example message);

eventLogCriteriaBuilder.stringEquals(HvlLogSearchCriteriaField.ATTRIBUTE_MAP + "." + name_surname, example name surname);

HvlLogSearchQueryModel hvlEventLogQueryModel = new HvlLogSearchQueryModel(eventLogCriteriaBuilder.build());

try {
    //list için
    List<HvlEventLogModel> = logSearchRestService.searchList(hvlEventLogQueryModel).getBody();

    //page için
    HvlPage<HvlEventLogModel> = logSearchRestService.searchPage(hvlEventLogQueryModel).getBody();
} catch (HvlLogSearchException e) {
    throw new HvlEventLogSearchException(e.getMessage());
}

Rest Client Kullanımı

Service metodlarının detaylarına swagger dokümanından ulaşabilirsiniz.