elasticsearch 日志存储文件输入配置
我的简单配置如下所示。 我在主目录中创建了一个虚拟文件夹,并在其中创建了一些日志文件。 我的配置文件如下所示
elasticsearch 日志存储文件输入配置,
elasticsearch,logstash,
elasticsearch,Logstash,我的简单配置如下所示。 我在主目录中创建了一个虚拟文件夹,并在其中创建了一些日志文件。 我的配置文件如下所示 input{ file{ type => "dummylog" path => [/home/rohit/dummy/*.log" ] } } output{ elasticsearch{ embedded => true } } 现在在运行logstash之后,我无法在logstash的
input{
file{
type => "dummylog"
path => [/home/rohit/dummy/*.log" ]
}
}
output{
elasticsearch{
embedded => true
}
}
现在在运行logstash之后,我无法在logstash的web ui中看到任何文件。那些文件还没有进入elasticsearch。我使用嵌入式elasticsearch,因此无需运行单独的进程。有人能帮我找出我犯的错误吗?也许你应该修复配置中的语法错误,然后看看是否有更深层次的问题 您在以下行中缺少一个“:
path => [/home/rohit/dummy/*.log" ]
如果这不能解决问题,那么最好确认运行logstash进程的用户对其试图读取的日志具有读取权限。请非常小心语法。您在路径中遗漏了“(引号)。”
input{
file{
type => "dummylog"
path => ["/home/rohit/dummy/*.log"]
}
}
output{
elasticsearch{
embedded => true
}
}
还要注意,要使其工作,elasticsearch必须与logstash位于同一主机上
input {
file {
path => "/home/rohit/dummy/*.log"
type => "log"
}
}
filter {
if [type] == "log" {
grok {
pattern => "%{COMBINEDAPACHELOG}"
}
}
}
output {
elasticsearch { host => localhost } stdout { } }
}
检查模式是否正确运行
$bin/logstash代理-f
httpd-shipper.conf--配置测试
除了开头的引号外,您一定忘记了: 开始位置=>…#字符串,其中一个[“开始”,“结束”] (可选),默认值:“结束” 因此,它应该是:
input{
file{
type => "dummylog"
path => "/home/rohit/dummy/*.log"
start_position => "beginning"
}
}
output {
elasticsearch{
embedded => true
}
}