如何将旧日志文件作为输入导入graylog?

时间:2015-06-23 12:46:35

标签: apache logging graylog

我能够设置graylog-server和graylog-web,并能够在graylog-collector的帮助下为apache2,tomcat和其他应用程序的生成日志设置输入。 e.g。

apache-access {
    type = "file"
    path = "/var/log/apache2/access.log"
    outputs = "gelf-tcp,console"
  }
tomcat-debug {
    type = "file"
    path = "/home/alok/packages/apache-tomcat-7.0.59/logs/mydomain.debug.log"
    outputs = "gelf-tcp,console"
  }

如何在graylog中查看旧日志文件中的日志?我试图为旧日志文件设置graylog-collector,graylog正在监听它,但没有显示日志文件的内容。如果有人知道实现这一目标的方法请分享

1 个答案:

答案 0 :(得分:9)

我可以在logstash的帮助下在graylog-web中查看我的旧日志文件(.log文件)。

我刚安装了logstash并创建了一个包含内容的简单logstash配置文件

input {
  file {
    path => "/home/alok/Downloads/old_apache_access.log"
    start_position => "beginning"
  }
}

#filter {
#    add filter according to need
#}

output {
  gelf {
    host => "10.149.235.66"
 }
}

path是我想要导入到graylog的旧日志文件的路径 start_position告诉logstash从哪里读取日志行 gelf以graylog的格式输出日志 host是graylog服务器的地址。

现在我可以通过运行命令运行logstash来读取日志文件 $/opt/logstash/bin/logstash -f /etc/logstash/conf.d/logstash-simple.conf

现在我将在graylog中添加输入以从logstash接收日志。在主菜单中转到系统>>输入

enter image description here

然后选择GELF UDP并选择这个新选择的输入并给出标题,最后点击启动按钮。

enter image description here

现在可以看到新创建的输入,然后单击显示已接收的消息以查看日志