logstash收集windows eventlog

==============================logstash收集windows eventlog===================================
windows下收集日志同样借助logstash,在1.4.1以前的版本logstash input中不包含eventlog的输入项,需借助第三方工具

snare或nxlog等工具,详情见
http://www.ragingcomputer.com/2014/02/sending-windows-event-logs-to-logstash-elasticsearch-kibana-with-nxlog

运行logstash需java环境,在orcle官网下载windows下的java安装包如jdk-7u79-windows-x64.exe,运行安装略。
创建agent端配置文件windows-shipper.conf主要内容包括:
input {
  eventlog {
    type  => 'EventLog'
    logfile  => 'Application'
  }
}
output  {
        redis {
        host => '10.10.12.3'
        data_type => 'list'
        key => "logstash:windows"
        }
        }
在cmd窗口或powershell中运行logstash,在redis监视窗口中检测是否能正常搬运日志,
./logstash agent -f windows-shipper.conf
在redis服务器中
/usr/local/bin/redis-cli -p 6379 monitor
由于logstash在窗口中运行时是作为一个非系统的java程序在运行,当前用户注销后,该进程就结束了,不能达到实时收集日志

的目的,这里借助第三方的工具nssm.exe将logstash注册为系统服务,相关资料参见
https://www.rizhiyi.com/docs/howtouse/logstash.html
http://nssm.cc/download 
http://www.s2-industries.com/wordpress/2014/08/logstash-configuration-tips-for-windows-windows-service/
注意选择64位还是32位应用程序,将nssm.exe拷贝到logstash的bin目录下,编辑批处理文件runlogstash.bat
@echo off
D:
cd logstash-1.4.2
cd bin
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_79
logstash.bat agent -f windows-shipper.conf
在cmd命令行进入logstash的bin目录,执行nssm.exe install logstash D:\logstash-1.4.2\bin\runlogstash.bat
此处一定接全路径!!

出现service "logstash" installed successfully! 表明注册成服务成功

启动logstash   
nssm.exe start\status\stop logstash
提示"logstash: START: 操作成功完成。"表明服务启动成功,验证检测服务是否正常启动,打开任务管理器,查看是否有java
和nssm进程,若进程存在说明启动正常;也可通过redis监控窗口查看是否有数据传人,判断是否正常启动。


如启动未成功排查原因可通过启动打印出来的信息定位,进行如下操作:
nssm.exe edit logstash 
弹出如下所示对话框


在I\O中选择output为windows下可读的文本txt、log和doc均可,执行nssm.exe start logstash , 启动信息将会打印在output

中,通过报错信息定位解决问题。

服务部署:由于需实时收集日志的服务器较多,全部手动执行效率较低,因此采用批处理文件的方式进行,创建setup.bat文件
@echo off 
D:
cd logstash-1.4.2
cd bin
nssm.exe install logstash D:\logstash-1.4.2\bin\runlogstash.bat

nssm.exe start logstash

运行java安装程序,双击执行setup.bat即可,验证任务管理器中java进行正常启动且该进程为SYSTEM则设置成功,可以实时采
集windows日志了。

你可能感兴趣的:(ELK,logstash,Windows)