using System.Globalization;
using System.Threading.Tasks;
using Domain.Services.Interfaces;
using Microsoft.Extensions.Logging;
namespace Domain.Services
public class SystemLoggingService : ISystemLoggingService
private readonly VCMSDBContext _context;
public SystemLoggingService(VCMSDBContext context)
public Task AddSystemLog(SystemLog log)
if (log.LogLevel != "Trace" &&
log.LogLevel != "Debug" &&
log.LogLevel != "Information" &&
log.LogLevel != "Error" &&
log.LogLevel != "Critical"
throw new ArgumentException("No logLevel set or Incorrect logLevel");
log.LogDate = DateTime.Now;
AppType = "UploadService",
DeviceName = "passInMachineNameFromWhereYouAreCalling",
LogException = "yourexception.ToString()",
LogLogger = "WebAPI.Controllers.VehicleController",
LogMessage = "exception message or error message",
LogSource = "source of log",