Skip to content

Commit

Permalink
build: 发布 1.2.0 版本
Browse files Browse the repository at this point in the history
  • Loading branch information
houkunlin committed Jul 11, 2024
1 parent aa47812 commit c441d01
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 10 deletions.
36 changes: 31 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@
# 系统日志 Starter

> v1.1.0 起基于 SpringBoot 3.0.0 编译发布,JDK 最低要求 JDK17
>
> v1.2.0 起基于 SpringBoot 3.3.0 编译发布,JDK 最低要求 JDK17
>
> v1.2.0 产生破坏性变更,移除 `AppLogEvent` 事件对象,增加 `AppLogHandler`
> 处理器对象,包名由 `com.houkunlin.system.applog.starter` 改为 `com.houkunlin.system.applog`
**Maven**

Expand All @@ -24,7 +29,9 @@ implementation "com.houkunlin:system-applog-starter:${latest.release}"

## 如何使用

在 Controller 接口中使用 `com.houkunlin.system.applog.starter.AppLog` 注解,示例如下:
### `Controller` 层使用

在 Controller 接口中使用 `com.houkunlin.system.applog.AppLog` 注解,示例如下:

```java
@AppLog("有人获取了用户信息")
Expand Down Expand Up @@ -53,22 +60,41 @@ public Json getUser(){
| type | String | 操作类型(类型需要自行传入) ||
| createdBy | String | 日志创建人 ||

### 在业务代码中的使用示例

示例代码:[src/test/java/com/houkunlin/system/applog/AppLoggerTest.java](src/test/java/com/houkunlin/system/applog/AppLoggerTest.java)

```java
public class Test {
// 获取应用日志对象
public static final AppLogger APP_LOGGER = AppLoggerFactory.getLogger("test");

public void test() {
// 像是使用 SLF4j 日志一样调用接口
APP_LOGGER.log("Hello World"); // Hello World
APP_LOGGER.log("Hello World {}", 12); // Hello World 12
APP_LOGGER.log("Hello World {}", new RuntimeException("ERROR")); // Hello World ERROR
APP_LOGGER.logBiz("bizId", "Hello World"); // bizId:bizId; Hello World
APP_LOGGER.logBiz("bizId", "Hello World {}", 12); // bizId:bizId; Hello World 12
APP_LOGGER.logBiz("bizId", "Hello World {}", new RuntimeException("ERROR")); // bizId:bizId; Hello World ERROR
}
}
```

## 如何把日志存入到数据库中

日志会封装成 `com.houkunlin.system.applog.starter.AppLogInfo` 对象传给其他系统
日志会封装成 `com.houkunlin.system.applog.AppLogInfo` 对象传给其他系统

### 本地存储

实现 `com.houkunlin.system.applog.starter.store.AppLogStore` 接口并扫描到SpringBoot环境中
实现 `com.houkunlin.system.applog.AppLogHandler` 接口并扫描到SpringBoot环境中,自行实现日志信息存储



### 与其他系统协同,把日志存入其他系统

依赖 Rabbitmq 环境,自行监听 Rabbitmq 消息队列数据,从 `com.houkunlin.system.applog.starter.AppLogProperties.mqQueue` 队列中获取日志数据。
示例代码
依赖 Rabbitmq 环境,自行监听 Rabbitmq 消息队列数据,从 `com.houkunlin.system.applog.AppLogProperties.mqQueue` 队列中获取日志数据。
示例代码(仅供参考)

```java
@RabbitListener(queues = "#{appLogProperties.mqQueue}")
Expand Down
6 changes: 1 addition & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ plugins {
}

group = 'com.houkunlin'
version = '1.2.0-BUILD-SNAPSHOT'// -BUILD-SNAPSHOT
version = '1.2.0'// -BUILD-SNAPSHOT

description = """
使用 AppLog 注解记录日志信息,或者使用 AppLoggerFactory.getLogger(name) 这种类似 Slf4J 的形式记录日志信息。
Expand Down Expand Up @@ -46,10 +46,6 @@ dependencies {
testImplementation 'org.springframework.boot:spring-boot-starter-aop'
testCompileOnly 'org.springframework.boot:spring-boot-starter-amqp'

// https://mvnrepository.com/artifact/com.google.guava/guava
api 'com.google.guava:guava:33.2.1-jre'
api 'org.javers:javers-core:6.7.1'

annotationProcessor 'org.projectlombok:lombok-mapstruct-binding:0.2.0'
testAnnotationProcessor 'org.projectlombok:lombok-mapstruct-binding:0.2.0'

Expand Down

0 comments on commit c441d01

Please sign in to comment.