Files
monorepo/LCU.API.Internal.MaidBotApi/LCU.Api.Internal.MaidBotApi/Services/DebugEventLogService.cs
T
2026-03-11 13:21:47 -05:00

46 lines
1.4 KiB
C#

using System;
using System.Threading.Tasks;
using Serilog;
using LCU.Api.Internal.MaidBotApi.Exceptions;
using LCU.Api.Internal.MaidBotLib.Models;
using LCU.Api.Internal.MaidBotLib.Repositories;
using LCU.Library.Internal.Exceptions;
namespace LCU.Api.Internal.MaidBotApi.Services;
public class DebugEventLogService : IDebugEventLogService
{
private readonly IDebugEventLogRepository _debugEventLogRepository;
private readonly IUnitOfWork _unitOfWork;
public DebugEventLogService(IUnitOfWork unitOfWork,
IDebugEventLogRepository debugEventLogRepository)
{
_unitOfWork = unitOfWork;
_debugEventLogRepository = debugEventLogRepository;
}
public async Task DebugEventLog(EventLog eventLog)
{
if (!string.IsNullOrEmpty(eventLog.DebugData))
{
var debugEventLog = new DebugEventLog(eventLog);
await SaveAsync(debugEventLog);
}
}
public async Task<DebugEventLog> SaveAsync(DebugEventLog debugEventLog)
{
try
{
var result = await _debugEventLogRepository.AddAsync(debugEventLog);
await _unitOfWork.CompleteAsync();
return result;
}
catch (Exception exception)
{
Log.Error(exception, $"Failure saving DebugEventLog.");
throw new ServiceException($"Failure saving DebugEventLog.");
}
}
}