public void EndLogRequest(IOwinRequest request, bool isSuccessed) { try { if (!Config.EnableActionLog || !EnableLog) { return; } if (ServiceName == null) { return; } double duration = 0; if (StartTime != null) { duration = (DateTime.Now.TimeOfDay - TimeSpan.Parse(StartTime)).TotalMilliseconds; } AddedLogDictionary.TryAdd(SecureGuid.NewGuid().ToString(), new ActionLog() { ServiceUrl = ServiceUrl ?? "?", Ip = request.RemoteIpAddress, Url = request.Path.Value, Parameters = Helper.UrlDecode(request.Method.ToLower() == "get" ? ReadableStringCollectionToString(request.Query) : Body), //ReadableStringCollectionToString(request.ReadFormAsync().Result)), Type = request.Method, Coockies = JsonConvert.SerializeObject(CookieManager.GetAll()), Request = Helper.UrlDecode(ReadableStringCollectionToString(request.Headers)), DateTime = DateTime.UtcNow, IsDebugMode = Settings.IsDebugMode, IsMobileMode = Settings.IsMobileMode, LocalDateTime = LanguageManager.ToLocalDateTime(DateTime.UtcNow), Name = ServiceName ?? "?", User = CurrentUserManager.UserName, ExecutionTimeInMilliseconds = duration, IsSuccessed = isSuccessed, UrlReferrer = Helper.UrlDecode( (UrlReferrer ?? request.Uri.AbsoluteUri ?? new Uri("http://unknown").AbsoluteUri).ToString()) }); } catch (Exception ex) { LogException(ex.ToString()); } }