public static Server AddGrpcServices(this IServiceProvider provider, ILoggerFactory loggerFactory, IConfiguration configuration) { var servicePort = GetPort(configuration); GrpcEnvironment.SetLogger(new LogLevelFilterLogger(new GrpcLogger(loggerFactory), LogLevel.Debug)); GrpcEnvironment.Logger.Debug($@"Starting Build services on port {servicePort}"); var logger = loggerFactory.CreateLogger <LoggingInterceptor>(); var builder = new GrpcServerBuilder() .AddInsecurePort(servicePort); var services = new List <ServerServiceDefinition> { KickstartBuildService.BindService(provider.GetRequiredService <KickstartBuildServiceImpl>()) .Intercept(new LoggingInterceptor(logger, Microsoft.Extensions.Logging.LogLevel.Information)), Health.BindService(provider.GetRequiredService <HealthServiceImpl>()) .Intercept(new LoggingInterceptor(logger, Microsoft.Extensions.Logging.LogLevel.Debug)), }; //AddTracing(provider, services, configuration); builder.AddServices(services); builder.AddService(ServerReflection.BindService(new ReflectionServiceImpl( KickstartBuildService.Descriptor, Health.Descriptor))); return(builder.Build()); }
public static Server AddGrpcServices(this IServiceProvider provider, ILoggerFactory loggerFactory, int port) { var servicePort = GetPort(port); GrpcEnvironment.SetLogger(new LogLevelFilterLogger(new GrpcLogger(loggerFactory), Grpc.Core.Logging.LogLevel.Debug)); GrpcEnvironment.Logger.Debug($@"Starting Kickstart services on port {servicePort}"); var server = new Server { Services = { //Reflection used by some testers KickstartBuildService.BindService(provider.GetRequiredService <KickstartBuildServiceImpl>()), KickstartServiceApi.BindService(provider.GetRequiredService <KickstartServiceImpl>()), ServerReflection.BindService(new ReflectionServiceImpl(KickstartServiceApi.Descriptor, KickstartBuildService.Descriptor, Health.Descriptor)) }, Ports = { new ServerPort("0.0.0.0", servicePort, ServerCredentials.Insecure) } }; return(server); }