/// <summary> /// 注册健康监测组件 /// </summary> public virtual void AddHealthChecks() { var redisString = _redisConfig.dbconfig.ConnectionStrings[0].Replace(",prefix=", string.Empty).Replace(",poolsize=50", string.Empty); _services.AddHealthChecks() .AddProcessAllocatedMemoryHealthCheck(maximumMegabytesAllocated: 200, tags: new[] { "memory" }) //.AddProcessHealthCheck("ProcessName", p => p.Length > 0) // check if process is running .AddMySql(_mysqlConfig.WriteDbConnectionString) .AddMongoDb(_mongoConfig.ConnectionStrings) .AddRabbitMQ(x => { return (RabbitMqConnection.GetInstance(x.GetService <IOptionsSnapshot <RabbitMqConfig> >() , x.GetService <ILogger <dynamic> >() ).Connection); }) //.AddUrlGroup(new Uri("https://localhost:5001/weatherforecast"), "index endpoint") .AddRedis(redisString); }
public static IServiceCollection AddAdncInfraRabbitMq(this IServiceCollection services, IConfigurationSection rabitmqSection) { if (services.HasRegistered(nameof(AddAdncInfraRabbitMq))) { return(services); } return(services .Configure <RabbitMqConfig>(rabitmqSection) .AddSingleton <IRabbitMqConnection>(provider => { var options = provider.GetRequiredService <IOptions <RabbitMqConfig> >(); var logger = provider.GetRequiredService <ILogger <RabbitMqConnection> >(); var serviceInfo = services.GetServiceInfo(); var clientProvidedName = serviceInfo?.Id ?? "unkonow"; return RabbitMqConnection.GetInstance(options, clientProvidedName, logger); }) .AddSingleton <RabbitMqProducer>() ); }
/// <summary> /// 注册健康监测组件 /// </summary> public virtual void AddHealthChecks() { var mysqlConfig = _configuration.GetMysqlSection().Get <MysqlConfig>(); var mongoConfig = _configuration.GetMongoDbSection().Get <MongoConfig>(); var redisConfig = _configuration.GetRedisSection().Get <RedisConfig>(); _services.AddHealthChecks() //.AddProcessAllocatedMemoryHealthCheck(maximumMegabytesAllocated: 200, tags: new[] { "memory" }) //.AddProcessHealthCheck("ProcessName", p => p.Length > 0) // check if process is running .AddMySql(mysqlConfig.ConnectionString) .AddMongoDb(mongoConfig.ConnectionString) .AddRabbitMQ(x => { return (RabbitMqConnection.GetInstance(x.GetService <IOptionsSnapshot <RabbitMqConfig> >() , x.GetService <ILogger <dynamic> >() ).Connection); }) //.AddUrlGroup(new Uri("https://localhost:5001/weatherforecast"), "index endpoint") .AddRedis(redisConfig.dbconfig.ConnectionString); }