对比新文件 |
| | |
| | | package com.iailab.framework.apilog.core.annotation; |
| | | |
| | | import com.iailab.framework.apilog.core.enums.OperateTypeEnum; |
| | | |
| | | import java.lang.annotation.ElementType; |
| | | import java.lang.annotation.Retention; |
| | | import java.lang.annotation.RetentionPolicy; |
| | | import java.lang.annotation.Target; |
| | | |
| | | /** |
| | | * 访问日志注解 |
| | | * |
| | | * @author iailab |
| | | */ |
| | | @Target({ElementType.METHOD}) |
| | | @Retention(RetentionPolicy.RUNTIME) |
| | | public @interface ApiAccessLog { |
| | | |
| | | // ========== 开关字段 ========== |
| | | |
| | | /** |
| | | * 是否记录访问日志 |
| | | */ |
| | | boolean enable() default true; |
| | | /** |
| | | * 是否记录请求参数 |
| | | * |
| | | * 默认记录,主要考虑请求数据一般不大。可手动设置为 false 进行关闭 |
| | | */ |
| | | boolean requestEnable() default true; |
| | | /** |
| | | * 是否记录响应结果 |
| | | * |
| | | * 默认不记录,主要考虑响应数据可能比较大。可手动设置为 true 进行打开 |
| | | */ |
| | | boolean responseEnable() default false; |
| | | /** |
| | | * 敏感参数数组 |
| | | * |
| | | * 添加后,请求参数、响应结果不会记录该参数 |
| | | */ |
| | | String[] sanitizeKeys() default {}; |
| | | |
| | | // ========== 模块字段 ========== |
| | | |
| | | /** |
| | | * 操作模块 |
| | | * |
| | | * 为空时,会尝试读取 {@link io.swagger.v3.oas.annotations.tags.Tag#name()} 属性 |
| | | */ |
| | | String operateModule() default ""; |
| | | /** |
| | | * 操作名 |
| | | * |
| | | * 为空时,会尝试读取 {@link io.swagger.v3.oas.annotations.Operation#summary()} 属性 |
| | | */ |
| | | String operateName() default ""; |
| | | /** |
| | | * 操作分类 |
| | | * |
| | | * 实际并不是数组,因为枚举不能设置 null 作为默认值 |
| | | */ |
| | | OperateTypeEnum[] operateType() default {}; |
| | | |
| | | } |