public override List <LogEntity> GetExceptionLog() { List <LogEntity> list = new List <LogEntity>(); string strSql = "SELECT * FROM " + TableName + " WHERE LOG_STATE=2 AND LOG_TYPE=1 ORDER BY LOG_TIME DESC"; DataSet ds = DataAccess.SelectDataSet(strSql); if (ds == null || ds.Tables.Count == 0) { return(list); } DataTable dt = ds.Tables[0]; for (int i = 0; i < dt.Rows.Count; i++) { DataRow row = dt.Rows[i]; LogEntity entity = new LogEntity(); entity.Time = row["LOG_TIME"].ToString(); entity.Category = Convert.ToInt32(row["LOG_STATE"]); entity.JobCode = row["JOB_NAME"].ToString(); entity.Description = row["DESCRIPTION"].ToString(); entity.ExceptionType = row["EXCEPTION_TYPE"].ToString(); entity.ExceptionMessage = row["EXCEPTION_MESSAGE"].ToString(); entity.ThreadName = row["THREAD_Name"].ToString(); list.Add(entity); } using (DataAccessBroker broker = DataAccessFactory.Instance()) { broker.ExecuteSQL("UPDATE " + TableName + " SET LOG_TYPE=2 WHERE LOG_STATE=2 AND LOG_TYPE=1 "); } return(list); }
///// <summary> ///// 获得日志 ///// </summary> ///// <param name="logCategory"></param> ///// <returns></returns> //public override List<LogEntity> GetLogs(int logCategory) //{ // List<LogEntity> entityList = new List<LogEntity>(); // string sqlString = ""; // if (logCategory == -1) // { // sqlString = "select top 500 * from " + this.TableName + " where LOG_TIME > SYSDATE-3 order by LOG_TIME desc,SN desc"; // } // else // { // sqlString = "select top 500 * from " + this.TableName // + " where LOG_STATE=" + logCategory // + " and LOG_TIME >SYSDATE-3 order by LOG_TIME desc,SN desc"; // } // DataSet ds = DataAccess.SelectDataSet(sqlString); // if (ds == null || ds.Tables.Count == 0) // return entityList; // DataTable dt = ds.Tables[0]; // for (int i = 0; i < dt.Rows.Count; i++) // { // DataRow row = dt.Rows[i]; // LogEntity entity = new LogEntity(); // entity.Time = row["LOG_TIME"].ToString(); // entity.Category = Convert.ToInt32(row["LOG_STATE"]); // entity.JobCode = row["JOB_NAME"].ToString(); // entity.Description = row["DESCRIPTION"].ToString(); // entity.ExceptionType = row["EXCEPTION_TYPE"].ToString(); // entity.ExceptionMessage = row["EXCEPTION_MESSAGE"].ToString(); // entityList.Add(entity); // } // return entityList; //} /// <summary> /// 获得日志 /// </summary> /// <param name="logCategory"></param> /// <returns></returns> public override List <LogEntity> GetLogs(int logCategory, string jobCode) { List <LogEntity> entityList = new List <LogEntity>(); string whereSql = ""; if (logCategory != -1) { whereSql = " LOG_STATE = " + logCategory; } if (jobCode != "") { if (whereSql != "") { whereSql += " and "; } whereSql += " JOB_NAME like '%" + jobCode + "%'"; } if (whereSql != "") { whereSql = " where " + whereSql; } // 只取前3天的日志 if (whereSql == "") { whereSql += " where"; } whereSql += " log_time>SYSDATE-3"; string sqlString = "select * from " + this.TableName + whereSql + " order by LOG_TIME desc,SN desc"; DataSet ds = DataAccess.SelectDataSet(sqlString); if (ds == null || ds.Tables.Count == 0) { return(entityList); } DataTable dt = ds.Tables[0]; for (int i = 0; i < dt.Rows.Count; i++) { DataRow row = dt.Rows[i]; LogEntity entity = new LogEntity(); entity.Time = row["LOG_TIME"].ToString(); entity.Category = Convert.ToInt32(row["LOG_STATE"]); entity.JobCode = row["JOB_NAME"].ToString(); entity.Description = row["DESCRIPTION"].ToString(); entity.ExceptionType = row["EXCEPTION_TYPE"].ToString(); entity.ExceptionMessage = row["EXCEPTION_MESSAGE"].ToString(); entity.ThreadName = row["THREAD_Name"].ToString(); entityList.Add(entity); } return(entityList); }