From ec06a95bc57d9bbf0bf3ccf4b92934138824fab5 Mon Sep 17 00:00:00 2001 From: xiangning Date: Sun, 19 Jul 2026 13:04:24 +0800 Subject: [PATCH] =?UTF-8?q?diag:=20Optional=3Dfalse=20=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E6=9A=B4=E9=9C=B2=20Consul=20=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BuildFlow.Host/Program.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/BuildFlow.Host/Program.cs b/src/BuildFlow.Host/Program.cs index 2db4d27..e79b51a 100644 --- a/src/BuildFlow.Host/Program.cs +++ b/src/BuildFlow.Host/Program.cs @@ -32,13 +32,14 @@ builder.Configuration.AddConsul( // 默认 ConvertConsulKVPairToConfig 把 Consul key 路径(去 buildflow/ 前缀,/ 转 :)作为 IConfiguration key, // 如 buildflow/Jwt:SigningKey → 配置 Jwt:SigningKey,value 直接是密钥字符串。 options.Parser = new SimpleConfigurationParser(); - options.Optional = true; // Consul 不可用不阻断启动,回退本地 appsettings + options.Optional = false; // 诊断期:强制 Consul 必须可用,暴露真实错误 options.ReloadOnChange = true; // KV 变更自动刷新 IConfiguration(热重载基础) // 诊断期:打印 Consul 加载异常(确认后改回 Ignore) options.OnLoadException = ex => { Console.WriteLine($"[Consul] 加载异常: {ex.Exception?.GetType().Name}: {ex.Exception?.Message}"); - ex.Ignore = true; + Console.WriteLine($"[Consul] 堆栈: {ex.Exception?.StackTrace?.Substring(0, System.Math.Min(500, ex.Exception?.StackTrace?.Length ?? 0))}"); + ex.Ignore = false; // 不吞,让异常抛出 }; });