2020年9月1日星期二

爬虫日志监控

四大组件Elasticsearch(核心)、logstash(处理)、filebeat(采集)、kibana(可视化)

下载均在https://www.elastic.co/cn/downloads/下tar包,配合fdm会快一点点

注意:“如若后续用到sentinl(开源监控警报插件,可webhook接钉钉等),ELK的组件版本应选择与sentinl版本一致,sentinl版本比ELK组件更新慢”

我的杯具:Plugin sentinl [7.6.1] is incompatible with Kibana [7.9.0]

零、环境

linux mint19

自带open jdk 11

一、配置

主目录创建itcast,然后分配权限,本机使用user0

chown user0:user0 -R /itcast

本机配置:tar包全解压至  /itcast/  修改以下配置文件(注意Tab距离以默认文件为主)

1、elasticsearch相关:

/itcast/(elasticsearch解压目录)/config/elasticsearch.yml

# 集群名称,默认是elasticsearchcluster.name: my-application# 节点名称node.name:node-1# 配置IP端口network.host:192.168.199.224http.port: 9200# 可以指定es的数据存储目录,默认存储在es_home/data目录下# path.data: /path/to/data# 可以指定es的日志存储目录,默认存储在es_home/logs目录下# path.logs: /path/to/logs# 子集群节点,用的上述设置的名称discovery.seed_hosts:[node-1]# !!通过配置这个参数来防止集群脑裂现象 (集群总节点数量/2)+1discovery.zen.minimum_master_nodes= ( master候选节点数量/2+1 )

2、logstash相关:

/itcast/(logstash解压目录)/logstash.conf (根据sample-config修改)

input { beats { port => 5044 }}filter { # 重要功能,对日志处理均在此步,按需自行搜索 mutate { split => {"message" => "|"} } mutate { add_field => {  "Date" => "%{[message][0]}"  # 坑点!!!新版本中%{}里字段如message需要加上中括号[]作为识别  "Level" => "%{[message][1]}"  "result" => "%{[message][2]}" } } mutate { convert => {  "Date" => "string"  "Leverl" => "string"  "result" => "string" } }}output { elasticsearch { hosts => ["http://192.168.199.224:9200"] index => "logstash-%{+YYYY.MM.dd}" }}

3、filebeat相关:

/itcast/(filebeat解压目录)/filebeat.yml

filebeat.inputs:  - type: log  enabled: true  paths:    #目标文件,自行匹配    - /var/log/*.log    #- /itcast/elasticsearch/logs/*  tags: ["spider"]#不需要logstash处理可直接传ela本身#output.elasticsearch:#  hosts: ["192.168.199.224:9200"]out.logstash:  hosts: ["192.168.199.224:5044"]filebeat.config.modules:  path: ${path.config}/modules.d/*.yml  reload.enabled: falsesetup.template.settings:  index.number_of_shards: 1setup.kibana:  host: "192.168.199.224:5601"

4、kibana相关:

/itcast/(kibana解压目录)/config/kibana.yml

要点没有,可不作配置

5、其他:

sentinl插件安装

(kibana目录)/bin/kibana-plugin install file:~/sentinl-v7.6.1.zip # zip包自行github寻找

 /etc/security/limits.conf 尾部加上字段

*    soft nproc   65536*    hard nproc   65536*    soft nofile   65536*    hard nofile   65536

 

二、运行

切换到user0

su - user0

 运行elasticsearch

cd /itcast/(elasticsearch解压目录)./bin/elasticsearch

运行另外三个组件

cd /itcast/(kibana解压目录)./bin/kibana
cd /itcast/(logstash解压目录)./bin/logstash -f logstash.conf
cd /itcast/(filebeat解压目录)./filebeat -e -c filebeat.yml

 三、测试

新建控制台,cd至filebeat监控日志目录,此处为 /var/log

重复执行以下命令

echo "2020-09-01 | DEBUG | create a logmsg demo" >> demo.log

 打开kibana(此处为192.168.199.224:5601)>>

菜单打开Stack Management( 管理中心 )>>

创建索引(logstash的配置输出中  index => "logstash-%{+YYYY.MM.dd}" ),此处输入 logstash-* 即可  >>

菜单打开 discover,创建新条目,选择上一步的索引即可返回相关数据

菜单打开日志,选择索引 logstash-* 亦可返回流式数据

 kibana简易食用方法:创建索引 (视为数据源,操作的根本) >> 创建表格( discover ) >> 创建可视化(Visualize 饼图,柱形图等……)  >> 创建仪表盘(dashboard 把可视化组合起来) 后续更新kibana详细点的食用方法爬虫日志监控stylenanda传统企业亚马逊突围之道蜜芽宝贝Shopee联手谷歌!Google Ads with Shopee来了!警惕|莆田一卖家跨境虚拟发货涉嫌诈骗罪,被判5年有期徒刑!亚马逊品牌注册Brand Registry如何操作?(图文实操)代工厂品牌困境!携手电商平台破局亚马逊新手福利:低成本快速出单妙招分享

没有评论:

发表评论