diff --git a/ci-nuget-pack.sh b/ci-nuget-pack.sh new file mode 100755 index 00000000..c71e9c8f --- /dev/null +++ b/ci-nuget-pack.sh @@ -0,0 +1,3 @@ +find . -name "*.nupkg"|xargs rm -rf +dotnet pack --configuration Debug +find . -name "*.nupkg"|xargs -I {} dotnet nuget push "{}" --api-key oy2lf5bairpuqwucpxsa3w2f7hoj7txupek3prt4a2bi5u -s https://api.nuget.org/v3/index.json diff --git a/example/.DS_Store b/example/.DS_Store new file mode 100644 index 00000000..101e85d7 Binary files /dev/null and b/example/.DS_Store differ diff --git a/example/Hummingbird.WebApi/.DS_Store b/example/Hummingbird.WebApi/.DS_Store new file mode 100644 index 00000000..a35c31bf Binary files /dev/null and b/example/Hummingbird.WebApi/.DS_Store differ diff --git a/example/Hummingbird.WebApi/Config/appsettings.json b/example/Hummingbird.WebApi/Config/appsettings.json index 561de570..29f9e110 100644 --- a/example/Hummingbird.WebApi/Config/appsettings.json +++ b/example/Hummingbird.WebApi/Config/appsettings.json @@ -25,10 +25,10 @@ }, "Database": { "SQLServer": { - "Server": "192.168.10.227", - "Database": "zongteng_TMS-dev", - "UserId": "zt-2874-dev", - "Password": "qXSW!9vXYfFxQYbg" + "Server": "localhost", + "Database": "example", + "UserId": "sa", + "Password": "123456" } }, "AppMetrics": { @@ -37,7 +37,7 @@ }, "Influxdb": { "Enable": true, - "Address": "http://influxdb.service.consul:8086", + "Address": "http://localhost:8086", "Database": "AppMetrics", "UserName": "root", "Password": "influxdb", @@ -52,22 +52,22 @@ } }, "EventBus": { - "HostName": "192.168.109.166,test.rabbitmq.service.consul", + "HostName": "localhost", "Port": "5672", "VirtualHost": "/LMS_TEST", - "UserName": "lms_portal_user", - "Password": "lms_portal_user@passw0rd" + "UserName": "guest", + "Password": "123456" }, "Kafka": { "Sender": { "Debug": "broker,topic,msg", - "bootstrap.servers": "192.168.87.7:9092" + "bootstrap.servers": "localhost:9092" }, "Receiver": { "Debug": "consumer,cgrp,topic,fetch", "GroupId": "dev1", - "bootstrap.servers": "192.168.87.7:9092" + "bootstrap.servers": "localhost:9092" } }, "Canal": { @@ -105,15 +105,13 @@ } ] }, - "SERVICE_REGISTRY_ADDRESS": "192.168.109.127", + "SERVICE_REGISTRY_ADDRESS": "localhost", "SERVICE_REGISTRY_PORT": "8500", "SERVICE_SELF_REGISTER": true, - "SERVICE_NAME": "SERVICE_EXAMPLE", - "SERVICE_TAGS": "TEST", + "SERVICE_NAME": "example", + "SERVICE_TAGS": "test", "SERVICE_REGION": "dc1", - //"SERVICE_80_CHECK_HTTP": "/healthcheck", - //"SERVICE_80_CHECK_INTERVAL": "15", - //"SERVICE_80_CHECK_TIMEOUT": "15", + "SERVICE_CHECK_HTTP": "/healthcheck", "SERVICE_CHECK_TCP": null, "SERVICE_CHECK_SCRIPT": null, "SERVICE_CHECK_TTL": "15", diff --git a/example/Hummingbird.WebApi/Controllers/CacheingTestController.cs b/example/Hummingbird.WebApi/Controllers/CacheingTestController.cs index f3d3e179..1701ec0f 100644 --- a/example/Hummingbird.WebApi/Controllers/CacheingTestController.cs +++ b/example/Hummingbird.WebApi/Controllers/CacheingTestController.cs @@ -20,7 +20,7 @@ public CacheingTestController( [HttpGet] [Route("Test")] - public async Task Test() + public string Test() { var cacheKey = "cacheKey"; var cacheValue = cacheManager.StringGet(cacheKey); diff --git a/example/Hummingbird.WebApi/Controllers/OpenTracingTestController.cs b/example/Hummingbird.WebApi/Controllers/OpenTracingTestController.cs index ac040135..2e209321 100644 --- a/example/Hummingbird.WebApi/Controllers/OpenTracingTestController.cs +++ b/example/Hummingbird.WebApi/Controllers/OpenTracingTestController.cs @@ -8,20 +8,7 @@ public class OpenTracingTestController : Controller { - [HttpGet] - [Route("Test")] - public async Task Test() - { - using (Hummingbird.Extensions.Tracing.Tracer tracer = new Hummingbird.Extensions.Tracing.Tracer("Test")) - { - tracer.SetTag("tag1", "value1"); - tracer.SetError(); - tracer.Log("key1", "value1"); - - } - - - } + } diff --git a/example/Hummingbird.WebApi/Events/.DS_Store b/example/Hummingbird.WebApi/Events/.DS_Store new file mode 100644 index 00000000..f0271328 Binary files /dev/null and b/example/Hummingbird.WebApi/Events/.DS_Store differ diff --git a/example/Hummingbird.WebApi/Events/MongoSharkEvent2/MongodbSharkEvent.cs b/example/Hummingbird.WebApi/Events/MongoSharkEvent/MongodbSharkEvent.cs similarity index 100% rename from example/Hummingbird.WebApi/Events/MongoSharkEvent2/MongodbSharkEvent.cs rename to example/Hummingbird.WebApi/Events/MongoSharkEvent/MongodbSharkEvent.cs diff --git a/example/Hummingbird.WebApi/Events/MongoSharkEvent2/MongodbSharkEventHandler.cs b/example/Hummingbird.WebApi/Events/MongoSharkEvent/MongodbSharkEventHandler.cs similarity index 100% rename from example/Hummingbird.WebApi/Events/MongoSharkEvent2/MongodbSharkEventHandler.cs rename to example/Hummingbird.WebApi/Events/MongoSharkEvent/MongodbSharkEventHandler.cs diff --git a/example/Hummingbird.WebApi/Hummingbird.Example.csproj b/example/Hummingbird.WebApi/Hummingbird.Example.csproj index c5a85f06..ecb02556 100644 --- a/example/Hummingbird.WebApi/Hummingbird.Example.csproj +++ b/example/Hummingbird.WebApi/Hummingbird.Example.csproj @@ -1,7 +1,7 @@  - netcoreapp2.2 + netcoreapp3.1 ..\docker-compose.dcproj @@ -20,8 +20,7 @@ - - + diff --git a/example/Hummingbird.WebApi/Program.cs b/example/Hummingbird.WebApi/Program.cs index 938d0a3e..1ede442b 100644 --- a/example/Hummingbird.WebApi/Program.cs +++ b/example/Hummingbird.WebApi/Program.cs @@ -1,11 +1,10 @@ -using Hummingbird.AspNetCore.HealthChecks; +using System.IO; +using Hummingbird.AspNetCore.HealthChecks; using Microsoft.AspNetCore; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Logging; -using System.IO; using Microsoft.Extensions.DependencyInjection; -using Microsoft.AspNetCore.Hosting.Internal; +using Microsoft.Extensions.Logging; namespace Hummingbird.Example { @@ -14,10 +13,6 @@ public class Program public static void Main(string[] args) { BuildWebHost(args).Run(); - - - - } public static IWebHost BuildWebHost(string[] args) => diff --git a/example/Hummingbird.WebApi/Startup.cs b/example/Hummingbird.WebApi/Startup.cs index a384a967..6588d536 100644 --- a/example/Hummingbird.WebApi/Startup.cs +++ b/example/Hummingbird.WebApi/Startup.cs @@ -27,25 +27,30 @@ public Startup(IConfiguration configuration) // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { - services.AddMvc(); + services.AddCors() + .AddMvc(a => a.EnableEndpointRouting = false) + .SetCompatibilityVersion(Microsoft.AspNetCore.Mvc.CompatibilityVersion.Version_3_0) + .AddControllersAsServices(); //全局配置Json序列化处理 + + + services.AddHealthChecks(checks => { checks.WithDefaultCacheDuration(TimeSpan.FromSeconds(5)); - checks.AddMySqlCheck("mysql", "Server=dev.mysql.service.consul;Port=63307;Database=lms_openapi_cn_dev; User=lms-dev;Password=97bL8AtWmlfxQtK10Afg;pooling=True;minpoolsize=1;maxpoolsize=100;connectiontimeout=180;SslMode=None"); - checks.AddSqlCheck("sqlserver", "Data Source=test.sqlserver.service.consul,63341;Initial Catalog=ZT_ConfigCenter_TEST;User Id=tms-test;Password=qtvf12Croexy4cXH7lZB"); + checks.AddMySqlCheck("mysql", "Server=localhost;Port=3306;Database=example; User=root;Password=123456;pooling=True;minpoolsize=1;maxpoolsize=100;connectiontimeout=180;SslMode=None"); checks.AddRedisCheck("redis", Configuration["redis:0:connectionString"]); - checks.AddRabbitMQCheck("rabbitmq", factory => - { - factory.WithEndPoint(Configuration["EventBus:HostName"] ?? "localhost", int.Parse(Configuration["EventBus:Port"] ?? "5672")); - factory.WithAuth(Configuration["EventBus:UserName"] ?? "guest", Configuration["EventBus:Password"] ?? "guest"); - factory.WithExchange(Configuration["EventBus:VirtualHost"] ?? "/"); - }); - checks.AddKafkaCheck("kafka", new Confluent.Kafka.ProducerConfig() - { - Acks = Confluent.Kafka.Acks.All, - //BootstrapServers = "192.168.78.29:9092,192.168.78.30:9092,192.168.78.31:9092", - BootstrapServers = Configuration["Kafka:Sender:bootstrap.servers"] - }); + //checks.AddRabbitMQCheck("rabbitmq", factory => + //{ + // factory.WithEndPoint(Configuration["EventBus:HostName"] ?? "localhost", int.Parse(Configuration["EventBus:Port"] ?? "5672")); + // factory.WithAuth(Configuration["EventBus:UserName"] ?? "guest", Configuration["EventBus:Password"] ?? "guest"); + // factory.WithExchange(Configuration["EventBus:VirtualHost"] ?? "/"); + //}); + //checks.AddKafkaCheck("kafka", new Confluent.Kafka.ProducerConfig() + //{ + // Acks = Confluent.Kafka.Acks.All, + // //BootstrapServers = "192.168.78.29:9092,192.168.78.30:9092,192.168.78.31:9092", + // BootstrapServers = Configuration["Kafka:Sender:bootstrap.servers"] + //}); }); services.AddHummingbird(hummingbird => @@ -175,7 +180,7 @@ public void ConfigureServices(IServiceCollection services) } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. - public void Configure(IApplicationBuilder app, IHostingEnvironment env) + public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { var eventBus = app.ApplicationServices.GetRequiredService(); var logger = app.ApplicationServices.GetRequiredService>(); @@ -188,10 +193,8 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env) { sp.UseSubscriber(eventbus => { - eventbus.RegisterBatch ("", "canal_dwh_test2"); eventbus.RegisterBatch("TestEventHandler", "TestEventHandler"); - eventbus.RegisterBatch("", "mongodb_test.tmstracking.sync_order"); - + //订阅消息 eventbus.Subscribe((Messages) => { @@ -223,9 +226,7 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env) }); }); - app.UseMvc(); - - + } } } \ No newline at end of file diff --git a/example/Test/Program.cs b/example/Test/Program.cs deleted file mode 100644 index 192667f4..00000000 --- a/example/Test/Program.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; - -namespace Test -{ - class Program - { - static void Main(string[] args) - { - - var cache = Hummingbird.Extensions.Cacheing.CacheFactory.Build(option => { - - option.WithReadServerList("127.0.0.1:6379"); - option.WithWriteServerList("127.0.0.1:6379"); - option.WithDb(0); - option.WithNumberOfConnections(1); - }); - - System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch(); - stopwatch.Start(); - var tasks = new List(); - for (int i = 0; i < 5000; i++) - { - tasks.Add(Task.Run(() => - { - cache.StringSet("test", i); - - Console.WriteLine(cache.StringGet("test")); - })); - - - } - - Task.WaitAll(tasks.ToArray()); - - stopwatch.Stop(); - - } - } -} diff --git a/example/Test/Test.csproj b/example/Test/Test.csproj deleted file mode 100644 index 9a0d1da9..00000000 --- a/example/Test/Test.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - Exe - netcoreapp3.1 - - - - - - diff --git a/src/Hummingbird.AspNet.HealthChecks/.DS_Store b/src/Hummingbird.AspNet.HealthChecks/.DS_Store new file mode 100644 index 00000000..09e16558 Binary files /dev/null and b/src/Hummingbird.AspNet.HealthChecks/.DS_Store differ diff --git a/src/Hummingbird.AspNet.HealthChecks/Hummingbird.AspNet.HealthChecks.csproj b/src/Hummingbird.AspNet.HealthChecks/Hummingbird.AspNet.HealthChecks.csproj index 71827524..c0f78636 100644 --- a/src/Hummingbird.AspNet.HealthChecks/Hummingbird.AspNet.HealthChecks.csproj +++ b/src/Hummingbird.AspNet.HealthChecks/Hummingbird.AspNet.HealthChecks.csproj @@ -1,8 +1,8 @@  - net46 - 1.16.0 + net46; + 1.17.0 true diff --git a/src/Hummingbird.AspNetCore.HealthChecks/Hummingbird.AspNetCore.HealthChecks.csproj b/src/Hummingbird.AspNetCore.HealthChecks/Hummingbird.AspNetCore.HealthChecks.csproj index 6dfedf91..ce3b2857 100644 --- a/src/Hummingbird.AspNetCore.HealthChecks/Hummingbird.AspNetCore.HealthChecks.csproj +++ b/src/Hummingbird.AspNetCore.HealthChecks/Hummingbird.AspNetCore.HealthChecks.csproj @@ -1,8 +1,8 @@  - netcoreapp1.0 - 1.16.0 + netstandard2.0 + 1.17.0 true diff --git a/src/Hummingbird.AspNetCore.Metrics/Hummingbird.AspNetCore.Metrics.csproj b/src/Hummingbird.AspNetCore.Metrics/Hummingbird.AspNetCore.Metrics.csproj index 8f06a64c..635332f1 100644 --- a/src/Hummingbird.AspNetCore.Metrics/Hummingbird.AspNetCore.Metrics.csproj +++ b/src/Hummingbird.AspNetCore.Metrics/Hummingbird.AspNetCore.Metrics.csproj @@ -1,7 +1,7 @@  netstandard2.0 - 1.16.0 + 1.17.0 true Hummingbird.AspNetCore.Metrics @@ -17,7 +17,6 @@ - diff --git a/src/Hummingbird.Core/Hummingbird.Core.csproj b/src/Hummingbird.Core/Hummingbird.Core.csproj index 5ff77db5..891718c5 100644 --- a/src/Hummingbird.Core/Hummingbird.Core.csproj +++ b/src/Hummingbird.Core/Hummingbird.Core.csproj @@ -1,19 +1,19 @@  - netcoreapp2.1;netstandard2.0 - 1.16.0 + netcoreapp2.2;netstandard2.0 + 1.17.0 true false Hummingbird.Core guoming - + NETCORE - + diff --git a/src/Hummingbird.DynamicRoute/Hummingbird.DynamicRoute.csproj b/src/Hummingbird.DynamicRoute/Hummingbird.DynamicRoute.csproj index 3d64f484..fb2140a0 100644 --- a/src/Hummingbird.DynamicRoute/Hummingbird.DynamicRoute.csproj +++ b/src/Hummingbird.DynamicRoute/Hummingbird.DynamicRoute.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 true guoming guoming diff --git a/src/Hummingbird.DynamicRoute/IServiceDiscoveryProvider.cs b/src/Hummingbird.DynamicRoute/IServiceDiscoveryProvider.cs index 56c97021..8de4c533 100644 --- a/src/Hummingbird.DynamicRoute/IServiceDiscoveryProvider.cs +++ b/src/Hummingbird.DynamicRoute/IServiceDiscoveryProvider.cs @@ -10,6 +10,8 @@ public interface IServiceDiscoveryProvider void Deregister(); + void Heartbeat(); + string ServiceId { get; } } } diff --git a/src/Hummingbird.Extensions.Cache/Hummingbird.Extensions.Cache.csproj b/src/Hummingbird.Extensions.Cache/Hummingbird.Extensions.Cache.csproj index 8072e430..61cec625 100644 --- a/src/Hummingbird.Extensions.Cache/Hummingbird.Extensions.Cache.csproj +++ b/src/Hummingbird.Extensions.Cache/Hummingbird.Extensions.Cache.csproj @@ -1,23 +1,23 @@  - netcoreapp2.1;net4.6.1; + netcoreapp2.2;net4.6.1; true - 1.16.0 + 1.17.0 https://github.com/guoming/Hummingbird git 分布式缓存 GUOMING - + NETCORE NET461 - + diff --git a/src/Hummingbird.Extensions.Cacheing/Hummingbird.Extensions.Cacheing.csproj b/src/Hummingbird.Extensions.Cacheing/Hummingbird.Extensions.Cacheing.csproj index 73d926c1..d78140e3 100644 --- a/src/Hummingbird.Extensions.Cacheing/Hummingbird.Extensions.Cacheing.csproj +++ b/src/Hummingbird.Extensions.Cacheing/Hummingbird.Extensions.Cacheing.csproj @@ -4,7 +4,7 @@ net4.6.1;net4.5;netstandard2.0 true false - 1.16.0 + 1.17.0 GUOMING GUOMING diff --git a/src/Hummingbird.Extensions.Canal/Hummingbird.Extensions.Canal.csproj b/src/Hummingbird.Extensions.Canal/Hummingbird.Extensions.Canal.csproj index d77a186a..63c0128f 100644 --- a/src/Hummingbird.Extensions.Canal/Hummingbird.Extensions.Canal.csproj +++ b/src/Hummingbird.Extensions.Canal/Hummingbird.Extensions.Canal.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 false true diff --git a/src/Hummingbird.Extensions.Configuration.Json/Hummingbird.Extensions.Configuration.Json.csproj b/src/Hummingbird.Extensions.Configuration.Json/Hummingbird.Extensions.Configuration.Json.csproj index b77f4552..5e7bd93d 100644 --- a/src/Hummingbird.Extensions.Configuration.Json/Hummingbird.Extensions.Configuration.Json.csproj +++ b/src/Hummingbird.Extensions.Configuration.Json/Hummingbird.Extensions.Configuration.Json.csproj @@ -3,7 +3,7 @@ netstandard2.0 true - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.DistributedLock.Redis/Hummingbird.Extensions.DistributedLock.Redis.csproj b/src/Hummingbird.Extensions.DistributedLock.Redis/Hummingbird.Extensions.DistributedLock.Redis.csproj index 789131eb..26e5077b 100644 --- a/src/Hummingbird.Extensions.DistributedLock.Redis/Hummingbird.Extensions.DistributedLock.Redis.csproj +++ b/src/Hummingbird.Extensions.DistributedLock.Redis/Hummingbird.Extensions.DistributedLock.Redis.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 true diff --git a/src/Hummingbird.Extensions.DistributedLock/Hummingbird.Extensions.DistributedLock.csproj b/src/Hummingbird.Extensions.DistributedLock/Hummingbird.Extensions.DistributedLock.csproj index 2f7dd827..a24301d1 100644 --- a/src/Hummingbird.Extensions.DistributedLock/Hummingbird.Extensions.DistributedLock.csproj +++ b/src/Hummingbird.Extensions.DistributedLock/Hummingbird.Extensions.DistributedLock.csproj @@ -4,7 +4,7 @@ netstandard2.0; true false - 1.16.0 + 1.17.0 分布式锁实现 GUOMING GUOMING diff --git a/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulConfig.cs b/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulConfig.cs index 00f97239..127a0566 100644 --- a/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulConfig.cs +++ b/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulConfig.cs @@ -50,27 +50,16 @@ public ConsulConfig() /// /// Http健康检查地址(默认:/healthcheck) /// - public string SERVICE_80_CHECK_HTTP { get; set; } = ""; + public string SERVICE_CHECK_HTTP { get; set; } = "/healthcheck"; /// /// 服务监控检查周期(默认:15s) /// - public string SERVICE_80_CHECK_INTERVAL { get; set; } = "15s"; + public string SERVICE_CHECK_INTERVAL { get; set; } = "15"; /// /// 服务监控检查超时时间(默认:5s) /// - public string SERVICE_80_CHECK_TIMEOUT { get; set; } = "5s"; - - - - /// - /// 服务监控检查周期(默认:15s) - /// - public string SERVICE_CHECK_INTERVAL { get; set; } = "15s"; - /// - /// 服务监控检查超时时间(默认:5s) - /// - public string SERVICE_CHECK_TIMEOUT { get; set; } = "5s"; + public string SERVICE_CHECK_TIMEOUT { get; set; } = "5"; /// /// TCP健康检查 @@ -94,9 +83,7 @@ public void WithConfig(ConsulConfig config) this.SERVICE_SELF_REGISTER =config.SERVICE_SELF_REGISTER; this.SERVICE_REGION = config.SERVICE_REGION; this.SERVICE_NAME = config.SERVICE_NAME; - this.SERVICE_80_CHECK_HTTP = config.SERVICE_80_CHECK_HTTP; - this.SERVICE_80_CHECK_INTERVAL = config.SERVICE_80_CHECK_INTERVAL; - this.SERVICE_80_CHECK_TIMEOUT =config.SERVICE_80_CHECK_TIMEOUT; + this.SERVICE_CHECK_HTTP = config.SERVICE_CHECK_HTTP; this.SERVICE_TAGS = config.SERVICE_TAGS; this.SERVICE_CHECK_SCRIPT = config.SERVICE_CHECK_SCRIPT; this.SERVICE_CHECK_TCP = config.SERVICE_CHECK_TCP; diff --git a/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulServiceDiscoveryProvider.cs b/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulServiceDiscoveryProvider.cs index 2b3dc7c5..fd68ef74 100644 --- a/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulServiceDiscoveryProvider.cs +++ b/src/Hummingbird.Extensions.DynamicRoute.Consul/ConsulServiceDiscoveryProvider.cs @@ -25,6 +25,8 @@ class ConsulServiceDiscoveryProvider : IServiceDiscoveryProvider private readonly ConsulConfig _serviceConfig = new ConsulConfig(); private readonly IConsulClient _client; private readonly List _registrations; + private bool registerCompleted = false; + /**获取ip地址*/ private List getIps() { @@ -138,9 +140,9 @@ public ConsulServiceDiscoveryProvider( { foreach (string item2 in ipList) { - var checks = GetHTTPChecks(uri.Scheme,item2, uri.Port, TimeSpan.FromDays(7)); - checks.AddRange(GetChecksWithoutHttp(item2, uri.Port, TimeSpan.FromDays(7))); - + var checks = new List(); + checks.AddRange(GetHTTPChecks(uri.Scheme, item2, uri.Port)); + AgentServiceRegistration agentServiceRegistration = new AgentServiceRegistration(); agentServiceRegistration.ID = string.IsNullOrEmpty(_serviceConfig.SERVICE_ID) ? $"{_serviceConfig.SERVICE_NAME}:{item2}:{uri.Port}" : $"{_serviceConfig.SERVICE_NAME}:{_serviceConfig.SERVICE_ID}"; agentServiceRegistration.Name = _serviceConfig.SERVICE_NAME; @@ -165,7 +167,7 @@ public ConsulServiceDiscoveryProvider( agentServiceRegistration.Name = _serviceConfig.SERVICE_NAME; agentServiceRegistration.Tags = tags.ToArray(); agentServiceRegistration.EnableTagOverride = true; - agentServiceRegistration.Checks = GetChecksWithoutHttp("", 0, TimeSpan.FromSeconds(10 * double.Parse(_serviceConfig.SERVICE_CHECK_TIMEOUT.TrimEnd('s')))).ToArray(); + agentServiceRegistration.Checks = GetChecksWithoutHttp().ToArray(); _registrations.Add(agentServiceRegistration); } @@ -183,49 +185,45 @@ public ConsulServiceDiscoveryProvider( } } - private List GetHTTPChecks(string schema, string ip, int port, TimeSpan DeregisterCriticalServiceAfter) + private List GetHTTPChecks(string schema, string ip, int port) { List agentServiceChecks = new List(); - if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_80_CHECK_HTTP) && port > 0 && !string.IsNullOrEmpty(ip)) + if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_CHECK_HTTP) && port > 0 && !string.IsNullOrEmpty(ip)) { + var interval = int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL.TrimEnd('s')); + var timeout = int.Parse(_serviceConfig.SERVICE_CHECK_TIMEOUT.TrimEnd('s')); + agentServiceChecks.Add(new AgentServiceCheck { Status = HealthStatus.Critical, - HTTP = $"{schema}://{ip}:{port}/{_serviceConfig.SERVICE_80_CHECK_HTTP.TrimStart('/')}", - Interval = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_80_CHECK_INTERVAL.TrimEnd('s')))), - Timeout = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_80_CHECK_TIMEOUT.TrimEnd('s')))), - DeregisterCriticalServiceAfter = DeregisterCriticalServiceAfter + HTTP = $"{schema}://{ip}:{port}/{_serviceConfig.SERVICE_CHECK_HTTP.TrimStart('/')}", + Interval = TimeSpan.FromSeconds(interval), + Timeout = TimeSpan.FromSeconds(timeout), + DeregisterCriticalServiceAfter = TimeSpan.FromDays(7) }); } return agentServiceChecks; } - private List GetChecksWithoutHttp(string ip, int port, TimeSpan DeregisterCriticalServiceAfter) + private List GetChecksWithoutHttp() { List agentServiceChecks = new List(); + var interval = int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL.TrimEnd('s')); + var timeout = int.Parse(_serviceConfig.SERVICE_CHECK_TIMEOUT.TrimEnd('s')); + var ttl = _serviceConfig.SERVICE_CHECK_TTL.HasValue?_serviceConfig.SERVICE_CHECK_TTL.Value: interval*3; - if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_80_CHECK_HTTP) && port > 0 && !string.IsNullOrEmpty(ip)) - { - agentServiceChecks.Add(new AgentServiceCheck - { - Status = HealthStatus.Critical, - HTTP = $"http://{ip}:{port}/{_serviceConfig.SERVICE_80_CHECK_HTTP.TrimStart('/')}", - Interval = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_80_CHECK_INTERVAL.TrimEnd('s')))), - Timeout = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_80_CHECK_TIMEOUT.TrimEnd('s')))), - DeregisterCriticalServiceAfter = DeregisterCriticalServiceAfter - }); - } - else if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_CHECK_TCP)) + + if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_CHECK_TCP)) { agentServiceChecks.Add(new AgentServiceCheck { Status = HealthStatus.Critical, TCP = _serviceConfig.SERVICE_CHECK_TCP, - Interval = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL.TrimEnd('s')))), - Timeout = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_CHECK_TIMEOUT.TrimEnd('s')))), - DeregisterCriticalServiceAfter = DeregisterCriticalServiceAfter + Interval = TimeSpan.FromSeconds(interval), + Timeout = TimeSpan.FromSeconds(timeout), + DeregisterCriticalServiceAfter = TimeSpan.FromDays(7) }); } else if (!string.IsNullOrEmpty(_serviceConfig.SERVICE_CHECK_SCRIPT)) @@ -234,9 +232,9 @@ private List GetChecksWithoutHttp(string ip, int port, TimeSp { Status = HealthStatus.Critical, Script = _serviceConfig.SERVICE_CHECK_SCRIPT, - Interval = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL.TrimEnd('s')))), - Timeout = new TimeSpan?(TimeSpan.FromSeconds((double)int.Parse(_serviceConfig.SERVICE_CHECK_TIMEOUT.TrimEnd('s')))), - DeregisterCriticalServiceAfter = DeregisterCriticalServiceAfter + Interval = TimeSpan.FromSeconds(interval), + Timeout = TimeSpan.FromSeconds(timeout), + DeregisterCriticalServiceAfter = TimeSpan.FromDays(7) }); } else if (_serviceConfig.SERVICE_CHECK_TTL.HasValue) @@ -244,37 +242,60 @@ private List GetChecksWithoutHttp(string ip, int port, TimeSp agentServiceChecks.Add(new AgentServiceCheck { Status = HealthStatus.Critical, - TTL = new TimeSpan?(TimeSpan.FromSeconds((double)_serviceConfig.SERVICE_CHECK_TTL.Value)), - DeregisterCriticalServiceAfter = DeregisterCriticalServiceAfter + TTL =TimeSpan.FromSeconds(ttl), + DeregisterCriticalServiceAfter = TimeSpan.FromDays(7) }); } return agentServiceChecks; } - private void Heartbeat(List registrations) + public async void Heartbeat() { - if (_serviceConfig.SERVICE_CHECK_TTL.HasValue && !string.IsNullOrEmpty(_serviceConfig.SERVICE_CHECK_INTERVAL)) + if (registerCompleted) { + + var result = await _healthCheckService.CheckHealthAsync(); + var status = result.CheckStatus; + + try { - var timer = new System.Timers.Timer((double)(int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL) * 1000)); - timer.Elapsed += async delegate - + + foreach (var registration in _registrations) { - try + if (registration.Checks.Length > 1) { - var result = await _healthCheckService.CheckHealthAsync(); - var status = result.CheckStatus; - - if (status == CheckStatus.Healthy) + for (int i = 0; i < registration.Checks.Length; i++) { - foreach (var registration in registrations) + if (registration.Checks[i].TTL.HasValue) { try { - await _client.Agent.PassTTL("service:" + registration.ID, result.Description, default(CancellationToken)); - LogDebug("service " + registration.ID + " ttl passing", Array.Empty()); + if (status == CheckStatus.Healthy) + { + + await _client.Agent.PassTTL($"service:{registration.ID}:{i + 1}", "passing", default(CancellationToken)); + + + LogDebug("service " + registration.ID + " ttl passing", Array.Empty()); + } + else if(status== CheckStatus.Warning) + { + await _client.Agent.WarnTTL($"service:{registration.ID}:{i + 1}", "passing", default(CancellationToken)); + + + LogDebug("service " + registration.ID + " ttl warn", Array.Empty()); + + } + else + { + await _client.Agent.FailTTL($"service:{registration.ID}:{i + 1}", "passing", default(CancellationToken)); + + + LogDebug("service " + registration.ID + " ttl warn", Array.Empty()); + + } } catch (Exception ex) { @@ -283,46 +304,47 @@ private void Heartbeat(List registrations) } } } - else if (status == CheckStatus.Warning) + } + else if (registration.Checks.Length == 0) + { + if (registration.Checks[0].TTL.HasValue) { - foreach (var registration in registrations) + try { + if (status == CheckStatus.Healthy) + { - try + await _client.Agent.PassTTL($"service:{registration.ID}", "passing", default(CancellationToken)); + + + LogDebug("service " + registration.ID + " ttl passing", Array.Empty()); + } + else if (status == CheckStatus.Warning) { - await _client.Agent.WarnTTL("service:" + registration.ID, result.Description, default(CancellationToken)); + await _client.Agent.WarnTTL($"service:{registration.ID}", "passing", default(CancellationToken)); + + LogDebug("service " + registration.ID + " ttl warn", Array.Empty()); + } - catch (Exception ex) + else { + await _client.Agent.FailTTL($"service:{registration.ID}", "passing", default(CancellationToken)); + + + LogDebug("service " + registration.ID + " ttl warn", Array.Empty()); - LogWarning(ex, ex.Message); } } - } - else - { - foreach (var registration in registrations) + catch (Exception ex) { - try - { - await _client.Agent.FailTTL("service:" + registration.ID, result.Description, default(CancellationToken)); - LogDebug("service " + registration.ID + " ttl failed", Array.Empty()); - } - catch (Exception ex) - { - LogWarning(ex, ex.Message); - } + LogWarning(ex, ex.Message); } } } - catch (Exception ex) - { - LogError(ex, ex.Message); - } - }; - timer.Start(); + } + } catch (Exception ex) { @@ -331,27 +353,34 @@ private void Heartbeat(List registrations) } } - public void Register() + public async void Register() { - var policy = Policy.Handle().Or().WaitAndRetryForever((int a) => TimeSpan.FromSeconds(5.0), delegate (Exception ex, TimeSpan time) + var policy = Policy.Handle().WaitAndRetryForever((int a) => TimeSpan.FromSeconds(5.0), delegate (Exception ex, TimeSpan time) { _logger.LogError(ex, ex.Message, Array.Empty()); }); foreach (AgentServiceRegistration item3 in _registrations) { - policy.Execute((Func)async delegate + await policy.Execute(async ()=> { LogInformation("service " + item3.ID + " registration", Array.Empty()); - WriteResult ret3 = await _client.Agent.ServiceRegister(item3, default(CancellationToken)); + WriteResult ret3 = await _client.Agent.ServiceRegister(item3, default(CancellationToken)); + if(ret3.StatusCode!= HttpStatusCode.OK) + { + throw new Exception("service {item3.ID} register failed"); + } + else + { + registerCompleted = true; + } + LogInformation($"service {item3.ID} registered. time={ret3.RequestTime},statusCode={ret3.StatusCode}", Array.Empty()); }); } - - Heartbeat(_registrations); } - public void Deregister() + public async void Deregister() { var policy = Policy.Handle().Or().WaitAndRetryForever((int a) => TimeSpan.FromSeconds(5.0), delegate (Exception ex, TimeSpan time) { @@ -360,7 +389,7 @@ public void Deregister() foreach (AgentServiceRegistration item4 in _registrations) { - policy.Execute(async delegate + await policy.Execute(async delegate { _logger.LogInformation("service " + item4.ID + " deregister", Array.Empty()); WriteResult ret2 = await _client.Agent.ServiceDeregister(item4.ID, default(CancellationToken)); diff --git a/src/Hummingbird.Extensions.DynamicRoute.Consul/HostedService/ConsulServiceRegisterHostedService.cs b/src/Hummingbird.Extensions.DynamicRoute.Consul/HostedService/ConsulServiceRegisterHostedService.cs index f992d238..7810c47c 100644 --- a/src/Hummingbird.Extensions.DynamicRoute.Consul/HostedService/ConsulServiceRegisterHostedService.cs +++ b/src/Hummingbird.Extensions.DynamicRoute.Consul/HostedService/ConsulServiceRegisterHostedService.cs @@ -19,7 +19,7 @@ public class ConsulServiceRegisterHostedService : Microsoft.Extensions.Hosting.I private readonly IApplicationLifetime _lifetime; private readonly IServiceProvider _serviceProvider; private readonly IServiceDiscoveryProvider _serviceDiscoveryProvider; - + private readonly System.Timers.Timer _timer; public ConsulServiceRegisterHostedService( IApplicationLifetime lifetime, IServiceProvider serviceProvider, @@ -31,6 +31,8 @@ public ConsulServiceRegisterHostedService( _cancellationTokenSource = new CancellationTokenSource(); _serviceConfig = serviceConfig; _serviceDiscoveryProvider = serviceDiscoveryProvider; + _timer = new System.Timers.Timer((double)(int.Parse(_serviceConfig.SERVICE_CHECK_INTERVAL) * 1000)); + } public async Task StartAsync(CancellationToken cancellationToken) @@ -40,10 +42,17 @@ public async Task StartAsync(CancellationToken cancellationToken) { _serviceDiscoveryProvider.Register(); + _timer.Elapsed += delegate + { + _serviceDiscoveryProvider.Heartbeat(); + }; + _timer.Start(); }); _lifetime.ApplicationStopping.Register(delegate { + _timer.Stop(); _serviceDiscoveryProvider.Deregister(); + }); } diff --git a/src/Hummingbird.Extensions.DynamicRoute.Consul/Hummingbird.Extensions.DynamicRoute.Consul.csproj b/src/Hummingbird.Extensions.DynamicRoute.Consul/Hummingbird.Extensions.DynamicRoute.Consul.csproj index ea13657c..aae39c1e 100644 --- a/src/Hummingbird.Extensions.DynamicRoute.Consul/Hummingbird.Extensions.DynamicRoute.Consul.csproj +++ b/src/Hummingbird.Extensions.DynamicRoute.Consul/Hummingbird.Extensions.DynamicRoute.Consul.csproj @@ -1,14 +1,14 @@  - netcoreapp2.1;netstandard2.0 + netcoreapp2.2;netstandard2.0 true https://github.com/guoming/Hummingbird git 分布式服务注册 - 1.16.0 + 1.17.0 - + NETCORE @@ -19,11 +19,11 @@ - - + + - + ..\..\..\..\..\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.http.abstractions\2.0.1\lib\netstandard2.0\Microsoft.AspNetCore.Http.Abstractions.dll diff --git a/src/Hummingbird.Extensions.EventBus.Kafka/Hummingbird.Extensions.EventBus.Kafka.csproj b/src/Hummingbird.Extensions.EventBus.Kafka/Hummingbird.Extensions.EventBus.Kafka.csproj index aecbda0f..7accf622 100644 --- a/src/Hummingbird.Extensions.EventBus.Kafka/Hummingbird.Extensions.EventBus.Kafka.csproj +++ b/src/Hummingbird.Extensions.EventBus.Kafka/Hummingbird.Extensions.EventBus.Kafka.csproj @@ -5,7 +5,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 true https://github.com/guoming/Hummingbird git diff --git a/src/Hummingbird.Extensions.EventBus.MySqlLogging/Hummingbird.Extensions.EventBus.MySqlLogging.csproj b/src/Hummingbird.Extensions.EventBus.MySqlLogging/Hummingbird.Extensions.EventBus.MySqlLogging.csproj index 9a1bbc30..e24102cb 100644 --- a/src/Hummingbird.Extensions.EventBus.MySqlLogging/Hummingbird.Extensions.EventBus.MySqlLogging.csproj +++ b/src/Hummingbird.Extensions.EventBus.MySqlLogging/Hummingbird.Extensions.EventBus.MySqlLogging.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 Hummingbird.Extensions.EventBus.MySqlLogging Hummingbird.Extensions.EventBus.MySqlLogging true diff --git a/src/Hummingbird.Extensions.EventBus.RabbitMQ/Hummingbird.Extensions.EventBus.RabbitMQ.csproj b/src/Hummingbird.Extensions.EventBus.RabbitMQ/Hummingbird.Extensions.EventBus.RabbitMQ.csproj index cb39e75f..ff41d505 100644 --- a/src/Hummingbird.Extensions.EventBus.RabbitMQ/Hummingbird.Extensions.EventBus.RabbitMQ.csproj +++ b/src/Hummingbird.Extensions.EventBus.RabbitMQ/Hummingbird.Extensions.EventBus.RabbitMQ.csproj @@ -5,7 +5,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 true https://github.com/guoming/Hummingbird git diff --git a/src/Hummingbird.Extensions.EventBus.SqlServerLogging/Hummingbird.Extensions.EventBus.SqlServerLogging.csproj b/src/Hummingbird.Extensions.EventBus.SqlServerLogging/Hummingbird.Extensions.EventBus.SqlServerLogging.csproj index fced59a2..b4f15bd4 100644 --- a/src/Hummingbird.Extensions.EventBus.SqlServerLogging/Hummingbird.Extensions.EventBus.SqlServerLogging.csproj +++ b/src/Hummingbird.Extensions.EventBus.SqlServerLogging/Hummingbird.Extensions.EventBus.SqlServerLogging.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0Hummingbird.Extersions.EventBus.SqlServerLogging + 1.17.0Hummingbird.Extersions.EventBus.SqlServerLogging Hummingbird.Extersions.EventBus.SqlServerLogging true Hummingbird.Extensions.EventBus.SqlServerLogging diff --git a/src/Hummingbird.Extensions.EventBus/Hummingbird.Extensions.EventBus.csproj b/src/Hummingbird.Extensions.EventBus/Hummingbird.Extensions.EventBus.csproj index 6858cf5c..89ca0d6b 100644 --- a/src/Hummingbird.Extensions.EventBus/Hummingbird.Extensions.EventBus.csproj +++ b/src/Hummingbird.Extensions.EventBus/Hummingbird.Extensions.EventBus.csproj @@ -1,12 +1,12 @@  - netcoreapp2.1;netstandard2.0 + netcoreapp2.2;netstandard2.0 true - 1.16.0 + 1.17.0 一致性消息实现 - + NETCORE @@ -17,7 +17,7 @@ - + diff --git a/src/Hummingbird.Extensions.HealthChecks.Kafka/Hummingbird.Extensions.HealthChecks.Kafka.csproj b/src/Hummingbird.Extensions.HealthChecks.Kafka/Hummingbird.Extensions.HealthChecks.Kafka.csproj index 54d34f75..e2c98264 100644 --- a/src/Hummingbird.Extensions.HealthChecks.Kafka/Hummingbird.Extensions.HealthChecks.Kafka.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.Kafka/Hummingbird.Extensions.HealthChecks.Kafka.csproj @@ -4,7 +4,7 @@ netstandard2.0 true false - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.HealthChecks.MongoDb/Hummingbird.Extensions.HealthChecks.MongoDb.csproj b/src/Hummingbird.Extensions.HealthChecks.MongoDb/Hummingbird.Extensions.HealthChecks.MongoDb.csproj index 27a8968e..7b5b12cd 100644 --- a/src/Hummingbird.Extensions.HealthChecks.MongoDb/Hummingbird.Extensions.HealthChecks.MongoDb.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.MongoDb/Hummingbird.Extensions.HealthChecks.MongoDb.csproj @@ -2,7 +2,7 @@ netstandard2.0 https://github.com/guoming/Hummingbird - 1.16.0 + 1.17.0 true diff --git a/src/Hummingbird.Extensions.HealthChecks.MySql/Hummingbird.Extensions.HealthChecks.MySql.csproj b/src/Hummingbird.Extensions.HealthChecks.MySql/Hummingbird.Extensions.HealthChecks.MySql.csproj index 9a37e3ba..6c8b0a02 100644 --- a/src/Hummingbird.Extensions.HealthChecks.MySql/Hummingbird.Extensions.HealthChecks.MySql.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.MySql/Hummingbird.Extensions.HealthChecks.MySql.csproj @@ -4,7 +4,7 @@ netstandard2.0 true false - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.HealthChecks.Rabbitmq/Hummingbird.Extensions.HealthChecks.Rabbitmq.csproj b/src/Hummingbird.Extensions.HealthChecks.Rabbitmq/Hummingbird.Extensions.HealthChecks.Rabbitmq.csproj index eda3837b..55dfb38b 100644 --- a/src/Hummingbird.Extensions.HealthChecks.Rabbitmq/Hummingbird.Extensions.HealthChecks.Rabbitmq.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.Rabbitmq/Hummingbird.Extensions.HealthChecks.Rabbitmq.csproj @@ -4,7 +4,7 @@ netstandard2.0 true false - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.HealthChecks.Redis/Hummingbird.Extensions.HealthChecks.Redis.csproj b/src/Hummingbird.Extensions.HealthChecks.Redis/Hummingbird.Extensions.HealthChecks.Redis.csproj index 7714af5d..d8efbff4 100644 --- a/src/Hummingbird.Extensions.HealthChecks.Redis/Hummingbird.Extensions.HealthChecks.Redis.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.Redis/Hummingbird.Extensions.HealthChecks.Redis.csproj @@ -5,7 +5,7 @@ https://github.com/guoming/Hummingbird git - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.HealthChecks.SqlServer/Hummingbird.Extensions.HealthChecks.SqlServer.csproj b/src/Hummingbird.Extensions.HealthChecks.SqlServer/Hummingbird.Extensions.HealthChecks.SqlServer.csproj index a2fa5751..32b49086 100644 --- a/src/Hummingbird.Extensions.HealthChecks.SqlServer/Hummingbird.Extensions.HealthChecks.SqlServer.csproj +++ b/src/Hummingbird.Extensions.HealthChecks.SqlServer/Hummingbird.Extensions.HealthChecks.SqlServer.csproj @@ -4,7 +4,7 @@ netstandard2.0 true false - 1.16.0 + 1.17.0 diff --git a/src/Hummingbird.Extensions.HealthChecks/Hummingbird.Extensions.HealthChecks.csproj b/src/Hummingbird.Extensions.HealthChecks/Hummingbird.Extensions.HealthChecks.csproj index 3d64f697..25940199 100644 --- a/src/Hummingbird.Extensions.HealthChecks/Hummingbird.Extensions.HealthChecks.csproj +++ b/src/Hummingbird.Extensions.HealthChecks/Hummingbird.Extensions.HealthChecks.csproj @@ -1,9 +1,9 @@  - netstandard1.3 + netstandard2.0;netstandard1.3 Hummingbird.Extensions.HealthChecks - 1.16.0 + 1.17.0 true @@ -12,12 +12,16 @@ - - + + + + + + diff --git a/src/Hummingbird.Extensions.Idempotency/Hummingbird.Extensions.Idempotency.csproj b/src/Hummingbird.Extensions.Idempotency/Hummingbird.Extensions.Idempotency.csproj index 151f6a3c..e97d3aee 100644 --- a/src/Hummingbird.Extensions.Idempotency/Hummingbird.Extensions.Idempotency.csproj +++ b/src/Hummingbird.Extensions.Idempotency/Hummingbird.Extensions.Idempotency.csproj @@ -1,9 +1,9 @@  - netcoreapp2.1 + netcoreapp2.2 true - 1.16.0 + 1.17.0 https://github.com/guoming/Hummingbird git diff --git a/src/Hummingbird.Extensions.OpenTracing/Hummingbird.Extensions.OpenTracing.csproj b/src/Hummingbird.Extensions.OpenTracing/Hummingbird.Extensions.OpenTracing.csproj index 240cca95..b068a411 100644 --- a/src/Hummingbird.Extensions.OpenTracing/Hummingbird.Extensions.OpenTracing.csproj +++ b/src/Hummingbird.Extensions.OpenTracing/Hummingbird.Extensions.OpenTracing.csproj @@ -2,7 +2,7 @@ netstandard2.0 - 1.16.0 + 1.17.0 https://github.com/guoming/Hummingbird true diff --git a/src/Hummingbird.Extensions.OpenTracking.Jaeger/Hummingbird.Extensions.OpenTracking.Jaeger.csproj b/src/Hummingbird.Extensions.OpenTracking.Jaeger/Hummingbird.Extensions.OpenTracking.Jaeger.csproj index 75faca1d..3e43ea8a 100644 --- a/src/Hummingbird.Extensions.OpenTracking.Jaeger/Hummingbird.Extensions.OpenTracking.Jaeger.csproj +++ b/src/Hummingbird.Extensions.OpenTracking.Jaeger/Hummingbird.Extensions.OpenTracking.Jaeger.csproj @@ -2,7 +2,7 @@ netcoreapp2.2 - 1.16.0 + 1.17.0 true https://github.com/guoming/Hummingbird diff --git a/src/Hummingbird.Extensions.Quartz/Hummingbird.Extensions.Quartz.csproj b/src/Hummingbird.Extensions.Quartz/Hummingbird.Extensions.Quartz.csproj index 63ab11f3..e45fe646 100644 --- a/src/Hummingbird.Extensions.Quartz/Hummingbird.Extensions.Quartz.csproj +++ b/src/Hummingbird.Extensions.Quartz/Hummingbird.Extensions.Quartz.csproj @@ -3,7 +3,7 @@ netstandard2.0 true - 1.16.0 + 1.17.0 郭明 true https://github.com/guoming/Hummingbird diff --git a/src/Hummingbird.Extensions.Resilience.Http/Hummingbird.Extensions.Resilience.Http.csproj b/src/Hummingbird.Extensions.Resilience.Http/Hummingbird.Extensions.Resilience.Http.csproj index 5031fb79..18a16eef 100644 --- a/src/Hummingbird.Extensions.Resilience.Http/Hummingbird.Extensions.Resilience.Http.csproj +++ b/src/Hummingbird.Extensions.Resilience.Http/Hummingbird.Extensions.Resilience.Http.csproj @@ -3,7 +3,7 @@ netstandard2.0 Hummingbird.Extersions.Resilience.Http - 1.16.0 + 1.17.0 https://github.com/guoming/Hummingbird https://github.com/guoming/Hummingbird git diff --git a/src/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy.csproj b/src/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy.csproj index 954790af..55927376 100644 --- a/src/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy.csproj +++ b/src/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy/Hummingbird.Extensions.UidGenerator.ConsulWorkIdStrategy.csproj @@ -1,11 +1,11 @@  - netcoreapp2.1;netstandard2.0 - 1.16.0 + netcoreapp2.2;netstandard2.0 + 1.17.0 true - + NETCORE diff --git a/src/Hummingbird.Extensions.UidGenerator/Hummingbird.Extensions.UidGenerator.csproj b/src/Hummingbird.Extensions.UidGenerator/Hummingbird.Extensions.UidGenerator.csproj index ca525b21..9a4b40f0 100644 --- a/src/Hummingbird.Extensions.UidGenerator/Hummingbird.Extensions.UidGenerator.csproj +++ b/src/Hummingbird.Extensions.UidGenerator/Hummingbird.Extensions.UidGenerator.csproj @@ -1,22 +1,22 @@  - netcoreapp2.1;netstandard2.0 + netcoreapp2.2;netstandard2.0 https://github.com/guoming/Hummingbird git 分布式唯一ID生成器 true - 1.16.0 + 1.17.0 - + NETCORE - + diff --git a/src/Hummingbird.LoadBalancers/Hummingbird.LoadBalancers.csproj b/src/Hummingbird.LoadBalancers/Hummingbird.LoadBalancers.csproj index bb617bc2..75fce9c7 100644 --- a/src/Hummingbird.LoadBalancers/Hummingbird.LoadBalancers.csproj +++ b/src/Hummingbird.LoadBalancers/Hummingbird.LoadBalancers.csproj @@ -2,14 +2,14 @@ net4.6.1;net4.5;netstandard2.0 true - 1.16.0 + 1.17.0 - + - +