• ASP.NET Core分布式日志系统ELK实战演练


    一、ELK简介
     ELK是Elasticsearch、Logstash和Kibana首字母的缩写。这三者均是开源软件,这三套开源工具组合起来形成了一套强大的集中式日志管理平台。

    •  Elasticsearch

    分布式搜索和分析引擎。具有高可伸缩、高可靠和易管理等特点。基于 Apache Lucene 构建,能对大容量的数据进行接近实时的存储、搜索和分析操作。

    •  Logstash

    日志收集器。搜集各种数据源,并对数据进行过滤、分析、格式化等操作,然后存储到 Elasticsearch。

    •  Kibana

    数据分析和可视化平台。与 Elasticsearch 配合使用,对其中数据进行搜索、分析、图表展示。

    •  Filebeat

    一个轻量级开源日志文件数据搜集器,Filebeat 读取文件内容,发送到 Logstash 进行解析后进入 Elasticsearch,或直接发送到 Elasticsearch 进行集中式存储和分析。

    ELK + Filebeat 搭建日志系统 - 简书
     https://www.jianshu.com/p/4c853f80892b

    二、ELK原理介绍
    基于ELK的使用方式,Logstash 作为日志搜集器,Elasticsearch 进行日志存储,Kibana作为日志呈现。

    三、ELK架构介绍
    基于ELK的使用方式,Logstash 作为日志搜集器,Elasticsearch 进行日志存储,Kibana作为日志呈现,大致以下几种架构。

    •  架构一

    Logstash 多个的原因是考虑到程序是分布式架构的情况,每台机器都需要部署一个 Logstash,如果确实是单服务器的情况部署一个 Logstash 即可。

    前面提到 Logstash 会对数据进行分析、过滤、格式化等操作,这一系列操作对服务器的 CPU 和内存资源的消耗都是比较高的,所以这种架构会影响每台服务器的性能,所以并不推荐采用。

    •  架构二

    相比于架构一,增加了一个MQ 和 Logstash, Logstash 的输出和输入支持 Kafka、Redis、RabbitMQ 等常见消息队列, MQ 前的 Logstash 只作为日志收集和传输,并不解析和过滤,先将日志加入队列,由 MQ 后面的

    Logstash 继续解析和过滤,这样就不至于每台服务器消耗资源都很多。

    •  架构三

    这种架构是基于架构二简化来的,实际在使用过程中也是可以采取的,日志直接进入 MQ,Logstash 消费 MQ 数据即可。

    四、ELK简易环境安装
    ES和kibana的版本要一致,不然的话,可能就一步小心的话就会出现掉坑了。

    五、分布式日志解决方案ELK在ASP.NET Core中运用

    六、总结
    6.1、使用ELK必要性(解决运维痛点)

    •  开发人员不能登录线上服务器查看详细日志

    •  各个系统都有日志,日至数据分散难以查找

    •  日志数据量大,查询速度慢,或者数据不够实时

    作者:跟着阿笨一起玩NET
    链接:https://www.jianshu.com/p/8f1364103a8d
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 相关阅读:
    minimsg升级扩展
    一起学习Avalonia(十三)
    @Import注解源码
    Python入门随记(3)
    NET WebApi 后端重定向指定链接
    Net Nlog 持久化到数据库
    NetCore Xunit单元测试依赖注入
    VS 调试时,提示无法启动iis服务器
    NET 反射,对可空类型动态赋值
    MSSQL 查询表结构
  • 原文地址:https://www.cnblogs.com/chenn/p/13377065.html
Copyright © 2020-2023  润新知