Commit 23a76368 authored by 朱允伟's avatar 朱允伟

<fix> 网关限流添加打印日志

parent 6ed6e111
......@@ -2,6 +2,7 @@ package com.zorkdata.apiservice.gateway.filter;
import com.zorkdata.apiservice.gateway.schedule.ApiLimitCache;
import io.github.bucket4j.Bucket;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.gateway.filter.GatewayFilterChain;
import org.springframework.cloud.gateway.filter.GlobalFilter;
import org.springframework.core.Ordered;
......@@ -10,11 +11,14 @@ import org.springframework.stereotype.Component;
import org.springframework.web.server.ServerWebExchange;
import reactor.core.publisher.Mono;
import java.util.logging.Logger;
/**
* @author zyw
* @create 2021-10-08-18:37
*/
@Component
@Slf4j
public class GatewayFilter implements GlobalFilter, Ordered {
@Override
......@@ -26,8 +30,10 @@ public class GatewayFilter implements GlobalFilter, Ordered {
}
Bucket bucket = ApiLimitCache.BUCKET_CACHE.get(apiName);
if(null == bucket){
log.info("接口:{}没有限流",apiName);
return chain.filter(exchange);
}else {
log.info("接口:{}可用调用次数为{}",apiName,bucket.getAvailableTokens());
if (bucket.tryConsume(1))
{
return chain.filter(exchange);
......
......@@ -41,8 +41,7 @@ public class RefreshApiLimitSchedule {
@Scheduled(cron = "0 0 0/1 * * ?")
@PostConstruct
private void refreshTask() {
log.info("网关限流刷新执行");
String queryResult = restTemplate.getForObject(url, String.class);
try {
JSONObject jo = new JSONObject(queryResult);
......
......@@ -8,8 +8,6 @@ api-service-address:
path: /v1/dataService/**
uri: http://localhost:6725
url: http://localhost:6725/v1/dataService/api/getApiLimit
logging:
file:
path: gatewaylogs
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment