项目实战-错误日志分析

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 错误日志分析

背景

       任何一个系统在使用的过程中会难免会出现一个错误,但是出现错误之后怎么能够更快速更准确的定位到问题的位置是关键的。这时候就用到了日志,但是更多的工程师只是急于完成功能的开发,而忽略了打印日志信息。其实打印日志信息和开发功能是同等重要的,只有我们在开发功能的时候把打印错误信息配置了,那在以后我们解决发生问题的时候才能提高定位问题的效率。打印日志就相当于程序在和我们说话一样,他会把哪里出现了问题以及为什么出现这种问题都告诉我们,我们解决问题就会更加的容易。如果没有配置错误值日的话,那我们解决问题就像大海捞针一样,非常困难没有头绪。

打印日志好处

1.快速定位问题的位置

2.追踪程序执行的过程

3.记录用户操作的审计日志

4.了解项目的运行状态

错误日志信息

       当我们看到一个错误信息的时候我们需要进一步的分析,就拿下面的错误信息来举例子吧

73b5cb8443414e039e1f721205532194.png

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2023-01-30 10:30:02.865 ERROR 9996 --- [           main] o.s.boot.SpringApplication               : Application run failed
org.springframework.context.ApplicationContextException: Failed to start bean 'webServerStartStop'; nested exception is java.lang.reflect.UndeclaredThrowableException
  at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:185)
  at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:53)
  at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:360)
  at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:158)
  at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:122)
  at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:895)
  at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:554)
  at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
  at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:755)
  at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)
  at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:402)
  at org.springframework.boot.SpringApplication.run(SpringApplication.java:312)
  at org.springframework.boot.SpringApplication.run(SpringApplication.java:1247)
  at org.springframework.boot.SpringApplication.run(SpringApplication.java:1236)
  at com.tfjy.arprobackend.ArBackendApplication.main(ArBackendApplication.java:19)

日志分析过

1、从宏观出发,最先看见的红色部分是提示我们这是个什么样的错误,图中提示的是程序运行失败。

2、我们有了一个大概的了解之后看蓝色部分提示我们错误的类型是什么以及错误类型的地址什么,图中提示的错误类型是ApplicationContextException:应用程序上下文初始化期间引发异常。错误类型的地址是org.springframework.context。

3、看绿色的部分是针对错误类型的一个具体的错误描述:未能启动bean“webServerStartStop”;嵌套异常为java.lang.reflect.UndeclaedThrowableException。

4、看黄色区域的堆栈信息来确定是哪一行代码出现了问题,以及课程发生错误的代码。因为代码之间是有调用关系的,所以堆栈信息会把相关的代码都展示出来,一般处理最上面的一个就可以。


相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
相关文章
|
1月前
|
监控 安全 搜索推荐
使用EventLog Analyzer进行日志取证分析
EventLog Analyzer助力企业通过集中采集、归档与分析系统日志及syslog,快速构建“数字犯罪现场”,精准追溯安全事件根源。其强大搜索功能可秒级定位入侵时间、人员与路径,生成合规与取证报表,确保日志安全防篡改,大幅提升调查效率,为执法提供有力证据支持。
|
6月前
|
存储 运维 监控
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
|
6月前
|
SQL 监控 数据挖掘
SLS 重磅升级:超大规模数据实现完全精确分析
SLS 全新推出的「SQL 完全精确」模式,通过“限”与“换”的策略切换,在快速分析与精确计算之间实现平衡,满足用户对于超大数据规模分析结果精确的刚性需求。标志着其在超大规模日志数据分析领域再次迈出了重要的一步。
511 117
|
3月前
|
监控 安全 NoSQL
【DevOps】Logstash详解:高效日志管理与分析工具
Logstash是ELK Stack核心组件之一,具备强大的日志收集、处理与转发能力。它支持多种数据来源,提供灵活的过滤、转换机制,并可通过插件扩展功能,广泛应用于系统日志分析、性能优化及安全合规等领域,是现代日志管理的关键工具。
515 0
|
5月前
|
自然语言处理 监控 安全
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
阿里云可观测官方发布了Observable MCP Server,提供了一系列访问阿里云可观测各产品的工具能力,包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS等,支持用户通过自然语言形式查询
599 0
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
|
4月前
|
人工智能 运维 监控
Aipy实战:分析apache2日志中的网站攻击痕迹
Apache2日志系统灵活且信息全面,但安全分析、实时分析和合规性审计存在较高技术门槛。为降低难度,可借助AI工具如aipy高效分析日志,快速发现攻击痕迹并提供反制措施。通过结合AI与学习技术知识,新手运维人员能更轻松掌握复杂日志分析任务,提升工作效率与技能水平。
|
7月前
|
存储 消息中间件 缓存
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
306 1
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
|
7月前
|
SQL 存储 自然语言处理
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
142 1
|
9月前
|
机器学习/深度学习 人工智能 运维
智能日志分析:用AI点亮运维的未来
智能日志分析:用AI点亮运维的未来
2833 15
|
9月前
|
SQL 关系型数据库 MySQL
MySQL事务日志-Undo Log工作原理分析
事务的持久性是交由Redo Log来保证,原子性则是交由Undo Log来保证。如果事务中的SQL执行到一半出现错误,需要把前面已经执行过的SQL撤销以达到原子性的目的,这个过程也叫做"回滚",所以Undo Log也叫回滚日志。
400 7
MySQL事务日志-Undo Log工作原理分析