提交 9bcbac9c 编写于 作者: 麦壳饼's avatar 麦壳饼

1. 加入涛思时序数据库的健康检查,2. 修正前端不能使用基于websocket mqtt 的文图

上级 ce53e8fd
......@@ -47,7 +47,8 @@ namespace IoTSharp
options.WithPersistentSessions();
options.Build();
});
services.AddMqttConnectionHandler();
services.AddMqttConnectionHandler()
.AddConnections();
services.AddMqttWebSocketServerAdapter();
services.AddSingleton<MQTTServerHandler>();
}
......@@ -104,7 +105,7 @@ namespace IoTSharp
.WithClientId(setting.MqttBroker)
.WithTcpServer((setting.MqttBroker == "built-in" || string.IsNullOrEmpty(setting.MqttBroker)) ? "127.0.0.1" : setting.MqttBroker, setting.Port)
.WithCredentials(setting.UserName, setting.Password)
.WithCleanSession()//.WithProtocolVersion (MQTTnet.Formatter.MqttProtocolVersion.V500)
.WithCleanSession()
.Build());
}
}
......
......@@ -32,22 +32,28 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AspNetCore.HealthChecks.Kafka" Version="3.1.3" />
<PackageReference Include="AspNetCore.HealthChecks.MongoDb" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.Network" Version="3.1.3" />
<PackageReference Include="AspNetCore.HealthChecks.NpgSql" Version="3.1.1" />
<PackageReference Include="AspNetCore.HealthChecks.Rabbitmq" Version="3.1.4" />
<PackageReference Include="AspNetCore.HealthChecks.Redis" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.System" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.UI" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.UI" Version="3.1.3" />
<PackageReference Include="AspNetCore.HealthChecks.UI.Client" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.UI.PostgreSQL.Storage" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.Uris" Version="3.1.2" />
<PackageReference Include="AspNetCore.HealthChecks.Network" Version="3.1.3" />
<PackageReference Include="AspNetCore.HealthChecks.NpgSql" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.Dashboard" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.InMemoryStorage" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.Kafka" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.MongoDB" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.PostgreSql" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP.RabbitMQ" Version="3.1.0" />
<PackageReference Include="DotNetCore.CAP" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.Dashboard" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.InMemoryStorage" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.Kafka" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.MongoDB" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.PostgreSql" Version="3.1.1" />
<PackageReference Include="DotNetCore.CAP.RabbitMQ" Version="3.1.1" />
<PackageReference Include="EFCore.Sharding" Version="3.1.6.14" />
<PackageReference Include="EFCore.Sharding.PostgreSql" Version="3.1.6.14" />
<PackageReference Include="IoTSharp.CoAP.NET" Version="2.0.8" />
......@@ -56,7 +62,8 @@
<PackageReference Include="LiteDB" Version="5.0.9" />
<PackageReference Include="MaiKeBing.CAP.LiteDB" Version="1.0.19" />
<PackageReference Include="MaiKeBing.CAP.ZeroMQ" Version="1.0.19" />
<PackageReference Include="Maikebing.Data.Taos" Version="2.0.141" />
<PackageReference Include="Maikebing.Data.Taos" Version="2.0.144" />
<PackageReference Include="Maikebing.HealthChecks.Taos" Version="2.0.144" />
<PackageReference Include="MaiKeBing.HostedService.ZeroMQ" Version="1.0.19" />
<PackageReference Include="Microsoft.AspNetCore.Http.Features" Version="3.1.8" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.8">
......
......@@ -141,7 +141,7 @@ namespace IoTSharp
services.AddIoTSharpMqttServer(settings.MqttBroker);
services.AddMqttClient(settings.MqttClient);
services.AddSingleton<RetainedMessageHandler>();
services.AddHealthChecks()
var healthChecks = services.AddHealthChecks()
.AddNpgSql(Configuration["IoTSharp"], name: "PostgreSQL")
.AddDiskStorageHealthCheck(dso =>
{
......@@ -166,11 +166,12 @@ namespace IoTSharp
break;
case TelemetryStorage.Taos:
services.AddSingleton<IStorage, TaosStorage>();
healthChecks.AddTDengine(Configuration.GetConnectionString("Taos"));
break;
default:
break;
}
//Note: The injection of services needs before of `services.AddCap()`
services.AddTransient<IEventBusHandler, EventBusHandler>();
services.AddHostedZeroMQ(Configuration);
......@@ -181,9 +182,11 @@ namespace IoTSharp
{
case EventBusStore.PostgreSql:
x.UsePostgreSql(Configuration.GetConnectionString("EventBusStore"));
healthChecks.AddNpgSql(Configuration.GetConnectionString("EventBusStore"),name: "EventBusStore");
break;
case EventBusStore.MongoDB:
x.UseMongoDB(Configuration.GetConnectionString("EventBusStore")); //注意,仅支持MongoDB 4.0+集群
healthChecks.AddMongoDb(Configuration.GetConnectionString("EventBusStore"),name: "EventBusStore");
break;
case EventBusStore.LiteDB:
x.UseLiteDBStorage(Configuration.GetConnectionString("EventBusStore"));
......@@ -198,9 +201,15 @@ namespace IoTSharp
case EventBusMQ.RabbitMQ:
x.UseRabbitMQ(Configuration.GetConnectionString("EventBusMQ"));
healthChecks.AddRabbitMQ(Configuration.GetConnectionString("EventBusMQ"), name: "EventBusMQ");
break;
case EventBusMQ.Kafka:
//BootstrapServers
x.UseKafka( Configuration.GetConnectionString("EventBusMQ"));
healthChecks.AddKafka( cfg=>
{
cfg.BootstrapServers = Configuration.GetConnectionString("EventBusMQ");
} , name: "EventBusMQ");
break;
case EventBusMQ.ZeroMQ:
x.UseZeroMQ(cfg =>
......@@ -261,7 +270,7 @@ namespace IoTSharp
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
// endpoints.MapMqtt("/mqtt");
endpoints.MapMqtt("/mqtt");
});
app.UseSwaggerUi3();
app.UseOpenApi();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册