Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

105 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

1. 项目简介

现代系统大规模发展,已经成为 IT 行业的核心部分,支持各种在线服务和智能应用。这些系统大多设计为全天候 24x7 运行,每小时就有约几百 GB(约120至2亿行)大量日志,在系统操作期间记录详细的运行时信息。

此外5G的出现,不仅伴随着数据传输速率的提高、延迟的减少以及设备连接的大规模化,同时也伴随着数据量的增多、微服务的增多等,由此将产生大量的日志数据,这些数据中记录了众多的5G设备运行信息,如何利用这些信息做到日志异常诊断智能化,对于5G时代系统的运维具有重要的意义。

系统发生故障前,其日志通常都具有许多特征反应出系统的异常状态,如果我们能提前发现系统异常,就能避免系统发生更严重的错误。然而在目前大多数系统中,管理员都是在系统出现故障之后,根据日志信息进行排错。这种事后检测会浪费大量的时间和精力,并且不一定能取得很好的效果。

传统的日志分析方法具有速度慢,鲁棒性差,难以适应大型系统等弊端,以迫切需要自动的、基于日志的系统异常检测方案。因此本项目使用机器学习方法来自动化学习,检测,定位日志中可能出现的异常。

2. 项目构建方法

2.1 环境准备

  • 操作系统:Windows/Linux/Mac
  • python>=3.6
  • Flask==1.0.2
  • Flask-Cors==3.0.6
  • numpy==1.18.0
  • scikit-learn==0.19.2
  • scipy==1.1.0
  • tensorboardX==1.9
  • pytorch==1.2.0
  • node.js>=8.11.3

2.2 获取项目

git@github.com:XLab-Tongji/LogAnalysis.git

2.3 导入项目

Open folder "LogAnalysis" with your IDE

3. 项目运行方法

3.1 后端运行
  • cd {project folder}/SE
  • python app.py
3.2 前端运行

4. 项目基本功能

  • 日志清洗
  • 日志聚类
  • 基于log key的异常日志检测
  • 基于log value的异常日志检测
  • 基于workflow的异常日志定位

5. 代码结构说明

5G 5G日志相关文件

k8s k8s日志相关文件

logcluster logcluster聚类工具

Model1 模型一相关代码

log_key_LSTM_train.py 模型一训练

Model2 模型二相关代码

variable_LSTM_train.py 模型二训练

Frontend

src 前端vue.js代码

views 前端页面

router 前端路由

package.json 前端node.js配置文件

public 公共资源

babel.configure.js 前端babel配置文件

Backend

app.py 后端运行

log_processor 数据预处理

log_key_LSTM_train.py 模型一训练

variable_LSTM_train.py 模型二训练

LogPredict.py 日志预测

upload 日志上传

Docs 项目文档

About

No description, website, or topics provided.

Resources

Stars

8 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages