Ejemplo n.º 1
0
 private bool IsValidLog(IpLogModel log)
 {
     if (string.IsNullOrWhiteSpace(log.Ip))
     {
         return(false);
     }
     return(true);
 }
Ejemplo n.º 2
0
        public void Log(IpLogModel log)
        {
            try
            {
                if (!this.IsValidLog(log))
                {
                    return;
                }

                var existingLog = this._context.IpLogs.FirstOrDefault(s => s.Ip == log.Ip);
                if (existingLog != null)
                {
                    existingLog.DateLatest = DateTimeOffset.Now;
                    existingLog.Visits++;
                }
                else
                {
                    this._context.Add(new IpLog
                    {
                        CountryCode = log.CountryCode,
                        City        = log.City,
                        Ip          = log.Ip,
                        Latitude    = log.Latitude,
                        Longitude   = log.Longitude,
                        DateInitial = DateTimeOffset.Now,
                        DateLatest  = DateTimeOffset.Now,
                        Visits      = 1
                    });
                }

                this._context.SaveChanges();
            }
            catch (Exception ex)
            {
                this._emailer.SendEmailAsync(Constants.Email, "CoinJob - Web Error - IpLog", ex.ToString()).Wait();
            }
        }