Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
smart_gov_platform
Commits
db8a61d7
Commit
db8a61d7
authored
Aug 19, 2022
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改网关日志
parent
356c858d
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1363 additions
and
549 deletions
+1363
-549
common-lib/src/main/java/com/mortals/xhx/common/pdu/access/AccessLogPdu.java
.../java/com/mortals/xhx/common/pdu/access/AccessLogPdu.java
+1022
-510
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/AccessLogFilter.java
...om/mortals/xhx/base/framework/filter/AccessLogFilter.java
+296
-0
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GatewayResponseFilter.java
...tals/xhx/base/framework/filter/GatewayResponseFilter.java
+1
-1
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GlobalCacheRequestFilter.java
...s/xhx/base/framework/filter/GlobalCacheRequestFilter.java
+2
-2
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GlobalLogFilter.java
...om/mortals/xhx/base/framework/filter/GlobalLogFilter.java
+42
-36
No files found.
common-lib/src/main/java/com/mortals/xhx/common/pdu/access/AccessLogPdu.java
View file @
db8a61d7
This diff is collapsed.
Click to expand it.
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/AccessLogFilter.java
0 → 100644
View file @
db8a61d7
This diff is collapsed.
Click to expand it.
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GatewayResponseFilter.java
View file @
db8a61d7
...
...
@@ -39,7 +39,7 @@ import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.O
* @date: 2022/8/18 13:48
* @description:
**/
@Component
//
@Component
@Slf4j
public
class
GatewayResponseFilter
implements
GlobalFilter
,
Ordered
{
...
...
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GlobalCacheRequestFilter.java
View file @
db8a61d7
...
...
@@ -21,7 +21,7 @@ import reactor.core.publisher.Mono;
* @author: zxfei
* @date: 2022/6/20 16:59
*/
@Component
//
@Component
@Slf4j
public
class
GlobalCacheRequestFilter
implements
GlobalFilter
,
Ordered
{
...
...
@@ -51,6 +51,6 @@ public class GlobalCacheRequestFilter implements GlobalFilter, Ordered {
@Override
public
int
getOrder
()
{
return
HIGHEST_PRECEDENCE
;
return
-
3
;
}
}
smart-gateway/src/main/java/com/mortals/xhx/base/framework/filter/GlobalLogFilter.java
View file @
db8a61d7
...
...
@@ -61,57 +61,63 @@ public class GlobalLogFilter implements GlobalFilter, Ordered {
private
static
final
String
START_TIME
=
"startTime"
;
private
static
final
String
TRACE_ID
=
"traceId"
;
private
static
final
String
SPAN_ID
=
"spanId"
;
private
static
final
String
PSPAN_ID
=
"pspanId"
;
@Override
public
Mono
<
Void
>
filter
(
ServerWebExchange
exchange
,
GatewayFilterChain
chain
)
{
log
.
info
(
"GlobalLogFilter:{}"
,
getOrder
());
MDC
.
put
(
"startTime"
,
String
.
valueOf
(
System
.
currentTimeMillis
()));
//保存请求链路,设置数据追踪id到header中
if
(!
customGatewayProperties
.
getRequestLog
())
{
return
chain
.
filter
(
exchange
);
}
ServerHttpRequest
request
=
exchange
.
getRequest
();
String
path
=
request
.
getPath
().
toString
();
String
method
=
request
.
getMethod
().
name
();
//判断请求类型
String
paramStr
=
""
;
if
(
isJsonRequest
(
request
))
{
//读取请求体后 内容需要重新设置进去
paramStr
=
resolveBodyFromRequest
(
request
);
}
else
{
//非json类型,
MultiValueMap
<
String
,
String
>
parameterMap
=
request
.
getQueryParams
();
paramStr
=
JSON
.
toJSONString
(
parameterMap
);
}
Integer
pspanId
=
0
;
Integer
spanId
=
1
;
String
traceId
=
IdUtil
.
objectId
();
AccessLogPdu
accessLogPdu
=
new
AccessLogPdu
();
accessLogPdu
.
initAttrValue
();
accessLogPdu
.
setAppName
(
appName
);
accessLogPdu
.
setHostName
(
NetUtil
.
getLocalHostName
());
accessLogPdu
.
setLogLevel
(
"INFO"
);
accessLogPdu
.
setRequestIp
(
IpUtils
.
getRealIpAddress
(
exchange
.
getRequest
()));
accessLogPdu
.
setRequestParam
(
paramStr
);
accessLogPdu
.
setLogTime
(
new
Date
());
accessLogPdu
.
setMethod
(
method
);
accessLogPdu
.
setUri
(
path
);
accessLogPdu
.
setTraceID
(
traceId
);
messageProducer
.
syncAccessSend
(
accessLogPdu
);
exchange
.
getAttributes
().
put
(
START_TIME
,
System
.
currentTimeMillis
());
ServerHttpRequest
newRequest
=
exchange
.
getRequest
().
mutate
()
.
header
(
TRACE_ID
,
traceId
)
.
header
(
SPAN_ID
,
pspanId
.
toString
())
.
header
(
PSPAN_ID
,
spanId
.
toString
())
.
build
();
return
chain
.
filter
(
exchange
.
mutate
().
request
(
newRequest
).
build
());
//判断请求类型
// String paramStr ="";
// if (isJsonRequest(request)) {
// //读取请求体后 内容需要重新设置进去
// paramStr = resolveBodyFromRequest(request);
// } else {
// //非json类型,
// MultiValueMap<String, String> parameterMap = request.getQueryParams();
// paramStr=JSON.toJSONString(parameterMap);
// }
// AccessLogPdu accessLogPdu = new AccessLogPdu();
// accessLogPdu.initAttrValue();
// accessLogPdu.setAppName(appName);
// accessLogPdu.setHostName(NetUtil.getLocalHostName());
// accessLogPdu.setLogLevel("INFO");
// accessLogPdu.setRequestIp(IpUtils.getRealIpAddress(exchange.getRequest()));
// accessLogPdu.setRequestData(paramStr);
// accessLogPdu.setLogTime(new Date());
// accessLogPdu.setMethod(method);
// accessLogPdu.setUri(path);
// accessLogPdu.setTraceID(traceId);
// messageProducer.syncAccessSend(accessLogPdu);
//exchange.getAttributes().put(START_TIME, System.currentTimeMillis());
// ServerHttpRequest newRequest = exchange.getRequest().mutate()
// .header(TRACE_ID, traceId)
// .header(TRACE_ID, traceId)
// .header(TRACE_ID, traceId)
// .build();
//
// return chain.filter(exchange.mutate().request(newRequest).build());
}
@Override
public
int
getOrder
()
{
return
0
;
return
-
3
;
}
/**
...
...
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