public void AddCollect(DbConn PubConn, tb_performance_collect_model model) { SqlHelper.Visit(ps => { //服务器id ps.Add("@serverid", model.serverid); //cpu信息 ps.Add("@cpu", model.cpu); //内存字节 ps.Add("@memory", model.memory); //网络上传字节 ps.Add("@networkupload", model.networkupload); //网络下载字节 ps.Add("@networkdownload", model.networkdownload); //io读字节 ps.Add("@ioread", model.ioread); //io写字节 ps.Add("@iowrite", model.iowrite); // ps.Add("@iisrequest", model.iisrequest); //创建时间 ps.Add("@createtime", model.createtime); return(PubConn.ExecuteSql(string.Format(@"insert into tb_performance_collect{0}(serverid,cpu,memory,networkupload,networkdownload,ioread,iowrite,iisrequest,createtime) values(@serverid,@cpu,@memory,@networkupload,@networkdownload,@ioread,@iowrite,@iisrequest,@createtime)" , DbShardingHelper.DayRule(DateTime.Now)), ps.ToParameters())); }); }
public virtual bool Edit(DbConn PubConn, tb_performance_collect_model model) { List <ProcedureParameter> Par = new List <ProcedureParameter>() { //服务器id new ProcedureParameter("@serverid", model.serverid), //cpu信息 new ProcedureParameter("@cpu", model.cpu), //内存字节 new ProcedureParameter("@memory", model.memory), //网络上传字节 new ProcedureParameter("@networkupload", model.networkupload), //网络下载字节 new ProcedureParameter("@networkdownload", model.networkdownload), //io读字节 new ProcedureParameter("@ioread", model.ioread), //io写字节 new ProcedureParameter("@iowrite", model.iowrite), // new ProcedureParameter("@iisrequest", model.iisrequest), //创建时间 new ProcedureParameter("@createtime", model.createtime) }; Par.Add(new ProcedureParameter("@id", model.id)); int rev = PubConn.ExecuteSql("update tb_performance_collect set serverid=@serverid,cpu=@cpu,memory=@memory,networkupload=@networkupload,networkdownload=@networkdownload,ioread=@ioread,iowrite=@iowrite,iisrequest=@iisrequest,createtime=@createtime where id=@id", Par); return(rev == 1); }
public virtual bool Add(DbConn PubConn, tb_performance_collect_model model) { List <ProcedureParameter> Par = new List <ProcedureParameter>() { //服务器id new ProcedureParameter("@serverid", model.serverid), //cpu信息 new ProcedureParameter("@cpu", model.cpu), //内存字节 new ProcedureParameter("@memory", model.memory), //网络上传字节 new ProcedureParameter("@networkupload", model.networkupload), //网络下载字节 new ProcedureParameter("@networkdownload", model.networkdownload), //io读字节 new ProcedureParameter("@ioread", model.ioread), //io写字节 new ProcedureParameter("@iowrite", model.iowrite), // new ProcedureParameter("@iisrequest", model.iisrequest), //创建时间 new ProcedureParameter("@createtime", model.createtime) }; int rev = PubConn.ExecuteSql(@"insert into tb_performance_collect(serverid,cpu,memory,networkupload,networkdownload,ioread,iowrite,iisrequest,createtime) values(@serverid,@cpu,@memory,@networkupload,@networkdownload,@ioread,@iowrite,@iisrequest,@createtime)" , Par); return(rev == 1); }
public virtual tb_performance_collect_model CreateModel(DataRow dr) { var o = new tb_performance_collect_model(); // if (dr.Table.Columns.Contains("id")) { o.id = dr["id"].Toint(); } //服务器id if (dr.Table.Columns.Contains("serverid")) { o.serverid = dr["serverid"].Toint(); } //cpu信息 if (dr.Table.Columns.Contains("cpu")) { o.cpu = dr["cpu"].Todecimal(); } //内存字节 if (dr.Table.Columns.Contains("memory")) { o.memory = dr["memory"].Todecimal(); } //网络上传字节 if (dr.Table.Columns.Contains("networkupload")) { o.networkupload = dr["networkupload"].Todecimal(); } //网络下载字节 if (dr.Table.Columns.Contains("networkdownload")) { o.networkdownload = dr["networkdownload"].Todecimal(); } //io读字节 if (dr.Table.Columns.Contains("ioread")) { o.ioread = dr["ioread"].Todecimal(); } //io写字节 if (dr.Table.Columns.Contains("iowrite")) { o.iowrite = dr["iowrite"].Todecimal(); } // if (dr.Table.Columns.Contains("iisrequest")) { o.iisrequest = dr["iisrequest"].Todecimal(); } //创建时间 if (dr.Table.Columns.Contains("createtime")) { o.createtime = dr["createtime"].ToDateTime(); } return(o); }
protected override void Run() { if (GlobalConfig.ClusterModel.ifmonitor == false) { return; } tb_performance_collect_model model = new tb_performance_collect_model(); foreach (var p in pcounts) { var c = p.Collect(); //Console.WriteLine(p.Name + ":" + c); if (p.Name.Contains("cpu")) { model.cpu = (decimal)c; } else if (p.Name.Contains("内存")) { model.memory = (decimal)c; } else if (p.Name.Contains("网络发送")) { model.networkupload = (decimal)c; } else if (p.Name.Contains("网络下载")) { model.networkdownload = (decimal)c; } else if (p.Name.Contains("物理磁盘读")) { model.ioread = (decimal)c; } else if (p.Name.Contains("物理磁盘写")) { model.iowrite = (decimal)c; } else if (p.Name.Contains("IIS请求")) { model.iisrequest = (decimal)c; } } model.serverid = GlobalConfig.ClusterModel.id; model.createtime = DateTime.Now; SqlHelper.ExcuteSql(DbShardingHelper.GetDataBase(GlobalConfig.DataBaseConfigModels, DataBaseType.Cluster), (c) => { model.createtime = c.GetServerDate(); tb_performance_collect_dal performancecollectdal = new tb_performance_collect_dal(); performancecollectdal.AddCollect(c, model); }); }
public List <tb_performance_collect_model> GetChartJson(DbConn PubConn, string day, string stime, string etime, string keyword) { return(SqlHelper.Visit(ps => { List <tb_performance_collect_model> model = new List <tb_performance_collect_model>(); string zq = ""; DateTime dateNow = DateTime.Now; if (DateTime.TryParse(day, out dateNow)) { zq = dateNow.ToString("yyyyMMdd"); } else { zq = DateTime.Now.ToString("yyyyMMdd"); } if (!string.IsNullOrWhiteSpace(stime)) { ps.Add("stime", dateNow.ToString("yyyy-MM-dd ") + stime); } else { ps.Add("stime", dateNow.ToString("yyyy-MM-dd 00:00:00")); } if (!string.IsNullOrWhiteSpace(etime)) { ps.Add("etime", dateNow.ToString("yyyy-MM-dd ") + etime); } else { ps.Add("etime", dateNow.ToString("yyyy-MM-dd 23:59:59")); } ps.Add("keyword", keyword); string sql = "select * from tb_performance_collect" + zq + " where serverid=@keyword and createtime between @stime and @etime"; DataSet ds = new DataSet(); PubConn.SqlToDataSet(ds, sql, ps.ToParameters()); foreach (DataRow dr in ds.Tables[0].Rows) { tb_performance_collect_model m = CreateModel(dr); m.nodenotes = m.createtime.ToString("HH:mm:ss fff"); model.Add(m); } return model; })); }
public List <tb_performance_collect_model> GetList(DbConn PubConn, string serverid, string serverip, string timebegin, string timeend, string orderby, int pagesize, int pageindex, out int count) { int _count = 0; string connday = ""; if (!string.IsNullOrWhiteSpace(timeend)) { connday = DateTime.Parse(timeend).ToString("yyyyMMdd"); } List <tb_performance_collect_model> model = new List <tb_performance_collect_model>(); DataSet dsList = SqlHelper.Visit <DataSet>(ps => { string sqlwhere = " where 1=1 "; DateTime date = DateTime.Now; if (!string.IsNullOrWhiteSpace(serverid)) { ps.Add("serverid", serverid); sqlwhere += " and p.serverid =@serverid "; } if (!string.IsNullOrWhiteSpace(serverip)) { ps.Add("serverip", serverip); sqlwhere += " and c.serverip =@serverip "; } if (!string.IsNullOrWhiteSpace(timebegin)) { ps.Add("timebegin", timebegin); sqlwhere += " and p.createtime >=@timebegin "; } if (!string.IsNullOrWhiteSpace(timeend)) { ps.Add("timeend", timeend); sqlwhere += " and p.createtime <=@timeend "; } string orderbywhere = "p.id"; if (!string.IsNullOrWhiteSpace(orderby)) { orderbywhere = " p." + orderby; } StringBuilder sql = new StringBuilder(); sql.Append("select ROW_NUMBER() over(order by " + orderbywhere + " desc) as rownum,p.*,c.serverip,c.servername from tb_performance_collect" + connday + " p with (nolock) right join dyd_bs_monitor_platform_manage.dbo.tb_cluster c with (nolock) on p.serverid=c.id"); _count = Convert.ToInt32(PubConn.ExecuteScalar("select count(1) from tb_performance_collect" + connday + " p with (nolock) right join dyd_bs_monitor_platform_manage.dbo.tb_cluster c with (nolock) on p.serverid=c.id" + 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_performance_collect_model m = CreateModel(dr); //创建时间 if (dr.Table.Columns.Contains("serverip")) { m.serverip = dr["serverip"].Tostring(); } if (dr.Table.Columns.Contains("servername")) { m.servername = dr["servername"].Tostring(); } model.Add(m); } count = _count; return(model); }