1
This commit is contained in:
@@ -10,6 +10,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.ss.formula.functions.T;
|
||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
||||
import org.elasticsearch.index.query.QueryBuilders;
|
||||
import org.elasticsearch.script.Script;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.enums.LevelEnum;
|
||||
import org.nl.modules.logging.repository.EsLogRepository;
|
||||
@@ -23,6 +24,8 @@ import org.springframework.data.domain.Sort;
|
||||
import org.springframework.data.elasticsearch.core.aggregation.impl.AggregatedPageImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
@@ -68,13 +71,17 @@ public class EsLogServiceImpl implements EsLogService {
|
||||
query.must().add(QueryBuilders.matchQuery("traceId", logQuery.getTraceId()));
|
||||
}
|
||||
if (StringUtils.isNotEmpty(logQuery.getMessage())){
|
||||
query.must().add(QueryBuilders.matchQuery("message", logQuery.getMessage()).minimumShouldMatch("50%"));
|
||||
}
|
||||
if (logQuery.getStartTime()!=null){
|
||||
query.must().add(QueryBuilders.rangeQuery("requestTime").gte(logQuery.getStartTime()));
|
||||
query.must().add(QueryBuilders.matchQuery("message", logQuery.getMessage()).minimumShouldMatch("80%"));
|
||||
}
|
||||
if (logQuery.getEndTime()!=null){
|
||||
query.must().add(QueryBuilders.rangeQuery("requestTime").lte(logQuery.getStartTime()));
|
||||
long end = logQuery.getEndTime().getTime();
|
||||
query.must().add(QueryBuilders.rangeQuery("@timestamp").gte(logQuery.getEndTime()));
|
||||
}
|
||||
if (logQuery.getStartTime()!=null){
|
||||
long start = logQuery.getStartTime().getTime();
|
||||
String script = "doc['@timestamp'].value.millis > "+start+"L";
|
||||
Script Script = new Script(script);
|
||||
query.must().add(QueryBuilders.scriptQuery(Script));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user