From 5e7a4eea34d0420414e06ff8fb9c1b4ef732029d Mon Sep 17 00:00:00 2001 From: SerLiunx-ctrl <17689543@qq.com> Date: Sat, 15 Jun 2024 22:51:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20feign=E6=96=B0=E5=A2=9E=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=BE=93=E5=87=BA=E3=80=81=E6=B8=85=E7=90=86=E4=BB=A3?= =?UTF-8?q?=E7=A0=81.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 11 +++++++++++ .../ddns/core/instance/AbstractInstance.java | 4 ++++ .../serliunx/ddns/support/SystemInitializer.java | 14 -------------- .../ddns/support/feign/client/IPAddressClient.java | 12 ++++++------ src/main/resources/logback.xml | 1 + 5 files changed, 22 insertions(+), 20 deletions(-) diff --git a/pom.xml b/pom.xml index 40070e6..8a2f614 100644 --- a/pom.xml +++ b/pom.xml @@ -59,6 +59,17 @@ feign-core ${feign.core.version} + + io.github.openfeign + feign-slf4j + ${feign.core.version} + + + org.slf4j + slf4j-api + + + junit junit diff --git a/src/main/java/com/serliunx/ddns/core/instance/AbstractInstance.java b/src/main/java/com/serliunx/ddns/core/instance/AbstractInstance.java index adcb1fe..f7cd758 100644 --- a/src/main/java/com/serliunx/ddns/core/instance/AbstractInstance.java +++ b/src/main/java/com/serliunx/ddns/core/instance/AbstractInstance.java @@ -84,6 +84,10 @@ public abstract class AbstractInstance implements Instance { return; } } + if (ipAddress == null) { + log.error("IP地址获取失败, 无法继续更新记录!"); + return; + } log.debug("正在尝试将记录旧IP: {} 更新为: {}", value, ipAddress); value = ipAddress; run0(); diff --git a/src/main/java/com/serliunx/ddns/support/SystemInitializer.java b/src/main/java/com/serliunx/ddns/support/SystemInitializer.java index 600922a..dab73b2 100644 --- a/src/main/java/com/serliunx/ddns/support/SystemInitializer.java +++ b/src/main/java/com/serliunx/ddns/support/SystemInitializer.java @@ -11,7 +11,6 @@ import com.serliunx.ddns.support.feign.client.entity.IPAddressResponse; import com.serliunx.ddns.thread.TaskThreadFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.slf4j.MDC; import java.io.File; import java.io.InputStream; @@ -19,11 +18,9 @@ import java.io.OutputStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; -import java.util.concurrent.CompletableFuture; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -75,9 +72,6 @@ public final class SystemInitializer implements Refreshable, Clearable { // 初始化线程池 initThreadPool(coreSize); - // 尝试链接dashboard - registerToDashboard(); - // 加载实例(不同的容器加载时机不同) loadInstances(); @@ -177,14 +171,6 @@ public final class SystemInitializer implements Refreshable, Clearable { }, "DDNS-ShutDownHook")); } - private void registerToDashboard() { - CompletableFuture.runAsync(() -> { - - }, scheduledThreadPoolExecutor).whenComplete((r, t) -> { - - }); - } - private void checkAndCloseSafely() { if (scheduledThreadPoolExecutor == null) return; diff --git a/src/main/java/com/serliunx/ddns/support/feign/client/IPAddressClient.java b/src/main/java/com/serliunx/ddns/support/feign/client/IPAddressClient.java index e32a96c..11a3dad 100644 --- a/src/main/java/com/serliunx/ddns/support/feign/client/IPAddressClient.java +++ b/src/main/java/com/serliunx/ddns/support/feign/client/IPAddressClient.java @@ -4,10 +4,10 @@ import com.serliunx.ddns.support.feign.JacksonDecoder; import com.serliunx.ddns.support.feign.JacksonEncoder; import com.serliunx.ddns.support.feign.client.entity.IPAddressResponse; import feign.Feign; -import feign.Request; +import feign.Logger; import feign.RequestLine; - -import java.util.concurrent.TimeUnit; +import feign.Retryer; +import feign.slf4j.Slf4jLogger; /** * 本机外网IP地址获取 @@ -30,11 +30,11 @@ public interface IPAddressClient { static IPAddressClient getInstance() { return Feign.builder() + .logger(new Slf4jLogger()) + .logLevel(Logger.Level.BASIC) + .retryer(Retryer.NEVER_RETRY) .encoder(JacksonEncoder.getInstance()) .decoder(JacksonDecoder.getInstance()) - .options(new Request.Options(10, - TimeUnit.SECONDS, 10, - TimeUnit.SECONDS, true)) .target(IPAddressClient.class, url); } } diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml index 2210ac7..754650b 100644 --- a/src/main/resources/logback.xml +++ b/src/main/resources/logback.xml @@ -11,6 +11,7 @@ +