public static int ExecuteExt(this IDbConnection connection, string sql, object param, IDbTransaction transaction = null, int?commandTimeout = null, bool isExecuteSql = false) { Stopwatch sw = new Stopwatch(); sw.Start(); try { var result = connection.Execute(sql, param, transaction, commandTimeout); if (result > 0 && isExecuteSql) { var ip = HttpContextHelper.GetIpAddress(); Task.Factory.StartNew(() => { var businessLog = GetBusinessLog(sql, param, ip); OnBusinessed(businessLog); }); } return(result); } finally { sw.Stop(); OnExecuted(sql, param, sw.ElapsedMilliseconds); } }
private static int ExecuteExt <TEntity>(this IDbConnection connection, string sql, IEnumerable <TEntity> param, IDbTransaction transaction = null, int?commandTimeout = null) where TEntity : BaseEntity { var result = connection.ExecuteExt(sql, param, transaction, commandTimeout, isExecuteSql: false); if (result > 0) { var ip = HttpContextHelper.GetIpAddress(); Task.Factory.StartNew(() => { var businessLogs = GetBusinessLog <TEntity>(sql, param, ip); OnBusinessed(businessLogs); }); } return(result); }
public override void OnActionExecuting(ActionExecutingContext filterContext) { try { var treeId = HttpContext.Current.Items[VariableName.ContextKey].ToString(); CallContext.LogicalSetData(VariableName.ContextKey, treeId); filterContext.HttpContext.Items[VariableName.StopwatchKey] = Stopwatch.StartNew(); var actionName = string.Format("{0}/{1}", filterContext.ActionDescriptor.ControllerDescriptor.ControllerName, filterContext.ActionDescriptor.ActionName); var ip = HttpContextHelper.GetIpAddress().PadRight(12, ' '); var httpType = HttpContextHelper.GetRequestType().PadRight(5, ' '); var msg = string.Format("[{1}]:{3}{2} {0}{4}", actionName, treeId , ip, httpType, filterContext.ActionParameters.ToJson()); _log.Debug(msg); } catch (Exception ex) { _log.Error(ex); } }