Skip to content

背景介绍

每一个服务都会产生日志, 日志对于我们来说非常重要, 总的来说有以下几点的作用:

  • 可以帮助开发人员进一步对代码调试、性能优化以及用户行为分析,最终改进产品质量和用户体验
  • 运维人员排查业务系统相关的问题, 包括业务故障,安全问题,性能问题等
  • 可以帮助BI人员进行数据分析、业务监控和决策支持,汇报决策人员,从而优化业务流程和改进数据驱动决策
  • 推荐人员可以通过相关日志做进一步的分析推荐等

这里总结一下我在一下科技实战过的日志的解决方案, 这里的总结不一定适用于所有的场景, 满足业务需要才是最好的, 最重要的理念是用最合适的技术解决问题, 没有最好, 只有最合适.

具体的安装方式我这里就不说了, 因为安装都比较简单, 也没啥好说的, 这里关键说说架构, 和几个我认为比较重要的关键点.

什么是Elasticsearch?

你知道的,用于数据搜索和分析(这是日志业务核心)

Elasticsearch 是分布式搜索和分析引擎,是 Elastic Stack。Logstash 和 Beats 有助于收集、聚合和 丰富您的数据并将其存储在 Elasticsearch 中。Kibana 使您能够 以交互方式探索、可视化和共享对数据和管理的见解 并监视堆栈。Elasticsearch 是索引、搜索和分析的地方 奇迹发生了。

Elasticsearch 为所有类型的数据提供近乎实时的搜索和分析。无论您 具有结构化或非结构化文本、数字数据或地理空间数据, Elasticsearch 可以以支持快速搜索的方式有效地存储和索引它。 您可以远远超出简单的数据检索和汇总信息来发现 数据中的趋势和模式。随着数据和查询量的增长, Elasticsearch 的分布式特性使您的部署能够无缝扩展 随之而来的。

虽然并非每个问题都是搜索问题,但 Elasticsearch 提供了速度和灵活性 要在各种用例中处理数据,请执行以下操作:

  • 向应用或网站添加搜索框
  • 存储和分析日志、指标和安全事件数据
  • 使用机器学习自动对数据的实际行为进行建模 时间
  • 使用 Elasticsearch 作为存储引擎自动执行业务工作流
  • 使用 Elasticsearch 作为地理信息来管理、集成和分析空间信息信息系统 (GIS)
  • 使用 Elasticsearch 作为生物信息学研究工具存储和处理遗传数据

我们不断对人们使用搜索的新颖方式感到惊讶。但无论 您的用例与其中之一类似,或者您正在使用 Elasticsearch 来处理新的 问题,您在 Elasticsearch 中处理数据、文档和索引的方式是 一样。

Logstash

Logstash是一个日志收集/过滤/转发引擎, 支持多种数据源的输入, 多种正则匹配, 多种输出格式的支持。

Kibana

数据分析和可视化平台。通常与 Elasticsearch 配合使用,对其中数据进行搜索、分析和以统计图表的方式展示。

Filebeat

当面对成百上千、甚至成千上万的服务器、虚拟机和容器生成的日志时,Filebeat可以提供一种轻量型方法,用于转发和汇总日志与文件。 filebeat00.png
fileBeat01.png

当然还可以利用kibana进行数据化展示

参考链接

Filebeat介绍文档