public virtual bool Edit(DbConn PubConn, tb_error_log_model model) { List <ProcedureParameter> Par = new List <ProcedureParameter>() { //数据库创建时间 new ProcedureParameter("@sqlservercreatetime", model.sqlservercreatetime), //日志项目中创建时间 new ProcedureParameter("@logcreatetime", model.logcreatetime), //日志类型:一般非正常错误,系统级严重错误 new ProcedureParameter("@logtype", model.logtype), //项目名称 new ProcedureParameter("@projectname", model.projectname), //日志唯一标示(简短的方法名或者url,便于归类) new ProcedureParameter("@logtag", model.logtag), //错误信息 new ProcedureParameter("@msg", model.msg), //堆栈跟踪 new ProcedureParameter("@tracestack", model.tracestack), //其他备注信息 new ProcedureParameter("@remark", model.remark), //相关开发人员 new ProcedureParameter("@developer", model.developer) }; Par.Add(new ProcedureParameter("@id", model.id)); int rev = PubConn.ExecuteSql("update tb_error_log set sqlservercreatetime=@sqlservercreatetime,logcreatetime=@logcreatetime,logtype=@logtype,projectname=@projectname,logtag=@logtag,msg=@msg,tracestack=@tracestack,remark=@remark,developer=@developer where id=@id", Par); return(rev == 1); }
public virtual bool Add(DbConn PubConn, tb_error_log_model model) { List <ProcedureParameter> Par = new List <ProcedureParameter>() { //数据库创建时间 new ProcedureParameter("@sqlservercreatetime", model.sqlservercreatetime), //日志项目中创建时间 new ProcedureParameter("@logcreatetime", model.logcreatetime), //日志类型:一般非正常错误,系统级严重错误 new ProcedureParameter("@logtype", model.logtype), //项目名称 new ProcedureParameter("@projectname", model.projectname), //日志唯一标示(简短的方法名或者url,便于归类) new ProcedureParameter("@logtag", model.logtag), //错误信息 new ProcedureParameter("@msg", model.msg), //堆栈跟踪 new ProcedureParameter("@tracestack", model.tracestack), //其他备注信息 new ProcedureParameter("@remark", model.remark), //相关开发人员 new ProcedureParameter("@developer", model.developer) }; int rev = PubConn.ExecuteSql(@"insert into tb_error_log(sqlservercreatetime,logcreatetime,logtype,projectname,logtag,msg,tracestack,remark,developer) values(@sqlservercreatetime,@logcreatetime,@logtype,@projectname,@logtag,@msg,@tracestack,@remark,@developer)" , Par); return(rev == 1); }
public virtual bool AddError(DbConn PubConn, tb_error_log_model model) { List <ProcedureParameter> Par = new List <ProcedureParameter>() { //数据库创建时间 //new ProcedureParameter("@sqlservercreatetime", model.sqlservercreatetime), //日志项目中创建时间 new ProcedureParameter("@logcreatetime", model.logcreatetime), //日志类型:一般非正常错误,系统级严重错误 new ProcedureParameter("@logtype", model.logtype), //项目名称 new ProcedureParameter("@projectname", model.projectname), //日志唯一标示(简短的方法名或者url,便于归类) new ProcedureParameter("@logtag", model.logtag), //错误信息 new ProcedureParameter("@msg", model.msg), //堆栈跟踪 new ProcedureParameter("@tracestack", model.tracestack), //其他备注信息 new ProcedureParameter("@remark", model.remark), //相关开发人员 new ProcedureParameter("@developer", model.developer) }; int rev = PubConn.ExecuteSql(string.Format(@"insert into tb_error_log{0}(sqlservercreatetime,logcreatetime,logtype,projectname,logtag,msg,tracestack,remark,developer) values(getdate(),@logcreatetime,@logtype,@projectname,@logtag,@msg,@tracestack,@remark,@developer)" , XXF.BaseService.Monitor.SystemRuntime.DbShardingHelper.MonthRule(DateTime.Now)), Par); return(rev == 1); }
public List <tb_error_log_model> GetList(DbConn PubConn, string id, string keyword, DateTime timebegin, DateTime timeend, int logtype, string projectname, int pagesize, int pageindex, out int count) { int _count = 0; List <tb_error_log_model> model = new List <tb_error_log_model>(); DataSet dsList = SqlHelper.Visit <DataSet>(ps => { string sqlwhere = " where 1=1 "; if (!string.IsNullOrWhiteSpace(id)) { ps.Add("id", id); sqlwhere += " and (id=@id) "; } if (!string.IsNullOrWhiteSpace(keyword)) { ps.Add("keyword", keyword); sqlwhere += " and (remark like '%'+@keyword+'%' or projectname like '%'+@keyword+'%' or logtag like '%'+@keyword+'%' or msg like '%'+@keyword+'%' ) "; } if (!string.IsNullOrWhiteSpace(projectname)) { ps.Add("projectname", projectname); sqlwhere += " and (projectname=@projectname) "; } if (true) { ps.Add("timebegin", timebegin); ps.Add("timeend", timeend); sqlwhere += " and sqlservercreatetime>=@timebegin and sqlservercreatetime<=@timeend"; } if (logtype >= 0) { ps.Add("logtype", logtype); sqlwhere += " and logtype=@logtype"; } string zq = ""; DateTime dateNow = DateTime.Now; if (DateTime.TryParse(timeend.ToString("yyyyMM"), out dateNow)) { zq = dateNow.ToString("yyyyMM"); } else { zq = DateTime.Now.ToString("yyyyMM"); } StringBuilder sql = new StringBuilder(); sql.Append("select ROW_NUMBER() over(order by id desc) as rownum,* from tb_error_log" + zq + " with (nolock) "); _count = Convert.ToInt32(PubConn.ExecuteScalar("select count(1) from tb_error_log" + zq + " with (nolock) " + sqlwhere, ps.ToParameters())); DataSet ds = new DataSet(); string sqlSel = "select * from (" + sql + sqlwhere + ") A where rownum between " + ((pageindex - 1) * pagesize + 1) + " and " + pagesize * pageindex; PubConn.SqlToDataSet(ds, sqlSel, ps.ToParameters()); return(ds); }); foreach (DataRow dr in dsList.Tables[0].Rows) { tb_error_log_model m = CreateModel(dr); model.Add(m); } count = _count; return(model); }
public virtual tb_error_log_model CreateModel(DataRow dr) { var o = new tb_error_log_model(); // if (dr.Table.Columns.Contains("id")) { o.id = dr["id"].Toint(); } //数据库创建时间 if (dr.Table.Columns.Contains("sqlservercreatetime")) { o.sqlservercreatetime = dr["sqlservercreatetime"].ToDateTime(); } //日志项目中创建时间 if (dr.Table.Columns.Contains("logcreatetime")) { o.logcreatetime = dr["logcreatetime"].ToDateTime(); } //日志类型:一般非正常错误,系统级严重错误 if (dr.Table.Columns.Contains("logtype")) { o.logtype = dr["logtype"].ToByte(); } //项目名称 if (dr.Table.Columns.Contains("projectname")) { o.projectname = dr["projectname"].Tostring(); } //日志唯一标示(简短的方法名或者url,便于归类) if (dr.Table.Columns.Contains("logtag")) { o.logtag = dr["logtag"].Tostring(); } //错误信息 if (dr.Table.Columns.Contains("msg")) { o.msg = dr["msg"].Tostring(); } //堆栈跟踪 if (dr.Table.Columns.Contains("tracestack")) { o.tracestack = dr["tracestack"].Tostring(); } //其他备注信息 if (dr.Table.Columns.Contains("remark")) { o.remark = dr["remark"].Tostring(); } //相关开发人员 if (dr.Table.Columns.Contains("developer")) { o.developer = dr["developer"].Tostring(); } return(o); }
public virtual List <tb_error_log_model> GetUserErrors(DbConn PubConn, DateTime lasttime, string username, string userstaffno, int topcount) { return(SqlHelper.Visit(ps => { ps.Add("@lasttime", lasttime); string cmd = string.Format("select top {0} * from tb_error_log{1} with (nolock) where sqlservercreatetime>=@lasttime", topcount, XXF.BaseService.Monitor.SystemRuntime.DbShardingHelper.MonthRule(DateTime.Now)); if (username != "" || userstaffno != "") { string developersql = "1=0"; if (username != "") { developersql += " or developer=@username"; ps.Add("@username", username); } if (userstaffno != "") { developersql += " or developer=@userstaffno"; ps.Add("@userstaffno", userstaffno); } cmd += string.Format(" and ({0})", developersql); } cmd += " order by id desc"; DataSet ds = new DataSet(); PubConn.SqlToDataSet(ds, cmd, ps.ToParameters()); List <tb_error_log_model> rs = new List <tb_error_log_model>(); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { foreach (DataRow dr in ds.Tables[0].Rows) { tb_error_log_model m = CreateModel(dr); rs.Add(m); } } return rs; })); }