首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpringBoot AOP 记录操作日志、异常日志

使用SpringBoot AOP 记录操作日志、异常日志 我们在做项目时经常需要对一些重要功能操作记录日志,方便以后跟踪是谁在操作此功能。...我们可以在需要的方法中增加记录日志的代码,和在每个方法中增加记录异常的代码,最终把记录的日志存到数据库中。...Spring AOP 的主要功能就是将日志记录,性能统计,安全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来。...今天我们就来用springBoot Aop 来做日志记录 一、表结构 使用的数据库为 PostgreSql,不同数据库SQL存在差异,自行修改即可。...记录操作日志 在注解的位置切入代码 * @author:tanyp * @dateTime:2021/11/18 14:22 * @Params: [] * @

3.3K30

使用 SpringBoot AOP 记录操作日志、异常日志

来源: cnblogs.com/wm-dv/p/11735828.html 一、创建日志记录表、异常日志表,表结构如下: 二、添加Maven依赖 三、创建操作日志注解类OperLog.java 四、创建切面类记录操作日志...五、在Controller层方法添加@OperLog注解 六、操作日志、异常日志查询功能 ---- 平时我们在做项目时经常需要对一些重要功能操作记录日志,方便以后跟踪是谁在操作此功能;我们在操作某些功能时也有可能会发生异常...,但是每次发生异常要定位原因我们都要到服务器去查询日志才能找到,而且也不能对发生的异常进行统计,从而改进我们的项目,要是能做个功能专门来记录操作日志和异常日志那就好了, 当然我们肯定有方法来做这件事情,...而且也不会很难,我们可以在需要的方法中增加记录日志的代码,和在每个方法中增加记录异常的代码,最终把记录的日志存到数据库中。...记录操作日志 在注解的位置切入代码 59 */ 60 @Pointcut("@annotation(com.hyd.zcar.cms.common.utils.annotation.OperLog

6.8K71
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SpringBoot使用aop记录操作日志

    为了让记录日志更加灵活,我们将使用自定义的注解来实现重要操作的日志记录 一 日志记录表 日志记录表主要包含几个字段,业务模块,操作类型,接口地址,处理状态,错误信息以及操作时间。...', PRIMARY KEY (`id`) ) ENGINE=InnoDB CHARSET=utf8mb4 CHECKSUM=1 COMMENT='操作日志记录' 对应的实体类如下: @Data...{}", exp); } } /** * 获取注解中对方法的描述信息 用于Controller层注解 * * @param log 日志...class AsyncLogService { @Autowired private JdbcTemplate jdbcTemplate; /** * 保存系统日志记录...)){ return -1; } return 1; } } 当然,还可以在数据库中将请求参数和响应结果也进行存储,这样就能看出具体接口的操作记录了

    64510

    如何优雅地记录操作日志?

    操作日志几乎存在于每个系统中,而这些系统都有记录操作日志的一套 API。操作日志和系统日志不一样,操作日志必须要做到简单易懂。...我们主要围绕着如何“优雅”地记录操作日志展开描述,希望对从事相关工作的同学能够有所帮助或者启发。 1. 操作日志的使用场景 2....实现方式 2.1 使用 Canal 监听数据库记录操作日志 2.2 通过日志文件的方式记录 2.3 通过 LogUtil 的方式记录日志 2.4 方法注解实现操作日志 3....,然后根据更改的数据记录操作日志。...当查询业务的操作日志的时候,会查询针对这个订单的的所有操作,所以代码中加上了 OrderNo,记录操作日志的时候需要记录下操作人,所以传了操作人“小明”进来。

    2.2K50

    如何使用SpringBoot AOP 记录操作日志、异常日志?

    重磅干货,第一时间送达 作者:咫尺的梦想_w cnblogs.com/wm-dv/p/11735828.html 平时我们在做项目时经常需要对一些重要功能操作记录日志,方便以后跟踪是谁在操作此功能;我们在操作某些功能时也有可能会发生异常...,但是每次发生异常要定位原因我们都要到服务器去查询日志才能找到,而且也不能对发生的异常进行统计,从而改进我们的项目,要是能做个功能专门来记录操作日志和异常日志那就好了。...当然我们肯定有方法来做这件事情,而且也不会很难,我们可以在需要的方法中增加记录日志的代码,和在每个方法中增加记录异常的代码,最终把记录的日志存到数据库中。...今天我们就来用springBoot Aop 来做日志记录,好了,废话说了一大堆还是上货吧。 一、创建日志记录表、异常日志表,表结构如下: 操作日志表 ? 异常日志表 ?...六、操作日志、异常日志查询功能 ? ? ? ? ? 原文始发于微信公众号(全栈程序员社区):如何使用SpringBoot AOP 记录操作日志、异常日志?

    8.3K30

    如何使用注解优雅的记录操作日志

    写在开头 本文讨论如何优雅的记录操作日志,并且实现了一个SpringBoot Starter(取名log-record-starter),方便的使用注解记录操作日志,并将日志数据推送到指定数据管道(...消息队列等) 本文灵感来源于美团技术团队的文章:如何优雅地记录操作日志?。...:)——蛮三刀酱 本文目录: 什么是操作日志? Java中常见的操作日志实现方式 实战:通过注解实现操作日志的记录 什么是操作日志?...常见的操作日志实现方式 在小型项目中,这种日志记录的操作通常会以提供一个接口或整个日志记录Service来实现。...一、特定操作记录日志:如文章最上面一张CRM系统的图描述的那样,在用户进行了编辑操作后,拿到用户操作的数据,执行日志写入。

    2.9K20

    Grace:优雅高效的的记录业务操作日志

    Grace[ɡreɪs]是一款业务操作日志记录框架,让我们使用更优雅方式来记录有效的、可读性高的操作日志。...q=grace-bom 记录日志 记录日志主要是依靠@GraceRecorder注解来配置,该注解只能在方法上使用。...:判定是否执行记录操作日志,支持使用SpEL表达式方式配置 bizNo:业务编号,支持使用SpEL表达式方式配置 operator:操作日志所关联的操作人,支持使用SpEL表达式方式配置 category...:日志分组,可用于对操作日志进行归类 注意:SpEL表达式使用模板定义前后缀的方式,只有在{}内的字符串才会被解析。...userName; private int age; } 条件判断 @GraceRecorder注解有个condition条件属性,支持SpEL表达式配置,如果配置了该属性,只有表达式解析结果为true时才会记录操作日志

    64910

    Nginx access日志过滤css,jpg,js等日志记录

    介绍 当我们的css,js文件等内容没有通过CDN进行分发时。默认将会通过我们的本地服务器进行加载。例如当前博客网站样式,为了确保稳定。css和js等文件配置全部存储在了本地。...那么我们nginx access日志记录中,就会有大量的重复的css和js文件的日志记录。...可以使用日志筛选记录map进行配置。 PS:上面只是错误的一种写法。并不代表不能用location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ 进行过滤哦。...这个时候我们的access日志就会将以上数据的请求给过滤掉。...配置完毕后,我们的access日志将会少很多日志。 PS:建议养成log日志的阅读习惯。因为日志文档会记录服务器的各种状态。我们可以根据数据进行及时修复和优化服务器配置。

    3.2K20

    操作日志追踪记录之MDC入门

    当需要追踪某个用户在系统中的相关日志记录时,就会变得很麻烦。   一种解决的办法是采用自定义的日志格式,把用户的信息采用某种方式编码在日志记录中。...这种方式的问题在于要求在每个使用日志记录器的类中,都可以访问到用户相关的信息。这样才可能在记录日志时使用。这样的条件通常是比较难以满足的。MDC 的作用是解决这个问题。   ...比如以下但不限于以下场景可以考虑使用MDC来达到目的 1、我们想在日志中体现请求用户IP地址 2、用户使用http客户端的user-agent 3、记录一次处理线程的日志跟踪编号(这个编号目的是为了查询日志方便...使用MDC来记录日志,一来可以规范多开发下日志格式的一致性,二来可以为后续使用ELK对日志进行分析。...MDC恰到好处的让你能够实现在日志上突如其来的一些需求 如果你是个代码洁癖,封装了公司LOG的操作,并且将处理线程跟踪日志号也封装了进去,但只有使用了你封装日志工具的部分才能打印跟踪日志号,其他部分(比如

    7.7K31

    生产环境下的 Node.js 日志记录方案

    Photo by Ugne Vasyliute on Unsplash 设置正确的日志记录基础结构可帮助我们查找发生的问题、调试和监视应用程序。...从最基本的角度来看,我们应该从基础架构中得到以下内容: 能够在我们的日志中自由搜索文本 能够搜索特定的 api 日志 能够根据所有 API 的 statusCode 进行搜索 随着我们向日志中添加更多的数据...应用 我已经创建了一个用于演示的小型 Node.js 程序,你可以在 https://github.com/abhinavdhasmana/logging-using-EFK 中找到。...弹性搜索的截图示例 让我们检查一下如何满足开始时提到的要求: 能够在日志中自由文本搜索: 在 ES 和 kibana 的帮助下,我们可以在任何字段上进行搜索以获得结果。...能够搜索特定的api日志: 在 kibana 左侧的 “Available fields” 部分中,我们可以看到字段 path。对其应用过滤器可以查找我们感兴趣的 API。

    1.1K30

    MySQL 开启慢查询&所有操作记录日志

    是日志记录的位置。...然后重新启动MySQL服务 注意,mysql 5.6版本,记录慢查询日志的配置方式有修改为: long_query_time=2 slow_query_log=1 slow_query_log_file...=/tmp/slow-query.log 另外,可配置记录没有使用索引的查询日志: log_queries_not_using_indexes=1 2、 MySQL 配置文件的位置 Windows:Windows...注:可通过mysql>show full processlist;来查看当前mysql的连接进程; 3、要记录所有操作日志,包括select 在my.ini或my.cnf配置文件,[mysqld]中增加...:log=文件名 例:log=/tmp/mysqlquery.log 重启mysqld,即会把所有相关操作日志都记录下来 注意:log记录的位置,mysql要有写权限; 注意,mysql 5.6版本,记录所有操作日志的配置方式有修改为

    3.4K20

    用 Mongoose 插件记录Node.js API日志

    本教程需要事先了解 mongoose 对象关系映射(ORM)技术【https://mongoosejs.com/】 介绍 随着程序的增长,日志记录成为跟踪所有内容的关键部分。它对于调试目的尤为重要。...现在已经有了 npm 的日志记录模块。这些模块可以将日志存储在不同格式或级别的文件中。我们将使用流行的ORM Mongoose 讨论 Node.js Express 程序中的 API 日志记录。...那么如何创建一个 Mongoose 插件,以更清洁的方式为你进行记录并简化 API 日志? Mongoose 中的插件是什么? 在 Mongoose 中,模式是可插入的。...步骤1:创建基本日志模式模型 让我们创建一个具有以下六个属性的基本日志模式: Action: 按照它的名称,这是 API 的一个动作过程,无论是 create、update、delete还是别的什么。...你可以使用插件执行更多操作来构建健壮的 Node.js 程序。

    2.8K40

    Spring Boot如何利用AOP巧妙记录操作日志?

    走过路过不要错过 点击蓝字关注我们 本篇要点 简要回顾SpringAOP的相关知识点:关键术语,通知类型,切入点表达式等等。 介绍SpringBoot快速启动测试AOP,巧妙打印日志信息。...为了加深印象,这边再做一个简短的回顾: 1、AOP关键术语 ? 切面(Aspect):也就是我们定义的专注于提供辅助功能的模块,比如安全管理,日志信息等。...4、AOP应用场景 记录日志 监控性能 权限控制 事务管理 快速开始 引入依赖 如果你使用的是SpringBoot,那么只需要引入:spring-boot-starter-aop,框架已经将spring-aop.../** * Controller层的日志封装 * @author Summerday */ @Data @ToString public class WebLog implements Serializable...{ private static final long serialVersionUID = 1L; // 操作描述 private String description;

    1.1K10

    Centos记录所有用户登录和操作的详细日志

    1、起因     最近 Linux服务器上一些文件呗篡改,想追查已经查不到记录了,所以得想个办法记录下所有用户的操作记录。     ...一般大家通常会采用history来记录,但是history有个缺陷就是默认是1000行,当然你也可以vim /etc/profile将1000修改成1000000行,但是这只是比较笼统的做法,看不到详细的用户来源已经操作记录...,比如来源ip地址、操作时间、操作用户等。...chown -R admin:admin /var/log/history/admin #给各个用户赋予权限1.2.3. 3、自动记录脚本 在/etc/profile文件的末尾追加编写脚本如下...而每次用户登录到退出都会产生以用户名、登录ip地址、操作时间为文件名的文件,文件里面包含本次用户的所有操作记录。

    3.1K40
    领券