标签: logstash-configuration

使用logstash创建自定义elasticsearch索引

我必须使用logstash在elasticsearch中创建自定义索引.我已创建在elasticsearch新的模板,并且在logstash配置我有指定模板路径,TEMPLATE_NAME和template_overwrite值,但仍然每当我运行logstash,与logstash-DD-MM-YY的正则表达式生成的新的索引,而不是与在属性中指定TEMPLATE_NAME ,logstash -config文件是

input {
  file {
    path => "/temp/file.txt"
    type => "words"
    start_position => "beginning"    
  }
}  
filter {

   mutate {
    add_field => {"words" => "%{message}"}
  }

}
output {
    elasticsearch {
     hosts => ["elasticserver:9200"]
     template => "pathtotemplate.json"
     template_name => "newIndexName-*"
     template_overwrite => true
    }
    stdout{}
}
Run Code Online (Sandbox Code Playgroud)

索引模板文件是

{
    "template": "dictinary-*",
    "settings" : {
        "number_of_shards" : 1,
        "number_of_replicas" : 0,
        "index" : {
            "query" : { "default_field" : "@words" },
            "store" : { "compress" : { "stored" : true, …
Run Code Online (Sandbox Code Playgroud)

elasticsearch logstash logstash-configuration

2
推荐指数
1
解决办法
6801
查看次数

如何在Logstash 5.0中每五分钟运行一次计划?

我有一个jdbc我的内连接inputlogstash哪里,因为我试图根据执行查询schedule性能.我经历了jdbcrufus-scheduler,但仍然不清楚这五颗星(*)单独代表什么.

据我所知,从左到右的星星(*****):

  1. 分钟
  2. 小时
  3. 从(月)
  4. 到(月)

因此,如果它是这样的场景(*****),则表示调度程序将每分钟运行一次.因此,如果我每五分钟运行一次,那么调度程序应该如何?像(5****)的东西?

我认为是对的吗?或者如果我错了请纠正我.

elasticsearch logstash logstash-configuration logstash-jdbc elasticsearch-5

2
推荐指数
1
解决办法
2755
查看次数

Logstash 5.1.1"错误的URI(不是URI?)"

错误:

c:\ Program Files\Logstash\bin> logstash.bat -e'input {stdin {}} output {stdout {}}'发生意外错误!:错误=>错误的URI(不是URI?):文件:// c:/ Program Files/Logstash/confi g/log4j2.properties,:backtrace => ["C:/ Program Files/Logstash/vendor/jruby/lib/ruby​​/1.9/uri/common.rb:176:在split'","C:/ Program Files/Logstash/vendor/jruby/lib/ruby​​/1.9/uri/common.rb:210:在解析'","C:/ Program Files/Logstash/vendor/jruby/lib/ruby​​/1.9/uri/common.rb:747:在解析'","C:/ Program Files/Logstash/vendor/jruby/lib/ruby​​/1.9/uri/common.rb:994:inURI'","c:/ Program Files/Logstash/log stash-core/lib/logstash/logging/logger.rb:76:in initialize '","org/jruby/ext/thread/Mutex.java:149:insynchronize'","c:/ Program Files/Logstash/logstash-core/lib/logstash/logging/logger.rb:74:in in itialize' ","c:/ Program Files/Logstash/logstash -core/lib/logstash/runner.rb:193:不执行'","c:/ P rogram Files/Logstash/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:67:在运行'","c:/ Program Files/Logstash/logstash -core/lib/logstash/runner.rb:178:inrun' ","c:/ Program Files/Logst ash/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:132:in run'","c:\ Program Files\\ Logstash\lib\bootstrap\environment.rb:71:in(root)'"]

logstash logstash-file logstash-configuration

2
推荐指数
1
解决办法
3403
查看次数

logstash 5.0.1:设置elasticsearch多个索引输出多个kafka输入主题

我有一个logstash输入设置为

input {
  kafka {
  bootstrap_servers => "zookeper_address"
  topics => ["topic1","topic2"]
  }
}
Run Code Online (Sandbox Code Playgroud)

我需要在elasticsearch中将主题提供给两个不同的索引.任何人都可以帮我解决如何为这样的任务设置输出.这时我只能设置

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "my_index"
    codec => "json"
    document_id => "%{id}"
  }
}
Run Code Online (Sandbox Code Playgroud)

我需要在同一elasticsearch例如两个指标说index1index2,这将通过对未来的信息供给topic1topic2

elasticsearch logstash-configuration

2
推荐指数
1
解决办法
1145
查看次数

ElasticSearch 多索引查询

简单的问题:我的弹性搜索引擎中有多个索引,由 postgresql 使用 logstash 镜像。ElasticSearch 在模糊搜索方面表现良好,但现在我需要在索引中使用引用,这些引用需要由查询处理。

Index A:
{
  name: "alice",
  _id: 5
} 
...

Index B:
{
  name: "bob",
  _id: 3,
  best_friend: 5
}
...
Run Code Online (Sandbox Code Playgroud)

我如何查询:

获取字段名称以“b”开头的索引B和名称以“a”开头的“best_friend”引用的索引A的每个匹配项

弹性搜索甚至可以做到这一点吗?

postgresql elasticsearch logstash elasticsearch-plugin logstash-configuration

2
推荐指数
1
解决办法
2626
查看次数

Logstash 不读取文件输入

我正在运行ELK 堆栈的实现,它非常简单且易于配置。

我可以使用 netcat 将 TCP 输入推送到堆栈,如下所示:

nc localhost 5000 < /Users/me/path/to/logs/appOne.log
nc localhost 5000 < /Users/me/path/to/logs/appOneStackTrace.log
nc localhost 5000 < /Users/me/path/to/logs/appTwo.log
nc localhost 5000 < /Users/me/path/to/logs/appTwoStackTrace.log
Run Code Online (Sandbox Code Playgroud)

但我无法让 Logstash 读取我在配置中指定的文件路径:

input {
        tcp {
        port => 5000
    }

        file {
                path => [
                    "/Users/me/path/to/logs/appOne.log",
                    "/Users/me/path/to/logs/appOneStackTrace.log",
                    "/Users/me/path/to/logs/appTwo.log",
                    "/Users/me/path/to/logs/appTwoStackTrace.log"
                ]
                type => "log"
                start_position => "beginning"
        }
}

output {
    elasticsearch {
        hosts => "elasticsearch:9200"
    }
}

Run Code Online (Sandbox Code Playgroud)

以下是有关 Logstash 输入的堆栈的启动输出:

logstash_1       | [2019-01-28T17:44:33,206][INFO ][logstash.inputs.tcp      ] Starting tcp input listener {:address=>"0.0.0.0:5000", …
Run Code Online (Sandbox Code Playgroud)

logstash docker-compose logstash-configuration elastic-stack

2
推荐指数
1
解决办法
3475
查看次数

如何停止 Ubuntu 中运行的 Logstash 配置文件?

我使用以下命令在 Ubuntu 中运行 logstash 配置文件。

/opt/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf
Run Code Online (Sandbox Code Playgroud)

它的工作原理,但是我最近意识到,每次运行此命令时,它都会启动另一个实例。现在我认为有六个实例正在运行。因为我创建的每条新记录在elasticsearch中显示为6。

我如何停止所有这些其他实例,有什么方法可以检查有多少实例正在运行?谢谢

elasticsearch logstash ubuntu-14.04 logstash-configuration elastic-stack

1
推荐指数
1
解决办法
6887
查看次数

Logstash 不在 Windows 10 中创建索引

我已经使用 zip 文件来启动logstash、kibana 和elasticsearch。我正在将 csv 文件从 Logstash 提取到弹性搜索

           input {
            file {
                path => "D:\tls202_part01\tls202_part01.csv"
                start_position => "beginning"
            }
        }
        filter {
            csv {
                separator => ","
                columns => ["appln_id", "appln_title_lg", "appln_title"]
            }
            mutate {
                convert => ["appln_id", "integer"]
                convert => ["appln_title_lg", "string"]
                convert => ["appln_title", "string"]
            }
        }
        output {
            elasticsearch {
                hosts => "localhost"
                index => "title"
            }
            stdout {
                codec => rubydebug
            }
        }
Run Code Online (Sandbox Code Playgroud)

这是我的配置文件。当我搜索索引标题时,它不存在,logstash 日志如下:

   Sending Logstash logs to D:/logstash-6.5.4/logs which is now configured via log4j2.properties …
Run Code Online (Sandbox Code Playgroud)

elasticsearch logstash kibana logstash-configuration elastic-stack

1
推荐指数
1
解决办法
1131
查看次数

如何在logstash中的grok模式中使用IF ELSE条件

我将Web和API日志合并在一起,我想将其单独保存在elasticsearch中。所以我想编写一种模式,如果请求是 API,那么如果过去应该执行,请求是 Web,那么应该执行日志的一部分。

以下是一些 Web 和 API 日志。

00:06:27,778 INFO  [stdout] (ajp--0.0.0.0-8009-38) 00:06:27.777 [ajp--0.0.0.0-8009-38] INFO  c.r.s.web.rest.WidgetController - Method getWidgetDetails() started to get widget details.
00:06:27,783 INFO  [stdout] (ajp--0.0.0.0-8009-38) ---> HTTP GET http://api.survey.me/v1/getwidgetdetails?profileName=jeremy-steffens&profileLevel=INDIVIDUAL&companyProfileName=premier-nationwide-lending&hideHistory=true
00:06:27,817 INFO  [stdout] (ajp--0.0.0.0-8009-38) <--- HTTP 200 http://api.survey.me/v1/getwidgetdetails?profileName=jeremy-steffens&profileLevel=INDIVIDUAL&companyProfileName=premier-nationwide-lending&hideHistory=true (29ms)
00:06:27,822 INFO  [stdout] (ajp--0.0.0.0-8009-38) 00:06:27.822 [ajp--0.0.0.0-8009-38] INFO  c.r.s.web.rest.WidgetController - Method getWidgetDetails() finished.
00:06:27,899 INFO  [stdout] (ajp--0.0.0.0-8009-40) 00:06:27.899 [ajp--0.0.0.0-8009-40] INFO  c.r.s.web.controller.LoginController - Inside initLoginPage() of LoginController
Run Code Online (Sandbox Code Playgroud)

我试图写条件但它不起作用。它仅适用于线程名称。在线程之后,我有多种类型的日志,因此无法在没有 if 条件的情况下写入。

(?:%{TIME:CREATED_ON})(?:%{SPACE})%{WORD:LEVEL}%{SPACE}\[%{NOTSPACE}\]%{SPACE}\(%{NOTSPACE:THREAD}\)
Run Code Online (Sandbox Code Playgroud)

有人可以给我建议吗?

logstash logstash-grok logstash-configuration elastic-stack

1
推荐指数
1
解决办法
2万
查看次数

我可以在读取文件后将其删除,或者在处理完所有文件后发出通知吗?

我有一个通过 Logstash 读入 Elasticsearch 的文件列表。我想知道如何知道文件何时全部被捕获。

我正在考虑在完全读入该文件后删除该文件。

我还没有看到任何关于文件完成的通知或确认或文件删除的信息。我喜欢一些见解,因为我认为它将成为配置文件的一部分。我只是没有洞察力。

理想情况下:我希望在文件完全使用后将其删除。这样,我就可以从 txt 文件开始处理所有文件类型。

logstash logstash-configuration

1
推荐指数
1
解决办法
2897
查看次数