Merge branch 'feature/REQ-3282' into 'master'
Feature/req 3282 See merge request universal/infrastructure/backend/axzo-log-plat!143
This commit is contained in:
commit
a2c484c50b
43
axzo-log-api-v2/pom.xml
Normal file
43
axzo-log-api-v2/pom.xml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<artifactId>axzo-log-plat</artifactId>
|
||||||
|
<groupId>cn.axzo.platform</groupId>
|
||||||
|
<version>1.0.0-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<artifactId>axzo-log-api-v2</artifactId>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
<name>axzo-log-api-v2</name>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>cn.axzo.foundation</groupId>
|
||||||
|
<artifactId>common-lib</artifactId>
|
||||||
|
<version>2.0.0-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.projectlombok</groupId>
|
||||||
|
<artifactId>lombok</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba</groupId>
|
||||||
|
<artifactId>fastjson</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.validation</groupId>
|
||||||
|
<artifactId>validation-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
</project>
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package cn.axzo.platform.api.config;
|
||||||
|
|
||||||
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author : zhanghonghao@axzo.cn
|
||||||
|
* @since : 2024/12/10
|
||||||
|
*/
|
||||||
|
@Configuration
|
||||||
|
@EnableFeignClients(basePackages = "cn.axzo.platform.api.**.feign")
|
||||||
|
public class LogPlatApiV2Config {
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
package cn.axzo.platform.api.log.feign;
|
||||||
|
|
||||||
|
import cn.axzo.foundation.result.ApiResult;
|
||||||
|
import cn.axzo.platform.api.log.req.LogAddV2Req;
|
||||||
|
import cn.axzo.platform.api.log.req.LogBatchAddV2Req;
|
||||||
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@FeignClient(
|
||||||
|
value = "log-plat",
|
||||||
|
url = "${axzo.service.log-plat:http://log-plat:8080}"
|
||||||
|
)
|
||||||
|
public interface LogV2Api {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加日志
|
||||||
|
*
|
||||||
|
* @param req 日志信息 {@link LogAddV2Req}
|
||||||
|
* @return 日志id
|
||||||
|
*/
|
||||||
|
@PostMapping(value = "/api/log/add/v2", consumes = "application/json")
|
||||||
|
ApiResult<String> addLog(@RequestBody @Validated LogAddV2Req req);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量添加日志
|
||||||
|
*
|
||||||
|
* @param req 日志列表 {@link LogBatchAddV2Req}
|
||||||
|
* @return 日志id列表
|
||||||
|
*/
|
||||||
|
@PostMapping(value = "/api/log/add/batch/v2", consumes = "application/json")
|
||||||
|
ApiResult<List<String>> batchAddLogs(@RequestBody @Validated LogBatchAddV2Req req);
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,45 @@
|
|||||||
|
package cn.axzo.platform.api.log.req;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotBlank;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增日志请求参数
|
||||||
|
*
|
||||||
|
* @author chenwenjian
|
||||||
|
* @version 1.0
|
||||||
|
* @date 2024/9/11 10:51
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class LogAddV2Req {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 场景
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "scene is required")
|
||||||
|
private String scene;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 日志级别, DEBUG, INFO, WARN, ERROR
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "level is required")
|
||||||
|
private String level;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 日志标签,建议可以将服务名称、操作等信息作为tag
|
||||||
|
*/
|
||||||
|
private List<String> tags;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 日志内容,需要是json格式
|
||||||
|
*/
|
||||||
|
private String message;
|
||||||
|
}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
package cn.axzo.platform.api.log.req;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author chenwenjian
|
||||||
|
* @version 1.0
|
||||||
|
* @date 2024/9/12 10:56
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class LogBatchAddV2Req {
|
||||||
|
|
||||||
|
@NotEmpty(message = "logs is required")
|
||||||
|
@Valid
|
||||||
|
private List<LogAddV2Req> logs;
|
||||||
|
}
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
||||||
|
cn.axzo.platform.api.config.LogPlatApiV2Config
|
||||||
@ -5,6 +5,7 @@
|
|||||||
<groupId>cn.axzo.platform</groupId>
|
<groupId>cn.axzo.platform</groupId>
|
||||||
<version>1.0.0-SNAPSHOT</version>
|
<version>1.0.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
<artifactId>axzo-log-api</artifactId>
|
<artifactId>axzo-log-api</artifactId>
|
||||||
|
|||||||
@ -74,7 +74,6 @@
|
|||||||
<scope>runtime</scope>
|
<scope>runtime</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!--mybatis-plus-->
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.baomidou</groupId>
|
<groupId>com.baomidou</groupId>
|
||||||
<artifactId>mybatis-plus-boot-starter</artifactId>
|
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||||
@ -113,11 +112,6 @@
|
|||||||
<artifactId>maokai-api</artifactId>
|
<artifactId>maokai-api</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- <dependency>
|
|
||||||
<groupId>cn.axzo.basics</groupId>
|
|
||||||
<artifactId>basics-organizational-api</artifactId>
|
|
||||||
</dependency>-->
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>cn.axzo.apollo</groupId>
|
<groupId>cn.axzo.apollo</groupId>
|
||||||
<artifactId>apollo-workspace-api</artifactId>
|
<artifactId>apollo-workspace-api</artifactId>
|
||||||
@ -173,7 +167,12 @@
|
|||||||
<artifactId>graphql-java-tools</artifactId>
|
<artifactId>graphql-java-tools</artifactId>
|
||||||
<version>5.2.4</version>
|
<version>5.2.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>cn.axzo.platform</groupId>
|
||||||
|
<artifactId>axzo-log-api-v2</artifactId>
|
||||||
|
<version>1.0.0-SNAPSHOT</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
@ -0,0 +1,39 @@
|
|||||||
|
package cn.axzo.log.platform.server.controller.api.v2;
|
||||||
|
|
||||||
|
import cn.axzo.foundation.result.ApiResult;
|
||||||
|
import cn.axzo.log.platform.client.model.req.LogAddReq;
|
||||||
|
import cn.axzo.log.platform.client.model.req.LogBatchAddReq;
|
||||||
|
import cn.axzo.log.platform.server.service.LogService;
|
||||||
|
import cn.axzo.platform.api.log.feign.LogV2Api;
|
||||||
|
import cn.axzo.platform.api.log.req.LogAddV2Req;
|
||||||
|
import cn.axzo.platform.api.log.req.LogBatchAddV2Req;
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author : zhanghonghao@axzo.cn
|
||||||
|
* @since : 2024/12/13
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class LogV2ApiController implements LogV2Api {
|
||||||
|
|
||||||
|
private final LogService logService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult<String> addLog(LogAddV2Req req) {
|
||||||
|
LogAddReq addReq = BeanUtil.copyProperties(req, LogAddReq.class);
|
||||||
|
String result = logService.addLog(addReq);
|
||||||
|
return ApiResult.success(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult<List<String>> batchAddLogs(LogBatchAddV2Req req) {
|
||||||
|
LogBatchAddReq addReq = BeanUtil.copyProperties(req, LogBatchAddReq.class);
|
||||||
|
List<String> resultList = logService.batchAddLogs(addReq);
|
||||||
|
return ApiResult.success(resultList);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user