restHighLevelClient有一个index方法,用来向指定索引下创建数据
官方文档链接如下
官方es创建指定索引下的数据
使用用例
public class TestEsCreate {
public static void main(String[] args) {
List httpHosts = new ArrayList<>();
String[] clients = StringUtils.split("125.31.61.56:52123", ",");
for (String client : clients) {
String[] urlFragments = StringUtils.split(client, ":");
int port = Integer.parseInt(urlFragments[1]);
String host = urlFragments[0];
httpHosts.add(new HttpHost(host, port, "http"));
}
HttpHost[] httpHostArr = httpHosts.toArray(new HttpHost[0]);
RestClientBuilder restClientBuilder = RestClient.builder(httpHostArr);
final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("elastic", "itracing@123A"));
restClientBuilder.setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() {
@Override
public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpClientBuilder) {
httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
return httpClientBuilder;
}
});
restClientBuilder.setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() {
@Override
public RequestConfig.Builder customizeRequestConfig(RequestConfig.Builder requestConfigBuilder) {
requestConfigBuilder.setSocketTimeout(300000);
requestConfigBuilder.setConnectTimeout(3000);
return requestConfigBuilder;
}
});
//上面这些是为了创建restHighLevelClient的实例
RestHighLevelClient restHighLevelClient = new RestHighLevelClient(restClientBuilder);
String[] eventType = {"asdqw", "gfeqwd", "Aqwdqwdd", "gqwgqwdte", "qgqdqdasdfy", "asfdgqwdqw", "asdqwgqgd", "hsdzxcaq", "jqwdasdqxz", "Exasdqwdq", "asghqwahk"};
String[] partyName = {"Ada Wang", "Lion Kenedy", "Kris Redfield", "Sherry Birkin", "Klare RedField"};
while (true) {
try {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
format.setTimeZone(TimeZone.getTimeZone("UTC"));
String dateNow_timestamp = format.format(new Date(System.currentTimeMillis()));
String source = "{
""id": ""," +
""serverIp": "100.80.83.187"," +
""ThreadId": "247"," +
""pageTitle": "Portal"," +
""origValue": ""," +
""browser": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36"," +
""keyCode": "0"," +
""LogModule": "41301010"}";
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd");
String dateNow = simpleDateFormat.format(date);
//此三行是关键
IndexRequest request = new IndexRequest("logstash-operlog-uportal-" + dateNow);
request.source(source, XContentType.JSON);
IndexResponse indexResponse = restHighLevelClient.index(request, RequestOptions.DEFAULT);
System.out.println(indexResponse.status());
Thread.sleep(8000);
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}



