(一)ELK相关文档地址以及服务部署
1、文档地址说明:
1、官方文档地址:Welcome to Elastic Docs | Elastic
2、FileBeat文档地址:Log input | Filebeat Reference [8.2] | Elastic
3、logstash好的博客地址:日志收集详解之logstash解析日志格式(一) - dogfei - 博客园 (cnblogs.com)
4、ELK上线配置相关:硬件 | Elasticsearch: 权威指南 | Elastic
2、ELK日志收集概览
3、ELK部署(此处基于docker部署)
3.1 docker-cpmpose.yml 文档如下
version: '3' services: elasticsearch: image: elasticsearch:7.6.2 container_name: elasticsearch environment: - "cluster.name=elasticsearch" #设置集群名称为elasticsearch - "discovery.type=single-node" #以单一节点模式启动 - "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置使用jvm内存大小 volumes: - /elk/elasticsearch/plugins:/usr/share/elasticsearch/plugins #插件文件挂载 - /elk/elasticsearch/data:/usr/share/elasticsearch/data #数据文件挂载 ports: - 9200:9200 kibana: image: kibana:7.6.2 container_name: kibana links: - elasticsearch:es #可以用es这个域名访问elasticsearch服务 depends_on: - elasticsearch #kibana在elasticsearch启动之后再启动 environment: - "elasticsearch.hosts=http://es:9200" #设置访问elasticsearch的地址 ports: - 5601:5601 logstash: image: logstash:7.6.2 container_name: logstash volumes: - /elk/logstash/logstash_filebeat2es.conf:/usr/share/logstash/pipeline/logstash.conf - /elk/logstash/xfs_log_template.json:/usr/share/config/xfs_log_template.json depends_on: - elasticsearch #logstssh在elasticsearch启动之后再启动 links: - elasticsearch:es #可以用es这个域名访问elasticsearch服务 ports: - 4560:4560 - 5044:5044 groK: image: epurs/grokdebugger container_name: grokUtil ports: - 80:80
3.2、具体部署文档见:整合elk 日志收集 · 语雀 (yuque.com)
四、grokUtil工具
这里还提供了一个groK工具,主要是用作解析logstahs表达式用的;
input:
2022-06-13 13:51:48.947 ERROR - [sp-service:OFF] - 22922 --- [ TaskExecutor-1] - [e3466601-548b-4451-a402-21541c5e19c8] c.x.s.c.task.SaveRefundBillTask : [CORE|settlement|exception|SaveSettlementBillTask] saveRefundBillTask 执行失败,失败原因 : 该供应商尚未未开启协同
format
%{TIMESTAMP_ISO8601:timestamp}\s*%{LOGLEVEL:level} - \[(?<serviceConfig>.*)]\ - %{NUMBER:pid} --- \[(?<thread>.*?)]\ - \[(?<traceId>.*?)]\ %{JAVACLASS:class}\s+:(?<msg>.*)
五:FileBeat安装
文件下载:略
启动:
我们曾如此渴望生命的波澜,到后来才发现,人生最曼妙的风景是内心的淡定与从容