protected override async Task <Unit> SendImplementation(SendDockerRunParamsRequest request, CancellationToken cancellation) { var collection = await _collectionFactory.Get <SendDockerRunParamsRequest>(cancellation); await collection.InsertOneAsync(request, GetInsertOneOptions.Value, cancellation); return(Unit.Value); }
protected override Task <Unit> SendImplementation(SendDockerRunParamsRequest request, CancellationToken cancellation) { _logger.LogDebug("ProcessLogEntryRequest registered", Array.Empty <object>()); _reporter.RegisterRequest(request); return(Unit.Task); }
public void RegisterRequest(SendDockerRunParamsRequest request) { if (_requests.ContainsKey(request.ContainerName)) { _requests[request.ContainerName] += 1; } else { _requests[request.ContainerName] = 1; } }
protected override Task <Unit> SendImplementation(SendDockerRunParamsRequest request, CancellationToken cancellation) { var properties = new Dictionary <string, string> { [nameof(request.ContainerName)] = request.ContainerName, [nameof(request.Created)] = request.Created.ToString(), [nameof(request.EventDate)] = request.EventDate.ToString(), [nameof(request.ImageName)] = request.ImageName, [nameof(request.ImageTag)] = request.ImageTag, [nameof(request.InboundPort)] = request.InboundPort, [nameof(request.OutboundPort)] = request.OutboundPort, [nameof(request.ServiceName)] = request.ServiceName }; _reporter.Report(properties); return(Unit.Task); }
public async Task <Unit> Handle(ProcessDockerLogRequest request, CancellationToken cancellationToken) { var validateExportedRunParamsRequest = ValidateExportedRunParamsRequest.FromBase(request.ExtractedParams); ValidateExportedRunParamsResponse validateExportedRunParamsResponse = await Mediator.Send(validateExportedRunParamsRequest, cancellationToken); if (!validateExportedRunParamsResponse.IsValid) { return(Unit.Value); } if (!await ShouldProcessDockerLog(validateExportedRunParamsRequest, cancellationToken)) { return(Unit.Value); } var sendDockerRunParamsRequest = SendDockerRunParamsRequest.FromBase(request.ExtractedParams); return(await Mediator.Send(sendDockerRunParamsRequest, cancellationToken)); }
protected override async Task <Unit> SendImplementation(SendDockerRunParamsRequest request, CancellationToken cancellation) { await using var connection = _connectionFactory.CreateConnection(); var command = new CommandDefinition( InsertLogEntryQuery(), new { request.ServiceName, request.ContainerName, request.ImageName, request.ImageTag, request.InboundPort, request.OutboundPort, request.EventDate }, cancellationToken: cancellation); await connection.ExecuteAsync(command); return(Unit.Value); }
protected override async Task <Unit> SendImplementation(SendDockerRunParamsRequest request, CancellationToken cancellation) { var attachmentFields = new object[4] { new { title = DateTitle, value = $"`{request.EventDate}`" }, new { title = ContainerNameTitle, value = $"`{request.ContainerName}`" }, new { title = PortsTitle, value = $"`{request.InboundPort}` : `{request.OutboundPort}`" }, new { title = ImageTitle, value = $"`{request.ImageName}`: `{request.ImageTag}`" } }; var content = new { attachments = new object[1] { new { mrkdwn_in = new object[1] { MarkdownInOption }, color = ColorValue, pretext = $"*Service:* {request.ServiceName}", text = $"_{Message}_", fields = attachmentFields }, } }; using var stream = _streamManager.GetStream(); await JsonSerializer.SerializeAsync(stream, content, typeof(object), null, cancellation); await _reporter.Send(stream, cancellation); return(Unit.Value); }