日志收集机制和日志处理流程规范

news/2024/10/31 1:34:26/

本博客地址:https://security.blog.csdn.net/article/details/130792958

一、日志收集与处理流程

云原生平台中对日志提取收集以及分析处理的流程与传统日志处理模式大致是一样的,包括收集ETL索引存储检索关联可视化分析报告这9个步骤。

具体如下:

1、收集:从分散的数据来源中进行日志数据汇总、解析和清理、为缺少的值插入默认值等操作,对不相关的条目进行丢弃处理。

2、ETL(Extract、Transform、Load):数据准备阶段,包括清除不良条目、重新格式化和规范化这几个过程。

3、索引:为了加快后续查询速度,为日志数据建立索引,可以为数据中的所有字段都进行索引,也可以为部分字段进行索引。

4、存储:将大量的日志数据高效地存储到日志系统中,为了确保存储的速度以及日后分析的便利性,需要利用可横向扩展的动态结构化存储系统。

5、检索:对存储在大规模日志数据系统中的数据进行灵活、快速的数据查询。

6、关联:在进行数据分析以揭示隐藏在数据背后的关键信息之前,对数据的关联性进行标识,标识的过程包括定义数据集字段之间的关联关系、人工对数据进行基础分类等。

7、可视化:使用图形、仪表板和其他方式直观地进行辅助数据展示,便于理解。

8、分析:将日志数据切片和切块,并在其中应用分析算法,通过数据分析算法来获知安全趋势、安全行为模式以及进行安全风险洞察。

9、报告:阶段性地或临时性地输出报告,报告中展示分析结论。

二、日志处理流程软件架构

与日志处理流程相关的软件架构有日志源、日志处理和存储、日志查询展示和日志分析这几部分,它们的配合关系如图:

在这里插入图片描述

图中,整个日志处理系统都运行在云原生平台里,包括日志采集器、日志分析和日志存储、数据分析和日志查询组件。

1、标号①的几个位置显示的是日志采集器的工作原理,日志采集器运行在Kubernetes集群的每个节点内,负责采集系统日志以及集群事件信息。此外日志采集器还负责采集应用层的日志以及中间件等外部资源的日志。日志采集器的实现技术有filebeat、logstash等。

2、标号②的位置,日志采集器将收集到的日志统一送往日志分析和处理中心,日志分析和处理中心负责对日志进行预处理、建立索引等操作。常见的日志分析和处理服务有ElasticSearch和Splunk。

3、标号③的位置,日志分析和处理中心将日志写到云原生平台的共享存储中。

4、标号④的位置是数据分析组件。数据分析组件对日志运行分析算法,可能采用的算法种类有离线分析、实时分析和机器学习分析。分析的结果存入专门的数据库。

5、标号⑤的位置,最后通过日志查询和报表平台对存储的日志以及数据分析结果进行汇总展示,常用的日志可视化查询工具有Kibana和Grafana。Kibana对ElasticSearch有较好的支持,Grafana是CNCF社区中使用广泛的监控和日志可视化组件。


http://www.ppmy.cn/news/78443.html

相关文章

缓存被穿透了怎么办?

首先来了解几个概念: 缓存穿透:大量请求根本不存在的key 缓存雪崩:redis中大量key集体过期 缓存击穿:redis中一个热点key过期(大量用户访问该热点key,但是热点key过期) 穿透解决方案 对空值…

Ruby教程_编程入门自学教程_菜鸟教程-免费教程分享

教程简介 Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 L…

离线安装python、pip和python的第三方库

1.安装python3 1.1下载python3 安装python3的网址为点击这里 选择想要下载的对应版本进行下载,这里使用的是63位的Windows系统,因此下载的选的是: 下载后如图: python-3.7.9-amd64.exe是python3的安装程序 1.2安装python3 1…

SQL学习日记

目录 一、数据定义(create,alter,drop) 1.1数据类型 补充注释 1.2定义基本表(create,alter,drop) 1.3约束 1.3.1主键约束 1.3.2外码约束 ​编辑 补充CASCADE 关键字 1.3.3…

Linux---文件操作命令(cp、mv、rm)

1. cp命令 cp命令可以用于复制文件\文件夹,cp命令来自英文单词:copy。 语法:cp [选项] 参数1 参数2 参数1:Linux路径,表示被复制的文件或文件夹 参数2:Linux路径,表示要复制去的地方 选…

辨析读写json文件常用json.loads()、json.load()和json.dumps()、json.dump()区别及ensure_ascii参数

目录 写在前面一、loads 和 load1.1 loads解释及代码实例1.2 load解释及代码实例 二、dumps 和 dump2.1 dumps解释及代码实例2.2 dump解释及代码实例2.3 ensure_ascii参数(Ture or False) 写在前面 一句话概括 json.loads 接受字符串 json.load 接受文…

大数运算(加法,减法,乘法,除法)

目录 一.大数加法 1.题目描述 2.问题分析 3.代码实现 二.大数减法 1.题目描述 2.问题分析 3.代码实现 三.大数乘法 1.题目描述 2.问题分析 3.代码实现 四.大数除法 1.题目描述 2.问题分析 3.代码实现 一.大数加法 1.题目描述 以字符串的形式读入两个数字&#…

mapreduce技术

要实现操作hbase数据表首先要了解它的原理: 1,Hbase原理篇 HBASE就是基于Hadoop的一个开源项目,也是对Google的BigTable的一种实现。 BigTable最浅显来看就是一张很大的表,表的属性可以根据需求去动态增加,但是又没有表与表之间…