public ProgramManager(ILoggerFactory loggerFactory, IProcessManagerApiClient processManagerApiClient, IOptions <ProgramManagerOptions> programManagerOptions) { loggerFactory.AddConsole(); _logger = loggerFactory.CreateLogger <ProgramManager>(); _processManagerApiClient = processManagerApiClient; _programManagerOptions = programManagerOptions; }
public ProcessManager( IProcessManagerApiClient httpClient, ILoggerFactory loggerFactory, IOptions <ProcessManagerOptions> options) { _httpClient = httpClient; _logger = loggerFactory.CreateLogger <ProcessManager>(); _options = options; _uuid = GenerateUUID(); _processes = new List <ChildProcess>(); _healthCheckTimer = new Timer(_options.Value.HealthCheckInterval); _healthCheckTimer.Elapsed += OnHealthCheckTimer; _healthCheckTimer.Start(); }
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider, IApplicationLifetime appLifetime, IProcessManagerApiClient processManagerApiClient, IProcessManager processManager) { _serviceProvider = serviceProvider; app.UseExceptionHandler(); app.UseHealthCheck(); app.UseProcessManagement(); app.Run(async context => { await context.Response.WriteAsync("Test Response"); }); appLifetime.ApplicationStarted.Register(() => { var headers = new Dictionary <string, string> { { ProcessManagementConstants.ProcessManagerHeader, processManager.GetUUID() } }; processManagerApiClient.GetAsync <string, string>($"/{ProcessManagementConstants.PROCESS_MANAGEMENT_ROUTE_PREFIX}/event/?eventId=0", headers); }); }