Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
caopu16
whatsmars
提交
897836b3
W
whatsmars
项目概览
caopu16
/
whatsmars
与 Fork 源项目一致
Fork自
武汉红喜 / whatsmars
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
W
whatsmars
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
897836b3
编写于
7月 17, 2020
作者:
武汉红喜
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
whatsmars-boot-sample-actuator
上级
7d27f628
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
162 addition
and
0 deletion
+162
-0
whatsmars-common/src/main/java/org/hongxi/whatsmars/common/util/SystemUtils.java
...in/java/org/hongxi/whatsmars/common/util/SystemUtils.java
+22
-0
whatsmars-spring-boot-samples/pom.xml
whatsmars-spring-boot-samples/pom.xml
+1
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/README.md
...ing-boot-samples/whatsmars-boot-sample-actuator/README.md
+3
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/pom.xml
...pring-boot-samples/whatsmars-boot-sample-actuator/pom.xml
+36
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/ActuatorAutoConfiguration.java
...smars/boot/sample/actuator/ActuatorAutoConfiguration.java
+19
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/Application.java
...rg/hongxi/whatsmars/boot/sample/actuator/Application.java
+14
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/EnvironmentProcessor.java
.../whatsmars/boot/sample/actuator/EnvironmentProcessor.java
+28
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/filter/ActuatorFilter.java
...whatsmars/boot/sample/actuator/filter/ActuatorFilter.java
+36
-0
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/resources/META-INF/spring.factories
...ple-actuator/src/main/resources/META-INF/spring.factories
+3
-0
未找到文件。
whatsmars-common/src/main/java/org/hongxi/whatsmars/common/util/SystemUtils.java
0 → 100644
浏览文件 @
897836b3
package
org.hongxi.whatsmars.common.util
;
import
org.apache.commons.lang.StringUtils
;
/**
* Created by shenhongxi on 2020/7/17.
*/
public
class
SystemUtils
{
public
static
String
getProperty
(
String
key
)
{
return
System
.
getProperty
(
key
,
System
.
getenv
(
key
));
}
public
static
boolean
contains
(
String
key
)
{
return
StringUtils
.
isNotBlank
(
getProperty
(
key
));
}
public
static
String
getProperty
(
String
key
,
String
def
)
{
String
val
=
getProperty
(
key
);
return
StringUtils
.
isNotBlank
(
val
)
?
val
:
def
;
}
}
whatsmars-spring-boot-samples/pom.xml
浏览文件 @
897836b3
...
...
@@ -24,6 +24,7 @@
<module>
whatsmars-boot-sample-redis
</module>
<module>
whatsmars-boot-sample-mybatis
</module>
<module>
whatsmars-boot-sample-beans
</module>
<module>
whatsmars-boot-sample-actuator
</module>
</modules>
<dependencies>
...
...
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/README.md
0 → 100644
浏览文件 @
897836b3
```
http://localhost:8080/actuator/prometheus?x_token=whatsmars-spring-boot
```
\ No newline at end of file
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/pom.xml
0 → 100644
浏览文件 @
897836b3
<?xml version="1.0" encoding="UTF-8"?>
<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>
whatsmars-spring-boot-samples
</artifactId>
<groupId>
org.hongxi
</groupId>
<version>
Rocket.S8
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
whatsmars-boot-sample-actuator
</artifactId>
<name>
${project.artifactId}
</name>
<packaging>
jar
</packaging>
<description>
Spring Boot Actuator Sample
</description>
<dependencies>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-actuator
</artifactId>
</dependency>
<dependency>
<groupId>
io.micrometer
</groupId>
<artifactId>
micrometer-registry-prometheus
</artifactId>
</dependency>
<dependency>
<groupId>
org.hongxi
</groupId>
<artifactId>
whatsmars-common
</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/ActuatorAutoConfiguration.java
0 → 100644
浏览文件 @
897836b3
package
org.hongxi.whatsmars.boot.sample.actuator
;
import
org.hongxi.whatsmars.boot.sample.actuator.filter.ActuatorFilter
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
/**
* Created by shenhongxi on 2020/7/17.
*/
@Configuration
@ConditionalOnWebApplication
public
class
ActuatorAutoConfiguration
{
@Bean
public
ActuatorFilter
actuatorFilter
()
{
return
new
ActuatorFilter
();
}
}
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/Application.java
0 → 100644
浏览文件 @
897836b3
package
org.hongxi.whatsmars.boot.sample.actuator
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
/**
* Created by shenhongxi on 2020/7/17.
*/
@SpringBootApplication
public
class
Application
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
Application
.
class
,
args
);
}
}
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/EnvironmentProcessor.java
0 → 100644
浏览文件 @
897836b3
package
org.hongxi.whatsmars.boot.sample.actuator
;
import
org.hongxi.whatsmars.common.util.SystemUtils
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.env.EnvironmentPostProcessor
;
import
org.springframework.core.env.ConfigurableEnvironment
;
/**
* Created by shenhongxi on 2020/7/17.
*/
public
class
EnvironmentProcessor
implements
EnvironmentPostProcessor
{
public
static
final
String
PROP_METRICS_INCLUDE
=
"management.endpoints.web.exposure.include"
;
public
static
final
String
PROP_METRICS_TAGS
=
"management.metrics.tags.application"
;
public
static
final
String
PROP_TOMCAT_MBEAN_ENABLED
=
"server.tomcat.mbeanregistry.enabled"
;
@Override
public
void
postProcessEnvironment
(
ConfigurableEnvironment
environment
,
SpringApplication
application
)
{
if
(!
SystemUtils
.
contains
(
PROP_METRICS_INCLUDE
))
{
System
.
setProperty
(
PROP_METRICS_INCLUDE
,
"prometheus"
);
}
if
(!
SystemUtils
.
contains
(
PROP_METRICS_TAGS
))
{
System
.
setProperty
(
PROP_METRICS_TAGS
,
environment
.
getProperty
(
"spring.application.name"
,
"actuator-sample"
));
}
if
(!
SystemUtils
.
contains
(
PROP_TOMCAT_MBEAN_ENABLED
))
{
System
.
setProperty
(
PROP_TOMCAT_MBEAN_ENABLED
,
"true"
);
}
}
}
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/java/org/hongxi/whatsmars/boot/sample/actuator/filter/ActuatorFilter.java
0 → 100644
浏览文件 @
897836b3
package
org.hongxi.whatsmars.boot.sample.actuator.filter
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
javax.servlet.FilterChain
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
* Created by shenhongxi on 2020/7/17.
*/
public
class
ActuatorFilter
extends
OncePerRequestFilter
{
@Override
protected
void
doFilterInternal
(
HttpServletRequest
request
,
HttpServletResponse
response
,
FilterChain
filterChain
)
throws
ServletException
,
IOException
{
if
(
security
(
request
))
{
filterChain
.
doFilter
(
request
,
response
);
}
else
{
response
.
sendError
(
HttpStatus
.
UNAUTHORIZED
.
value
());
}
}
private
boolean
security
(
HttpServletRequest
request
)
{
// 当用requestURI时用 curl http://127.0.0.1:8080/actuator/svg/../prometheus 可以访问
if
(
request
.
getServletPath
()
==
null
)
{
return
true
;
}
if
(!
request
.
getServletPath
().
startsWith
(
"/actuator"
))
{
return
true
;
}
return
"whatsmars-spring-boot"
.
equals
(
request
.
getParameter
(
"x_token"
));
}
}
whatsmars-spring-boot-samples/whatsmars-boot-sample-actuator/src/main/resources/META-INF/spring.factories
0 → 100644
浏览文件 @
897836b3
# Post Processors
org.springframework.boot.env.EnvironmentPostProcessor=\
org.hongxi.whatsmars.boot.sample.actuator.EnvironmentProcessor
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录