Page History
...
Code Block | ||
---|---|---|
| ||
# Module: apache # Docs: https://www.elastic.co/guide/en/beats/filebeat/7.9/filebeat-module-apache.html - module: apache # Access logs access: enabled: true var.paths: ["/var/log/apache/access.target.log"] ##The type:access_log will help us point these logs to the right direction #input: # processors: # - add_fields: # target: fields #fields: # codec: plain #type: access_log ~ |
Java Code Snippet for Elasticsearch Query Over Indexes of Parsed Logs
We'll need a java implementation to Elasticsearch's REST API to provide to the service side of a Spring Boot based web application UI.Â
Code Block | ||
---|---|---|
| ||
package search.client.test; import java.io.IOException; import java.util.concurrent.TimeUnit; import org.apache.http.Header; import org.apache.http.HttpHost; import org.apache.http.client.config.RequestConfig; import org.apache.http.message.BasicHeader; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.Request; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.Response; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestClientBuilder; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.common.unit.TimeValue; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.builder.SearchSourceBuilder; public class RestTest { public void run() { RestClientBuilder builder = RestClient.builder( new HttpHost("localhost", 9200, "http")); Header[] defaultHeaders = new Header[]{new BasicHeader("header", "value")}; builder.setDefaultHeaders(defaultHeaders); builder.setRequestConfigCallback( new RestClientBuilder.RequestConfigCallback() { @Override public RequestConfig.Builder customizeRequestConfig( RequestConfig.Builder requestConfigBuilder) { return requestConfigBuilder.setSocketTimeout(10000); } }); RestHighLevelClient restClient = new RestHighLevelClient(builder); SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); sourceBuilder.query(QueryBuilders.termQuery("event.outcome", "failure")); sourceBuilder.from(0); sourceBuilder.size(5); sourceBuilder.timeout(new TimeValue(60, TimeUnit.SECONDS)); SearchRequest searchRequest = new SearchRequest(); //searchRequest.indices("posts"); searchRequest.source(sourceBuilder); SearchResponse searchResponse = null; try { searchResponse = restClient.search(searchRequest, RequestOptions.DEFAULT); restClient.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } SearchHits hits = searchResponse.getHits(); hits.forEach(x -> System.out.println(x.toString())); } public static void main(String ...strings ) { new RestTest().run(); } } |