问题描述
本人小女子一枚,被老大的老大突然从需求部门调来做开发,让我编代码。目前给我的第一个任务就是一下这个程序。1、编写windows服务的程序,完成一个监控报警程序。2、都有哪些被监控对象?需要监控这些对象的哪些指标?被监控对象分为以下两种:1.服务器2.系统进程系统管理员需要监控上述对象的下列指标:1.CPU占用运行值2.内存占用运行值。3、如何触发报警?当被监控对象的某个指标运行值大于告警阀值时,就可以触发报警。为此,系统管理员应根据运行要求,预先配置告警阀值。其中:1.CPU阀值单位为百分比,精确到小数点后1位;2.内存阀值单位为M(兆),精确到个位。4、报警以后,将通过现有的短信平台,给管理员发送短信。求助:1、应该以什么思路来编写这些程序啊?2、可以用到哪些类呢?Ps:之前完全没有开发经验啊,代码都没碰过。突遭此事,还望各位大侠能够指点一二。
解决方案
解决方案二:
解决方案三:
这个好说首先可以采用SELECT*FROMWin32_OperatingSystem来查询各种你需要的东西..然后返回结果集绑定到列表或者图形这就算是监控了.至于报警无非就是一个查询判断的事情了..如果你连c#的基本语法(比如定义变量.调用方法)都不会.那我也帮不了你了....如果你懂,那么你直接搜索"SELECT*FROMWin32_OperatingSystem"就应该了解怎么回事了...
解决方案四:
http://www.cnblogs.com/kissknife/archive/2006/11/25/572281.html看这里。这是个思路
解决方案五:
///<summary>///获取当前内存///</summary>///<paramname="Name"></param>///<returns></returns>publicstaticintGetMemory(stringName){intmemory=0;Process[]myPS=System.Diagnostics.Process.GetProcessesByName(Name);if(myPS.Length>0){Processinput=myPS[0];memory=(int)(input.WorkingSet64>>10);}returnmemory;}///<summary>///获取指定进程的CPU占用///</summary>///<paramname="name"></param>///<returns></returns>publicstaticfloatGetCpu(stringname){floatusuage=0f;Process[]myPS=System.Diagnostics.Process.GetProcessesByName(name);if(myPS.Length>0){PerformanceCounterpc=newPerformanceCounter("Process","%ProcessorTime",name);pc.NextValue();if(cpuNum==0){cpuNum=System.Environment.ProcessorCount;usuage=pc.NextValue()/(float)cpuNum;}}returnusuage;}
解决方案六:
代码没碰过怎么写的了?赶快找男程序员同事帮你。
解决方案七:
话说,如果从来没碰过代码,你先找个师傅带带你吧就算从这里求得了思路甚至完整的代码,你自己连看也看不懂,改也不会改,部署也不会部署,那还玩什么
解决方案八:
google一下,网上有很多用C#读PC硬件信息的代码
解决方案九:
我的第一个项目也是做这个。。其实很简单,用面向对象。具体代码网上都有。
解决方案十:
哎我觉得我们老大的老大在恶意裁人我做需求做的好好的。。。。。。
解决方案十一:
留下相片,qq,电话,邮箱,微信,给你个完整代码+教程实现起来也不难
解决方案十二:
这个我做过.C#写一个服务,搜索硬件,软件,进程的信息,然后定时向服务端Check,当服务端下达任务时,将数据上报到服务端.实现监控
解决方案十三:
引用9楼baidu_20709591的回复:
哎我觉得我们老大的老大在恶意裁人我做需求做的好好的。。。。。。
如果是这种情况,你可以不去新的部门啊~公司要裁员,无需找什么理由了,给你足额的补偿,然后直接干掉你就好了,只有那种想裁员,又不愿意赔钱的公司,才会歪招一堆堆的...企业调整工作岗位必须是双方协商一致,如果在用人单位在对你进行了培训后你仍不能胜任新的工作岗位的情况下解除劳动合同是合法解除。如果在你不同意调整新的工作岗位,用人单位又不能提供证据证实对你进行了新的工作岗位培训提情况下提出解除劳动关系应属于违法解除劳动关系,该情况下应支付你解除劳动关系的赔偿金.1.根据劳动法,企业不能随意调动员工的职位。除非你跟公司签订的合同中有一条,就是公司可以随意掉懂员工的岗位.2.公司无权单方面调你的岗位,公司调动你的岗位,应有合法理由,要跟你协商达到一致,否则你可以不去新岗位,你若离职,有权要求公司支付经济补偿金,每工作一年补偿你一个月。
解决方案十四:
publicfloatTotalCpu(){floatallcpu;PerformanceCountertcpu=newPerformanceCounter("Processor","%ProcessorTime","_Total");while(true){Thread.Sleep(1000);allcpu=tcpu.NextValue();returnallcpu;}}
这个获取总CPU占用的程序,调试的时候,allcpu一直等于0.0是怎么回事啊
解决方案十五:
啥都不懂就要做这么高难度的开发,还是辞职了吧。
解决方案:
引用14楼effun的回复:
啥都不懂就要做这么高难度的开发,还是辞职了吧。
+1
解决方案:
引用5楼caozhy的回复:
代码没碰过怎么写的了?赶快找男程序员同事帮你。
这是唯一的办法。
解决方案:
如果不是故意玩你,我只能想到2点理由1.觉得你挺能干,想栽培你2.公司实在是没人了