Skip to content

Commit

Permalink
Adjustments to match the changes of elastic#33630
Browse files Browse the repository at this point in the history
  • Loading branch information
droberts195 committed Sep 14, 2018
1 parent 2e9200c commit 3a56c09
Showing 1 changed file with 15 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,8 @@ public final class LogConfigWriter {
"\n" +
"output.logstash:\n" +
" hosts: [\"%s:5044\"]\n";
private static final String SEPARATOR_TEMPLATE = " separator => \"%c\"\n";
private static final String SEPARATOR_TEMPLATE = " separator => %s%c%s\n";
private static final String QUOTE_CHAR_TEMPLATE = " quote_char => %s%c%s\n";
private static final String LOGSTASH_CONVERSIONS_TEMPLATE = " convert => {\n" +
"%s" +
" }\n";
Expand All @@ -235,6 +236,7 @@ public final class LogConfigWriter {
"filter {\n" +
" csv {\n" +
"%s" +
"%s" +
" columns => [ %s ]\n" +
"%s" +
" remove_field => [ \"message\" ]\n" +
Expand Down Expand Up @@ -262,6 +264,7 @@ public final class LogConfigWriter {
" }\n" +
" csv {\n" +
"%s" +
"%s" +
" columns => [ %s ]\n" +
"%s" +
"%s" +
Expand Down Expand Up @@ -619,6 +622,7 @@ private void createXmlConfigs(FileStructure structure) {
private void createDelimitedConfigs(FileStructure structure) {

char delimiter = structure.getDelimiter();
char quote = structure.getQuote();
String logstashFromFilebeatDateFilter = "";
String logstashFromFileDateFilter = "";
if (structure.getTimestampField() != null) {
Expand All @@ -633,16 +637,22 @@ private void createDelimitedConfigs(FileStructure structure) {
makeFilebeatAddLocaleSetting(structure.needClientTimezone()), logstashHost);
String logstashColumns = structure.getColumnNames().stream()
.map(column -> (column.indexOf('"') >= 0) ? ("'" + column + "'") : ("\"" + column + "\"")).collect(Collectors.joining(", "));
String delimiterIfRequired = (delimiter == ',') ? "" : String.format(Locale.ROOT, SEPARATOR_TEMPLATE, delimiter);
String delimiterQuote = bestLogstashQuoteFor(String.valueOf(delimiter));
String delimiterIfRequired = (delimiter == ',') ? "" : String.format(Locale.ROOT, SEPARATOR_TEMPLATE, delimiterQuote, delimiter,
delimiterQuote);
String quoteQuote = bestLogstashQuoteFor(String.valueOf(quote));
String quoteIfRequired = (quote == '"') ? "" : String.format(Locale.ROOT, QUOTE_CHAR_TEMPLATE, quoteQuote, quote, quoteQuote);
String logstashColumnConversions = makeColumnConversions(structure.getMappings());
String logstashStripFilter = Boolean.TRUE.equals(structure.getShouldTrimFields()) ?
String.format(Locale.ROOT, LOGSTASH_STRIP_FILTER_TEMPLATE, logstashColumns) : "";
logstashFromFilebeatConfig = String.format(Locale.ROOT, DELIMITED_LOGSTASH_FROM_FILEBEAT_TEMPLATE, delimiterIfRequired,
logstashColumns, logstashColumnConversions, logstashStripFilter, logstashFromFilebeatDateFilter, elasticsearchHost);
quoteIfRequired, logstashColumns, logstashColumnConversions, logstashStripFilter, logstashFromFilebeatDateFilter,
elasticsearchHost);
String skipHeaderIfRequired = structure.getHasHeaderRow() ? " skip_header => true\n": "";
logstashFromFileConfig = String.format(Locale.ROOT, DELIMITED_LOGSTASH_FROM_FILE_TEMPLATE,
makeLogstashFileInput(structure.getMultilineStartPattern(), structure.getCharset()), delimiterIfRequired, logstashColumns,
skipHeaderIfRequired, logstashColumnConversions, logstashStripFilter, logstashFromFileDateFilter, elasticsearchHost, indexName);
makeLogstashFileInput(structure.getMultilineStartPattern(), structure.getCharset()), delimiterIfRequired, quoteIfRequired,
logstashColumns, skipHeaderIfRequired, logstashColumnConversions, logstashStripFilter, logstashFromFileDateFilter,
elasticsearchHost, indexName);
}

private void createTextConfigs(FileStructure structure, List<String> sampleMessages) {
Expand Down

0 comments on commit 3a56c09

Please sign in to comment.