elasticsearch  logstash kibana v7.9.1 对接nginx日志

前言

本文章主要是实现 elasticsearch  logstash kibana v7.9.1 黄金组合采集nginx日志(access.log  error.log),并可视化展示。

此外,本文章是我一个开源项目的一部分,所以请阅读本文的各位开发者给我的开源点点 star,绝对值!

https://gitee.com/daitougege/GinSkeleton

本文在我的项目最早的发布日期是2020-09-21,距离官方的v7.9.1系列版本发布不到20天,很可能我们是对接这个版本的全网首篇文章。

正文部分:

原始地址:https://gitee.com/daitougege/GinSkeleton/blob/master/docs/elk_log.md

以下操作流程摘自我的项目文档:

1.项目日志的顶级解决方案(ELK)

1.ELK 全称为 ElasticsearchLogstashKibana, 该产品近年在提供快速搜索领域异军突起,但是今天我们要介绍的是该套产品的另一杀手锏:日志统一管理、统计、分析.
2.ELK 支持分布式管理日志,您只需要搭建 elk 服务器,所有项目的日志(例如:nginx 的 access 日志、error 日志、应用项目运行日志)都可以对接到 elk 服务器,由专门的人员负责数据监控,统计、分析.
3.ELK 日志推送结构图: elk日志推送结构图

2.三个核心角色介绍

elasticsearch
倒排索引驱动的数据库,通俗地说,就是数据存储时,按照分词器提取关键词,给关键词创建索引,然后将索引和数据一起存储,最终当你查询关键词的时候,首先定位索引,然后根据索引快速获取结果,返回给用户。
logstash
负责数据的采集、加工处理、输出,我们只需要设置好相关参数,按照指定时间频率,抓取日志文件,支持分布式部署,一台项目服务器需要部署一个客户端,然后将数据推送至elasticsearch存.
kibana
数据可视化管理面板,支持数据本身的展示(文本展示)、图形化展示、统计、分析等.

3.本次我们要对接的日志清单

1.nginx 的 access.log.
2.nginx 的 error.log.
3.任何项目的运行日志,按照行业标准提供了 info 、 warn 、error 、fatal 等不同级别日志. 数据格式要求为 json

4.进入对接环节

1.后续所有方案基于docker.
2.考虑到有部分人员可能没有安装 elk 黄金套餐,我们简要地介绍一下安装步骤,如果已经安装,那么相关参数请自行配置.
3.特别提醒:本次我们是基于 elk 最新版本(v7.9.1),距离我写本文档的时间(2020-09-21)发布仅仅16天, 和之前的版本细节差异都比较大, 和网上已有的资料差距也很大(很有可能v7.9.1的全套对接、配置我们都是全网首发), 如果您不是很熟悉该套产品,那么请按照本文档 100% 操作,否则有很多"惊喜".

4.1 nginx 修改日志格式

4.1.1 例如我的nginx配置文件路径:/usr/local/nginx/conf/nginx.conf

#以下代码段需要放置在http段
    http {
        include       mime.types;
        default_type  application/octet-stream;

        #默认的日志格式
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';
        #access_log  logs/access.log  main;

        # 将日志格式修改为 json 格式,方便对接到 elk ,修改日志格式对 nginx 没有任何影响,只会使日志阅读更加人性化
        log_format json '{"created_at":"$time_iso8601",'
                           '"remote_addr":"$remote_addr",'
                           '"method":"$request_method",'
                         
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElasticsearchLogstashKibana被称为ELK Stack,是一组用于日志管理和分析的开源工具。它们的主要优点和缺点如下: Elasticsearch的优点: 1. 搜索性能高:Elasticsearch使用倒排索引技术,使得搜索性能非常高。 2. 分布式架构:Elasticsearch采用分布式架构,可以快速处理大量数据。 3. 可扩展性:Elasticsearch可以通过添加节点来扩展集群的性能。 4. 开源免费:Elasticsearch是开源的,没有使用和部署的限制。 Elasticsearch的缺点: 1. 学习成本高:Elasticsearch需要一定的学习成本,对于不熟悉搜索引擎的用户来说,上手比较困难。 2. 配置复杂:Elasticsearch的配置比较复杂,需要对集群的配置和管理有一定的了解。 Logstash的优点: 1. 支持多种数据源:Logstash支持多种数据源的采集,包括文件、数据库、消息队列等。 2. 可扩展性:Logstash可以通过插件的方式来扩展功能。 3. 开源免费:Logstash是开源的,没有使用和部署的限制。 Logstash的缺点: 1. 资源占用高:Logstash需要占用大量的CPU和内存资源,对于资源有限的机器来说,可能会影响性能。 2. 配置复杂:Logstash的配置比较复杂,需要对数据采集和处理有一定的了解。 Kibana的优点: 1. 直观的可视化界面:Kibana提供了直观的可视化界面,方便用户进行数据分析和查询。 2. 支持多种图表类型:Kibana支持多种图表类型,包括折线图、柱状图、饼状图等。 3. 开源免费:Kibana是开源的,没有使用和部署的限制。 Kibana的缺点: 1. 学习成本高:Kibana需要一定的学习成本,对于不熟悉数据分析和可视化的用户来说,上手比较困难。 2. 配置复杂:Kibana的配置比较复杂,需要对数据查询和可视化有一定的了解。 总体来说,ELK Stack 是一个功能强大的日志管理和分析工具,但是对于不熟悉它们的用户来说,学习成本比较高,配置也比较复杂。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值