zoukankan      html  css  js  c++  java
  • winlogbeat采集windows系统日志

    官网手册:https://www.elastic.co/guide/en/beats/winlogbeat/7.5/winlogbeat-installation.html

    必看文档:https://blog.csdn.net/UbuntuTouch/article/details/103170326

    【1】下载安装 winlogbeat

    Download Link: https://www.elastic.co/downloads/beats/winlogbeat

    我们可以根据自己的版本(和Elasticsearch一样的版本)来进行下载。(这里我的是7.5.1)

      

     如上图,历史版本需要点一下,不然下的默认是最新版本,现在已经是 7.15.2 了

    下载后,解压缩内容并将生成的Winlogbeat文件夹放置在系统上您认为合适的任何位置。

    比如针对我的设置,我解压到如下的目录:

      

    【2】修改配置文件 winlogbeat.yml

    (2.0)总配置查看

    #======================= Winlogbeat specific options 
    # The supported keys are name (required), tags, fields, fields_under_root,
    # forwarded, ignore_older, level, event_id, provider, and include_xml. Please
    # visit the documentation for the complete details of each option.
    # https://go.es.io/WinlogbeatConfig
    
    winlogbeat.event_logs:
      - name: Application
      - name: Microsoft-Windows-PowerShell/Operational
      - name: Windows PowerShell
      - name: Microsoft-Windows-WMI-Activity/Operational
      - name: Microsoft-Windows-PowerShell/Admin
        ignore_older: 72h
    
      - name: System
        ignore_older: 72h
    
      - name: Security
        processors:
          - script:
              lang: javascript
              id: security
              file: ${path.home}/module/security/config/winlogbeat-security.js
    
      - name: Microsoft-Windows-Sysmon/Operational
        processors:
          - script:
              lang: javascript
              id: sysmon
              file: ${path.home}/module/sysmon/config/winlogbeat-sysmon.js
    
    #==================== Elasticsearch template settings ==========================
    
    setup.template.settings:
      index.number_of_shards: 3
      #index.codec: best_compression
      #_source.enabled: false
    
    
    setup.template.enabled: true
    setup.template.overwrite: true
    setup.template.name: "windows"       
    setup.template.pattern: "windows-*" 
    setup.dashboards.index: "windows-*"
    setup.ilm.enabled: false
    
    #================================ General =====================================
    
    # The name of the shipper that publishes the network data. It can be used to group
    # all the transactions sent by a single shipper in the web interface.
    name: "mssql"
    
    # The tags of the shipper are included in their own field with each
    # transaction published.
    tags: ["192.168.191.80","windows2005 test"]
    
    # Optional fields that you can specify to add additional information to the
    # output.
    fields:
      source: windows
    
    #============================== Kibana =====================================
    
    # Starting with Beats version 6.0.0, the dashboards are loaded via the Kibana API.
    # This requires a Kibana endpoint configuration.
    setup.kibana:
    
      # Kibana Host
      # Scheme and port can be left out and will be set to the default (http and 5601)
      # In case you specify and additional path, the scheme is required: http://localhost:5601/path
      # IPv6 addresses should always be defined as: https://[2001:db8::1]:5601
      host: "115.238.30.132:5601"
    
    #-------------------------- Elasticsearch output ------------------------------
    output.elasticsearch:
      # Array of hosts to connect to.
      hosts: ["115.238.30.132:9200"]
    
    # Configure processors to enhance or manipulate events generated by the beat.
    
    processors:
      - add_host_metadata: ~
      - add_cloud_metadata: ~
      - add_docker_metadata: ~
      index: "windows-%{+yyyy.MM.dd}"

    (2.1)Winlogbeat specific options 配置实际收集日志模块

      

    (2.2)Elasticsearch template settings ES模板设置

      

    索引是3个主分片,副本分片随集群定义生成,一般是1个主分片对应一个副本分片啦

     这里我们把新建了一个索引模板叫 windows

    setup.template.pattern 为哪些名称的索引会引用该模板

    (2.3)General 通用配置(自定义字段)

      

     很重要啊,这个我们采集过来的日志是没有描述和IP地址的,到时候就算告警,这也不知道啊;

    所以我们这里可以尽情加字段什么的;无论是查阅还是告警就是好用的啊

    (2.4)kibana

      

     kibana 地址

    (2.5)Elasticsearch output 输出到ES配置

      

     (2.6)【参考】指定数据、日志文件存储目录

    logging.to_files: true
    logging.files:
      path: C:/ProgramData/winlogbeat/Logs
    logging.level: info

    【3】启动

    (3.1)初始化、装载模板到kibana

    在主机上以管理员身份打开 PowerShell 窗口。 我们想要将必要的 Winlogbeat 模板上载到 Elastic 栈中,以进行正确的解析。

    在此窗口中,导航到Winlogbeat 文件夹并运行以下命令:

    # 切换到下载目录
    d:
    cd D:\dba_tools\software\winlogbeat-7.5.1-windows-x86_64
    .\winlogbeat.exe setup -e

    这个会测试与es、与kibana的连通性与配置是否成功,仔细查看相关信息有没有 error 等字样

    (3.2)正式启动

    .\winlogbeat.exe -e -c winlogbeat.yml

      

    会弹出很多信息,毕竟我们 -e 参数就是把信息打印到屏幕上;

    初次使用调试的时候很实用

    (3.3)通过kibana 查看验证

    先在kibana加上我们这个自定义的 mssql-* 的索引模板

      

    然后点击发现

    如下图,我们可以看到一直有数据过来

      

    索引也有了;如下图:

      但我们发现好像有好几个日期,这是因为保存的文件有好几个

      

    (3.4)把 winlogbeat 封装成服务启动(额外)

    如下图,我们可以看到文件夹里有封装成服务器的PS脚本;

       

    如下图,直接执行就安装好了

       

    我们启动一下:

      

    怎么知道数据去哪里了呢?日志怎么看呢?

    我们看看 这个安装脚本 install-service-filebeat.ps1 的内容,如下图

    如上图,同时我们可以看到服务 把数据目录放到 c:\ProgramData\winlogbeat\data  ,日志目录也相差不多; 

    这个文件夹是隐藏文件夹 直接看看不到,设置了文件夹选项后才能看到,藏的真深

      

      

    【参考文档】

    极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana):https://blog.csdn.net/UbuntuTouch/article/details/103170326

    elastic 中国社区:Beats:如何使用 Winlogbeat:https://blog.csdn.net/UbuntuTouch/article/details/103170326

    ELK+Beats实现Windows服务器系统日志监控

  • 相关阅读:
    Python中文乱码(转)
    一千行MySQL学习笔记
    pycharm在同目录下import,pycharm会提示错误,但是可以运行
    PyCharm3.0默认快捷键
    Sublime Text 3 快捷键
    window下spyder的快捷键
    Anaconda更新和第三方包更新
    PyCharm 教程
    centos7.9 源码编译安装php
    centos7.9 源码编译安装nginx
  • 原文地址:https://www.cnblogs.com/gered/p/15540722.html
Copyright © 2011-2022 走看看