Apache容器数据采集

秋乔
2021-04-08 / 0 评论 / 176 阅读 / 正在检测是否收录...

  在Windows环境下,用apache服务器做一个简单的Apache容器数据采集,用logstash工具接受并记录数据,notepad3工具编辑文件

步骤图: bzt

文章所需工具: Apache容器数据采集文件Notepad3 (方便查看代码)

准备工作:新建一个文件夹为:Server-Apeche 把下载好的三个压缩文件解压到里面

一、修改Apache配置文件

1.1 进入 Apache24/conf 文件夹,找到 httpd.conf 文件,用notepad3打开,Ctrl+F 打开查找:Define SRVROOT 修改引号内的文件路径(指向你Apache文件路径)
1.1
1.2 查找 Listen 修改端口为:8089
1.2
1.3 启动apache服务器:Apache24/bin 目录,在地址栏输入cmd回车,弹出cmd窗口后输入httpd.exe
2.4

二、修改Filebeat文件

2.1 进入 filebeat 文件目录,复制一个 filebeat.yml 文件,重命名为:filebeat-apache.yml
2.1
2.2 用 notepad3 打开新复制的文件,将以下代码写入,并修改paths后的路径(指向你的 Apache/logs/access.log 文件)端口号为5044

filebeat.inputs: 
- type: log 
  enabled: true
  paths:
    - E:\Server\Apache24\logs\access.log

output.logstash:
  hosts: ["localhost:5044"]
  

2.2
2.3 启动 filebeat:在地址栏输入cmd回车,在cmd命令窗内输入filebeat - c 将filebeat-apache.yml拖入回车,即可启动(启动后最小化窗口)
2.2

三、修改logstash配置文件

3.1 先返回 Server-Tomcat 目录新建output文件夹(接收采集数据)
3.2 再进入 logstash-6.8.7/config 文件目录,复制一个 filebeat.yml 文件,重命名为:filebeat-apache.yml
3.1
然后将以下代码写入并修改path引号内的路径指向你的output文件夹(回到Server-Apache目录新建):

input { 
    beats {
         port => 5044
    }
}
filter {          
     grok {
          # refer: E:\Server\elk\logstash-6.8.7\vendor\bundle\jruby\2.5.0\gems\logstash-patterns-core-4.1.2\patterns
          match => { "message" => "%{HTTPD_COMMONLOG}" }
     }
}
output {
     csv {
         path => "E:\Server\elk\output\file.csv"
         fields => ["clientip" ,"verb", "bytes"]
         csv_options => {"col_sep" => "    "}
     } 
     stdout{
        codec => rubydebug
    }
} 

3.2

3.2 回到 logstash-6.8.7/bin 目录,地址栏输入cmd回车弹出命令窗后,在命令窗输入logstash -f 然后进入 logstash-6.8.7/conf 目录内将 logstash-apache.yml 拖入命令窗,回车运行 logstash
3.3

四、进行数据采集

启动浏览器 输入127.0.0.1:8089刷新页面即可开始采集数据
4.1

采集文件在output文件内:js-sdk-file.csv
4.2

0

评论 (0)

取消