Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
d2d71934
Commit
d2d71934
authored
Jul 20, 2015
by
Phillip Webb
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Polish
parent
539b009d
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
27 additions
and
33 deletions
+27
-33
ManagementServerProperties.java
...oot/actuate/autoconfigure/ManagementServerProperties.java
+6
-4
MetricFilterAutoConfiguration.java
.../actuate/autoconfigure/MetricFilterAutoConfiguration.java
+2
-1
MetricsFilter.java
...ngframework/boot/actuate/autoconfigure/MetricsFilter.java
+6
-15
MetricFilterAutoConfigurationTests.java
...ate/autoconfigure/MetricFilterAutoConfigurationTests.java
+13
-13
No files found.
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/autoconfigure/ManagementServerProperties.java
View file @
d2d71934
...
@@ -115,12 +115,14 @@ public class ManagementServerProperties implements SecurityPrerequisite {
...
@@ -115,12 +115,14 @@ public class ManagementServerProperties implements SecurityPrerequisite {
}
}
public
void
setContextPath
(
String
contextPath
)
{
public
void
setContextPath
(
String
contextPath
)
{
this
.
contextPath
=
cleanContextPath
(
contextPath
);
}
private
String
cleanContextPath
(
String
contextPath
)
{
if
(
StringUtils
.
hasText
(
contextPath
)
&&
contextPath
.
endsWith
(
"/"
))
{
if
(
StringUtils
.
hasText
(
contextPath
)
&&
contextPath
.
endsWith
(
"/"
))
{
this
.
contextPath
=
contextPath
.
substring
(
0
,
contextPath
.
length
()
-
1
);
return
contextPath
.
substring
(
0
,
contextPath
.
length
()
-
1
);
}
else
{
this
.
contextPath
=
contextPath
;
}
}
return
contextPath
;
}
}
public
Security
getSecurity
()
{
public
Security
getSecurity
()
{
...
...
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/autoconfigure/MetricFilterAutoConfiguration.java
View file @
d2d71934
...
@@ -46,7 +46,7 @@ import org.springframework.web.servlet.HandlerMapping;
...
@@ -46,7 +46,7 @@ import org.springframework.web.servlet.HandlerMapping;
@ConditionalOnClass
({
Servlet
.
class
,
ServletRegistration
.
class
,
@ConditionalOnClass
({
Servlet
.
class
,
ServletRegistration
.
class
,
OncePerRequestFilter
.
class
,
HandlerMapping
.
class
})
OncePerRequestFilter
.
class
,
HandlerMapping
.
class
})
@AutoConfigureAfter
(
MetricRepositoryAutoConfiguration
.
class
)
@AutoConfigureAfter
(
MetricRepositoryAutoConfiguration
.
class
)
@ConditionalOnProperty
(
name
=
"endpoints.metrics.filter.enabled"
,
matchIfMissing
=
true
)
@ConditionalOnProperty
(
name
=
"endpoints.metrics.filter.enabled"
,
matchIfMissing
=
true
)
public
class
MetricFilterAutoConfiguration
{
public
class
MetricFilterAutoConfiguration
{
@Autowired
@Autowired
...
@@ -59,4 +59,5 @@ public class MetricFilterAutoConfiguration {
...
@@ -59,4 +59,5 @@ public class MetricFilterAutoConfiguration {
public
Filter
metricFilter
()
{
public
Filter
metricFilter
()
{
return
new
MetricsFilter
(
this
.
counterService
,
this
.
gaugeService
);
return
new
MetricsFilter
(
this
.
counterService
,
this
.
gaugeService
);
}
}
}
}
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/autoconfigure/MetricsFilter.java
View file @
d2d71934
...
@@ -30,6 +30,7 @@ import org.springframework.boot.actuate.metrics.GaugeService;
...
@@ -30,6 +30,7 @@ import org.springframework.boot.actuate.metrics.GaugeService;
import
org.springframework.core.Ordered
;
import
org.springframework.core.Ordered
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus.Series
;
import
org.springframework.util.StopWatch
;
import
org.springframework.util.StopWatch
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
org.springframework.web.servlet.HandlerMapping
;
import
org.springframework.web.servlet.HandlerMapping
;
...
@@ -96,10 +97,8 @@ final class MetricsFilter extends OncePerRequestFilter {
...
@@ -96,10 +97,8 @@ final class MetricsFilter extends OncePerRequestFilter {
if
(
bestMatchingPattern
!=
null
)
{
if
(
bestMatchingPattern
!=
null
)
{
return
fixSpecialCharacters
(
bestMatchingPattern
.
toString
());
return
fixSpecialCharacters
(
bestMatchingPattern
.
toString
());
}
}
if
(
is4xxClientError
(
status
))
{
Series
series
=
getSeries
(
status
);
return
UNKNOWN_PATH_SUFFIX
;
if
(
Series
.
CLIENT_ERROR
.
equals
(
series
)
||
Series
.
REDIRECTION
.
equals
(
series
))
{
}
if
(
is3xxRedirection
(
status
))
{
return
UNKNOWN_PATH_SUFFIX
;
return
UNKNOWN_PATH_SUFFIX
;
}
}
return
path
;
return
path
;
...
@@ -120,22 +119,14 @@ final class MetricsFilter extends OncePerRequestFilter {
...
@@ -120,22 +119,14 @@ final class MetricsFilter extends OncePerRequestFilter {
return
result
;
return
result
;
}
}
private
boolean
is4xxClientError
(
int
status
)
{
private
Series
getSeries
(
int
status
)
{
try
{
try
{
return
HttpStatus
.
valueOf
(
status
).
is4xxClientError
();
return
HttpStatus
.
valueOf
(
status
).
series
();
}
}
catch
(
Exception
ex
)
{
catch
(
Exception
ex
)
{
return
false
;
return
null
;
}
}
}
private
boolean
is3xxRedirection
(
int
status
)
{
try
{
return
HttpStatus
.
valueOf
(
status
).
is3xxRedirection
();
}
catch
(
Exception
ex
)
{
return
false
;
}
}
}
private
String
getKey
(
String
string
)
{
private
String
getKey
(
String
string
)
{
...
...
spring-boot-actuator/src/test/java/org/springframework/boot/actuate/autoconfigure/MetricFilterAutoConfigurationTests.java
View file @
d2d71934
...
@@ -16,19 +16,6 @@
...
@@ -16,19 +16,6 @@
package
org
.
springframework
.
boot
.
actuate
.
autoconfigure
;
package
org
.
springframework
.
boot
.
actuate
.
autoconfigure
;
import
static
org
.
hamcrest
.
Matchers
.
equalTo
;
import
static
org
.
junit
.
Assert
.
assertThat
;
import
static
org
.
mockito
.
BDDMockito
.
willAnswer
;
import
static
org
.
mockito
.
BDDMockito
.
willThrow
;
import
static
org
.
mockito
.
Matchers
.
anyDouble
;
import
static
org
.
mockito
.
Matchers
.
anyString
;
import
static
org
.
mockito
.
Matchers
.
eq
;
import
static
org
.
mockito
.
Mockito
.
mock
;
import
static
org
.
mockito
.
Mockito
.
times
;
import
static
org
.
mockito
.
Mockito
.
verify
;
import
static
org
.
springframework
.
test
.
web
.
servlet
.
request
.
MockMvcRequestBuilders
.
get
;
import
static
org
.
springframework
.
test
.
web
.
servlet
.
result
.
MockMvcResultMatchers
.
status
;
import
java.io.IOException
;
import
java.io.IOException
;
import
javax.servlet.Filter
;
import
javax.servlet.Filter
;
...
@@ -60,6 +47,19 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -60,6 +47,19 @@ import org.springframework.web.bind.annotation.RestController;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
org.springframework.web.util.NestedServletException
;
import
org.springframework.web.util.NestedServletException
;
import
static
org
.
hamcrest
.
Matchers
.
equalTo
;
import
static
org
.
junit
.
Assert
.
assertThat
;
import
static
org
.
mockito
.
BDDMockito
.
willAnswer
;
import
static
org
.
mockito
.
BDDMockito
.
willThrow
;
import
static
org
.
mockito
.
Matchers
.
anyDouble
;
import
static
org
.
mockito
.
Matchers
.
anyString
;
import
static
org
.
mockito
.
Matchers
.
eq
;
import
static
org
.
mockito
.
Mockito
.
mock
;
import
static
org
.
mockito
.
Mockito
.
times
;
import
static
org
.
mockito
.
Mockito
.
verify
;
import
static
org
.
springframework
.
test
.
web
.
servlet
.
request
.
MockMvcRequestBuilders
.
get
;
import
static
org
.
springframework
.
test
.
web
.
servlet
.
result
.
MockMvcResultMatchers
.
status
;
/**
/**
* Tests for {@link MetricFilterAutoConfiguration}.
* Tests for {@link MetricFilterAutoConfiguration}.
*
*
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment