最新消息: 关于Git&GitHub 版本控制你了解多少?
您现在的位置是:群英 > 服务器 > 系统运维 >
如何进行EventLog插件管理?
linuxe发表于 2020-10-22 15:56 次浏览
 
Microsoft Windows 中的事件记录提供了一种标准的、集中化的方式,您可用此方式让应用程序记录重要的软件和硬件事件。发生错误时,系统管理员或技术支持人员必须确定导致错误的原因,努力恢复所有丢失的数据,并防止此错误再次发生。如果应用程序、操作系统和其他系统服务能够记录重要事件,如内存不足或尝试访问磁盘失败,则会对解决问题很有帮助。系统管理员可利用事件日志帮助确定错误原因以及此错误出现的上下文。
 
Windows 提供了用以查看这些事件日志的一个标准用户界面,还提供了一个编程接口用以检查日志条目。在 Microsoft Visual Basic 6.0 版中,您可以对某些事件日志执行有限的写操作,但是不能轻松地读取可用的所有日志,或者与这些日志进行交互。
 
使用 EventLog 组件,可以轻松地连接到本地和远程计算机上的事件日志,并向这些日志中写入项。也可以从现有日志中读取条目并创建自己的自定义事件日志。
 
除了向事件日志中写入项以及读取事件日志中的项之外,还可以使用“服务器资源管理器”查看您有权访问的任何服务器的事件日志列表。可以展开“服务器资源管理器”中的“事件日志”节点,以查看当前存在的日志列表,以及已写入其中的事件。此外,还可以从“服务器资源管理器”中将某特定事件日志拖动到设计器上,以创建 EventLog 组件的实例,该实例自动将其属性设置为指向选定的日志。
 

--------------------安装JDK--------------------

Logstash需要JDK的支持才能运行,所以先安装JDK 1.8

1、JDK 直接到官网下载即可,安装步骤太简单,一直下一步没有什么好说的,所以略过了

2、安装好JDK后需要配置环境变量,Windows下是在系统-高级系统设置里,如图

 

2、然后选择“高级”选项卡,点击”环境变量”

 

3、新建变量JAVA_HOME,值就是JDK安装路径

4、新建变量CLASSPATH,变量值为“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar”(引号内的内容),如图

 

5、编辑PATH变量,在变量最开始增加内容"%JAVA_HOME%\bin;"

 

6、重启系统,然后CMD-运行java -version可以看到java版本代表安装成功

--------------------部署Logstash-------------------- 

1、要使用Logstash监控Windows日志需要用到一个eventlog插件,所以我们在Windows服务器上部署了Logstash并保证标准输入输出是正常后,就要安装该插件,首先查看下Logstash是否正常运行

1 logstash -e 'input { stdin { } } output { stdout {} }'
 

 

2、eventlog插件的安装方法

1 logstash-plugin.bat install logstash-input-eventlog

 

 

3、然后给Logstash生成一个配置文件,大致如下:

01 input {
02   eventlog {
03     type  => 'WinEventLog'
04     logfile => ["Application", "System", "Security"]
05   }
06 }
07  
08 output{
09     elasticsearch{
10         hosts=> ["10.254.15.69:9200"]
11         index => "winevent-%{+YYYY.MM.dd}"
12     }
13 }
 

 

4、后台运行Logstash

1 logstash-5.3.0\bin\logstash.bat -f C:\logstash-5.3.0\logstash.conf
 

 

5、在Kibana里创建索引,这里Index列里输入的信息就是配置文件里配置的index名称,由于第一次操作时没有选择时间戳Time-field name,所以create按钮是灰色的

 

选择时间戳,然后点击create创建索引

 

6、然后Kibana里已经可以收集到系统日志了

--------------------中文乱码问题--------------------

由于Windows系统日志有中文的存在,在Kibana界面中会成乱码,如图:

 

一开始是用公司的服务器在测试,使用codec转换了多个字符编码都没有解决。怀疑是公司服务器系统环境问题,于是在自己电脑上跑了虚拟机测试,结果两次测试得到了解决,终于显示了中文:

 

配置文件简化版,第一次使用UTF-8编码依然乱码,且发现Logstash端出现提示说使用了不一致的编码“[logstash.codecs.plain] Received an event that has a different character encoding than you configured.:expected_charset=>"UTF-8"}”:

 

于是换成GB2312,再次测试就成功了,配置文件简化版如下:

01 input {
02   file {
03     type => "test"
04     path => "c:/weblog/*.log"
05     start_position => "beginning"
06     codec => plain {
07   charset => "GB2312"
08   } 
09              }
10 }
11  
12 output{
13     elasticsearch{
14         hosts=> ["192.168.0.100:9200"]
15      index => "test-%{+YYYY.MM.dd}"
16     }
17 }
 
标签:eventlog 错误
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
相关信息推荐