fine tuning load of settings and mappings, fix date time pattern, disable prune/shift by default
This commit is contained in:
parent
f311573c1e
commit
3aa46a7f30
2 changed files with 24 additions and 20 deletions
|
@ -15,6 +15,7 @@ import java.net.MalformedURLException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.nio.charset.MalformedInputException;
|
import java.nio.charset.MalformedInputException;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.time.ZoneId;
|
import java.time.ZoneId;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
@ -79,7 +80,7 @@ public class DefaultIndexDefinition implements IndexDefinition {
|
||||||
String dateTimeFormat = settings.get("dateTimeFormat", "yyyyMMdd");
|
String dateTimeFormat = settings.get("dateTimeFormat", "yyyyMMdd");
|
||||||
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(dateTimeFormat)
|
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(dateTimeFormat)
|
||||||
.withZone(ZoneId.systemDefault());
|
.withZone(ZoneId.systemDefault());
|
||||||
String fullName = indexName + dateTimeFormatter.format(LocalDate.now());
|
String fullName = indexName + dateTimeFormatter.format(LocalDateTime.now());
|
||||||
String fullIndexName = adminClient.resolveAlias(fullName).stream().findFirst().orElse(fullName);
|
String fullIndexName = adminClient.resolveAlias(fullName).stream().findFirst().orElse(fullName);
|
||||||
IndexRetention indexRetention = new DefaultIndexRetention()
|
IndexRetention indexRetention = new DefaultIndexRetention()
|
||||||
.setMinToKeep(settings.getAsInt("retention.mintokeep", 0))
|
.setMinToKeep(settings.getAsInt("retention.mintokeep", 0))
|
||||||
|
@ -93,8 +94,8 @@ public class DefaultIndexDefinition implements IndexDefinition {
|
||||||
.setDateTimeFormatter(dateTimeFormatter)
|
.setDateTimeFormatter(dateTimeFormatter)
|
||||||
.setDateTimePattern(dateTimePattern)
|
.setDateTimePattern(dateTimePattern)
|
||||||
.setIgnoreErrors(settings.getAsBoolean("skiperrors", false))
|
.setIgnoreErrors(settings.getAsBoolean("skiperrors", false))
|
||||||
.setShift(settings.getAsBoolean("shift", true))
|
.setShift(settings.getAsBoolean("shift", false))
|
||||||
.setPrune(settings.getAsBoolean("prune", true))
|
.setPrune(settings.getAsBoolean("prune", false))
|
||||||
.setReplicaLevel(settings.getAsInt("replica", 0))
|
.setReplicaLevel(settings.getAsInt("replica", 0))
|
||||||
.setMaxWaitTime(settings.getAsLong("timeout", 30L), TimeUnit.SECONDS)
|
.setMaxWaitTime(settings.getAsLong("timeout", 30L), TimeUnit.SECONDS)
|
||||||
.setRetention(indexRetention)
|
.setRetention(indexRetention)
|
||||||
|
@ -302,12 +303,16 @@ public class DefaultIndexDefinition implements IndexDefinition {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
XContentBuilder builder = JsonXContent.contentBuilder();
|
||||||
try (InputStream inputStream = findInputStream(string)) {
|
try (InputStream inputStream = findInputStream(string)) {
|
||||||
Settings settings = Settings.builder().loadFromStream(string, inputStream).build();
|
if (inputStream != null) {
|
||||||
XContentBuilder builder = JsonXContent.contentBuilder();
|
Settings settings = Settings.builder().loadFromStream(string, inputStream).build();
|
||||||
settings.toXContent(builder, ToXContent.EMPTY_PARAMS);
|
builder.startObject();
|
||||||
return builder.string();
|
settings.toXContent(builder, ToXContent.EMPTY_PARAMS);
|
||||||
|
builder.endObject();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
return builder.string();
|
||||||
} catch (MalformedURLException e) {
|
} catch (MalformedURLException e) {
|
||||||
return string;
|
return string;
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -320,21 +325,20 @@ public class DefaultIndexDefinition implements IndexDefinition {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
XContentBuilder builder = JsonXContent.contentBuilder();
|
||||||
try (InputStream inputStream = findInputStream(string)) {
|
try (InputStream inputStream = findInputStream(string)) {
|
||||||
if (string.endsWith(".json")) {
|
if (inputStream != null) {
|
||||||
Map<String, ?> mappings = JsonXContent.jsonXContent.createParser(inputStream).mapOrdered();
|
if (string.endsWith(".json")) {
|
||||||
XContentBuilder builder = JsonXContent.contentBuilder();
|
Map<String, ?> mappings = JsonXContent.jsonXContent.createParser(inputStream).mapOrdered();
|
||||||
builder.startObject().map(mappings).endObject();
|
builder.map(mappings);
|
||||||
return builder.string();
|
}
|
||||||
}
|
if (string.endsWith(".yml") || string.endsWith(".yaml")) {
|
||||||
if (string.endsWith(".yml") || string.endsWith(".yaml")) {
|
Map<String, ?> mappings = YamlXContent.yamlXContent.createParser(inputStream).mapOrdered();
|
||||||
Map<String, ?> mappings = YamlXContent.yamlXContent.createParser(inputStream).mapOrdered();
|
builder.map(mappings);
|
||||||
XContentBuilder builder = JsonXContent.contentBuilder();
|
}
|
||||||
builder.startObject().map(mappings).endObject();
|
|
||||||
return builder.string();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return string;
|
return builder.string();
|
||||||
} catch (MalformedInputException e) {
|
} catch (MalformedInputException e) {
|
||||||
return string;
|
return string;
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
group = org.xbib
|
group = org.xbib
|
||||||
name = elx
|
name = elx
|
||||||
version = 2.2.1.33
|
version = 2.2.1.34
|
||||||
|
|
||||||
gradle.wrapper.version = 6.6.1
|
gradle.wrapper.version = 6.6.1
|
||||||
xbib-metrics.version = 2.1.0
|
xbib-metrics.version = 2.1.0
|
||||||
|
|
Loading…
Reference in a new issue