Apache logstash 输出不显示输出
Apache logstash output do not show output
我正在尝试将 logstash 与 apache tomcat 日志一起使用。我的 conf 文件中有以下内容。
当我 运行 这个 conf 文件时,我没有收到任何错误消息,但也没有在输出文件上打印任何内容。
能否请教一下?
input {
file {
path => "/opt/knime/apache-tomcat-9.0.36/logs/catalina.2021-04-06.log"
}
}
grok{
patterns_dir => "/etc/logstash/patterns"
match => { "message" => "%{MY_DATE_PATTERN:timestamp}%{SPACE}%{GREEDYDATA:dvaction}%{SPACE}%{COMMONAPACHELOG}"
}
}
date {
match => [ "timestamp" , "dd-MMM-yyyy HH:mm:ss.SSS" ]
}
}
output {
stdout {
codec => "json"
}
file {
path =>"/var/log/logstash/testoutput.log"}
}
默认情况下,文件输入将跳到文件末尾,并且只读取附加到文件的新行。您可能想要使用 start_position 选项,可能需要 sincedb_path 以在重新启动时保留内存中的 sincedb。另外,请考虑您是要使用尾模式还是阅读模式。
我能够解决这个问题。问题是 logstash 无法从日志文件中读取,因为日志文件归另一个用户所有。将 logststash 用户添加到日志文件所有者组已解决此问题。
再次感谢大家
我正在尝试将 logstash 与 apache tomcat 日志一起使用。我的 conf 文件中有以下内容。 当我 运行 这个 conf 文件时,我没有收到任何错误消息,但也没有在输出文件上打印任何内容。
能否请教一下?
input {
file {
path => "/opt/knime/apache-tomcat-9.0.36/logs/catalina.2021-04-06.log"
}
}
grok{
patterns_dir => "/etc/logstash/patterns"
match => { "message" => "%{MY_DATE_PATTERN:timestamp}%{SPACE}%{GREEDYDATA:dvaction}%{SPACE}%{COMMONAPACHELOG}"
}
}
date {
match => [ "timestamp" , "dd-MMM-yyyy HH:mm:ss.SSS" ]
}
}
output {
stdout {
codec => "json"
}
file {
path =>"/var/log/logstash/testoutput.log"}
}
默认情况下,文件输入将跳到文件末尾,并且只读取附加到文件的新行。您可能想要使用 start_position 选项,可能需要 sincedb_path 以在重新启动时保留内存中的 sincedb。另外,请考虑您是要使用尾模式还是阅读模式。
我能够解决这个问题。问题是 logstash 无法从日志文件中读取,因为日志文件归另一个用户所有。将 logststash 用户添加到日志文件所有者组已解决此问题。
再次感谢大家