using AipGateway.API.Services.Interfaces; using AipGateway.Messaging.DbLogging; using AipGateway.Messaging.Models; namespace AipGateway.API.Services { public class AipDbLoggingService : IAipDbLoggingService { private readonly AipDbLoggingManager _aipDbLoggingManager = new AipDbLoggingManager(); private readonly ILogger _log; public AipDbLoggingService(ILogger log) { _log = log; try { _aipDbLoggingManager.InitializeQueue(); } catch (Exception ex) { _log.LogError($"AipDbLoggingService Create Failed: {ex}"); throw new ApplicationException("AipDbLoggingService Create Failed."); } } public void Send(PayloadBase payload) { try { _aipDbLoggingManager.Send(payload); } catch (Exception ex) { _log.LogError($"AipDbLoggingService Logging Data Send Failed: {payload}"); _log.LogError($"AipDbLoggingService Logging Data Send Failed: {ex}"); } } } }