File tree Expand file tree Collapse file tree
devops-boot-core/devops-service
devops-boot-starter-logging
devops-boot-starter-service Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1111- 提供gradle快速发布插件[ devops-publish-gradle-plugin] ( ./devops-boot-project/devops-boot-tools/devops-publish-gradle-plugin/README.md )
1212- 提供统一版本依赖管理[ devops-boot-dependencies] ( ./devops-boot-project/devops-boot-dependencies/README.md )
1313- 提供多个开箱即用的starter组件
14- - [ logging日志组件] ( ./devops-boot-project/devops-boot-starters/devops-boot-starter-logging/README.md )
15- - TODO
14+ - [ starter-logging] ( ./devops-boot-project/devops-boot-starters/devops-boot-starter-logging/README.md )
15+ - [ starter-api] ( ./devops-boot-project/devops-boot-starters/devops-boot-starter-api/README.md )
16+ - [ starter-web] ( ./devops-boot-project/devops-boot-starters/devops-boot-starter-web/README.md )
17+ - [ starter-service] ( ./devops-boot-project/devops-boot-starters/devops-boot-starter-service/README.md )
18+ - TODO
1619
1720## 快速开始
1821- ** gradle.build.kts**
@@ -59,4 +62,3 @@ devops-framework/
5962## 发行版本
6063- 0.0.1 2020年10月9日
6164- 0.0.2 2020年12月22日
62-
Original file line number Diff line number Diff line change @@ -2,7 +2,6 @@ description = "DevOps Boot Service"
22
33dependencies {
44 api(project(" :devops-boot-project:devops-boot-core:devops-web" ))
5- api(" org.springframework.boot:spring-boot-starter-actuator" )
65 api(" com.squareup.okhttp3:okhttp" )
76 api(" io.github.openfeign:feign-okhttp" )
87 api(" org.springframework.cloud:spring-cloud-starter-openfeign" )
Original file line number Diff line number Diff line change @@ -31,6 +31,9 @@ dependencyManagement {
3131}
3232```
3333
34+ ## 依赖版本列表
35+ 请参考[ build.gradle.kts] ( ./build.gradle.kts ) 的` constraints ` 列表
36+
3437### 参考
3538关于依赖管理的使用详情,请参考官方文档[ dependency-management] ( https://docs.spring.io/dependency-management-plugin/docs/current/reference/html/ )
3639
Original file line number Diff line number Diff line change 1+ # devops-boot-starter-api
2+
3+ ` starter-api ` 组件用于帮助开发者完成api接口的编写
4+
5+ ## 功能介绍
6+ - 规范统一的接口协议并定义统一的` POJO ` 类
7+ - 自动引入` swagger ` 注解需要的相关jar包
8+ - 提供` HTTP ` 相关的常用常量和枚举类
9+
10+ ## 使用方式
11+ - ** build.gradle.kts**
12+
13+ ``` kotlin
14+ implementation(" com.tencent.devops:devops-boot-starter-api" )
15+ ```
16+
17+ - ** build.gradle**
18+
19+ ``` groovy
20+ implementation 'com.tencent.devops:devops-boot-starter-api'
21+ ```
22+
23+ ## 最佳实践
24+
25+ 项目的` api ` 模块包含了对外接口的声明以及数据格式的定义,最终作为二方包或者三方包提供给对外使用,因此需要开发者保持` api ` 模块的精简和规范,否则会引诸多问题,如:
26+ 1 . 不规范的依赖声明方式导致版本依赖冲突
27+ 2 . 引入过多/多余的依赖,导致臃肿
28+ 3 . 在` api ` 模块中暴露敏感信息,如` DO ` 类
29+
30+ ` starter-api ` 组件秉承这一理念,帮助开发者最大化精简和规范` api ` 模块的开发,但开发者仍然需要注意以下事项:
31+ 1 . ` api ` 模块慎重引入依赖,如需引入请考楼` implementation ` 或` comipleOnly ` 方式
32+ 2 . 对于` @RequestMapping ` 、` @FeignClient ` 注解的依赖,使用` comipleOnly ` 的方式依赖
33+ ``` kotlin
34+ compileOnly(" org.springframework.cloud:spring-cloud-openfeign-core" )
35+ ```
36+ 3 . `api`模块保持简洁,只包含和接口声明和数据格式的定义
Original file line number Diff line number Diff line change 11# devops-boot-starter-logging
22
3- logging组件帮助开发者完成日志的快速配置,并统一日志风格 。
3+ logging组件帮助开发者完成日志的快速配置,并统一日志格式 。
44
55## 功能介绍
66 - 基于` slf4j ` +` logback `
77 - 提供` logback ` 基础配置文件,支持` include ` 方式引入
88 - ` base.xml ` 基础属性配置
99 - ` appender.xml ` ` appender ` 配置
1010 - 配置统一的日志打印格式
11- - 配置统一的日志输出为HI
11+ - 配置统一的日志输出位置
1212 - 配置统一的日志切割策略
13+ - 配置统一的异步日志输出
1314 - 约定统一的日志分类方式
1415 - 访问日志: {application}-access.log
1516 - 应用日志: {application}-app.log
@@ -32,4 +33,14 @@ implementation 'com.tencent.devops:devops-boot-starter-logging'
3233
3334| 属性 | 类型 | 默认值 | 说明 |
3435| ------------------ | ------- | ------ | ------------------ |
35- | logging.file.path | string | ./ | 日志输出位置,默认当前目录 |
36+ | logging.file.path | string | ./ | 日志输出位置,默认当前目录 |
37+ | logging.level.\< loggerName\> | string | INFO | 调整` loggerName ` 日志级别, ` root ` 代表所有logger |
38+
39+ ## 说明
40+
41+ logging组件会自动根据不同的` profile ` 应用不同的appender配置
42+
43+ | profile | 初始日志级别 | appender |
44+ | ------------------------- | ----------- | ----------------- |
45+ | ` default ` 、` local ` 、` dev ` | INFO | ` console ` 、` file ` |
46+ | ` test ` 、` prod ` | INFO | ` file ` |
Original file line number Diff line number Diff line change 1+ # devops-boot-starter-service
2+
3+ ` starter-service ` 组件帮助开发者完成与微服务相关的快速配置
4+
5+ ## 功能介绍
6+ - 引入` spring-cloud-starter-openfeign `
7+ - 引入` spring-cloud-starter-consul-discovery `
8+ - 引入` spring-cloud-starter-consul-config `
9+ - 引入` spring-cloud-starter-netflix-hystrix `
10+ - 引入` okhttp ` 并配置feign底层使用` OkHttpClient `
11+ - 配置` hystrix ` 和` ribbon `
12+ - 引入` jackson ` 并完成序列化和反序列化的配置
13+ - 配置自定义` RequestMappingHandlerMapping ` 解决` SpringMVC ` 注解重复扫描问题
14+
15+
16+ ## 使用方式
17+ - ** build.gradle.kts**
18+
19+ ``` kotlin
20+ implementation(" com.tencent.devops:devops-boot-starter-service" )
21+ ```
22+
23+ - ** build.gradle**
24+
25+ ``` groovy
26+ implementation 'com.tencent.devops:devops-boot-starter-service'
27+ ```
28+
29+ ## 模块依赖
30+ ` starter-serivce ` 添加了如下依赖,对于这些模块的依赖不需要重复声明:
31+ - ` com.tencent.devops:devops-boot-starter-web `
Original file line number Diff line number Diff line change 1+ # devops-boot-starter-web
2+
3+ ` starter-web ` 组件帮助开发者完成与web相关的快速配置
4+
5+ ## 功能介绍
6+ - 引入` undertow `
7+ - 引入` spring-boot ` 的` actuator ` 组件
8+ - 引入` springfox-starter ` 并完成` swagger-ui ` 的自动化配置 ** (OpenApi3.0规范)**
9+ - 引入` jackson ` 并完成序列化和反序列化的配置
10+ - 自定义` devops-boot ` 的启动banner
11+ - 提供常用的工具类和方法
12+
13+
14+ ## 使用方式
15+ - ** build.gradle.kts**
16+
17+ ``` kotlin
18+ implementation(" com.tencent.devops:devops-boot-starter-web" )
19+ ```
20+
21+ - ** build.gradle**
22+
23+ ``` groovy
24+ implementation 'com.tencent.devops:devops-boot-starter-web'
25+ ```
26+
27+ ## 模块依赖
28+ ` starter-web ` 添加了如下依赖,对于这些模块的依赖不需要重复声明:
29+ - ` com.tencent.devops:devops-boot-starter-api `
30+ - ` com.tencent.devops:devops-boot-starter-logging `
31+
32+ ## 配置属性
33+
34+ - swagger配置过程中会读取以下配置
35+
36+ | 属性 | 类型 | 默认值 | 说明 |
37+ | ------------------ | ------- | ------ | ------------------ |
38+ | spring.application.name | string | null | 应用名称,swagger会页面展示该值 |
39+ | spring.application.desc | string | null | 应用描述,swagger会页面展示该值 |
40+ | spring.application.version | string | null | 应用版本,swagger会页面展示该值 |
41+
42+ - ` springfox starter ` [ 文档地址] ( http://springfox.github.io/springfox/docs/current/ )
You can’t perform that action at this time.
0 commit comments