zoukankan      html  css  js  c++  java
  • 检测系统服务是否正常运行 失败的话发邮件提醒

    static void fw()
    {
    string str = "net start";// "net stop " + sname;// Console.ReadLine();

    System.Diagnostics.Process p = new System.Diagnostics.Process();
    p.StartInfo.FileName = "cmd.exe";
    p.StartInfo.UseShellExecute = false; //是否使用操作系统shell启动
    p.StartInfo.RedirectStandardInput = true;//接受来自调用程序的输入信息
    p.StartInfo.RedirectStandardOutput = true;//由调用程序获取输出信息
    p.StartInfo.RedirectStandardError = true;//重定向标准错误输出
    p.StartInfo.CreateNoWindow = true;//不显示程序窗口
    p.Start();//启动程序

    //向cmd窗口发送输入信息
    p.StandardInput.WriteLine(str + "&exit");

    p.StandardInput.AutoFlush = true;
    //p.StandardInput.WriteLine("exit");
    //向标准输入写入要执行的命令。这里使用&是批处理命令的符号,表示前面一个命令不管是否执行成功都执行后面(exit)命令,如果不执行exit命令,后面调用ReadToEnd()方法会假死
    //同类的符号还有&&和||前者表示必须前一个命令执行成功才会执行后面的命令,后者表示必须前一个命令执行失败才会执行后面的命令

    //获取cmd窗口的输出信息
    string output = p.StandardOutput.ReadToEnd();

    //StreamReader reader = p.StandardOutput;
    //string line=reader.ReadLine();
    //while (!reader.EndOfStream)
    //{
    // str += line + " ";
    // line = reader.ReadLine();
    //}

    p.WaitForExit();//等待程序执行完退出进程
    p.Close();


    Console.WriteLine(output);
    string ss = System.Configuration.ConfigurationSettings.AppSettings["pcno"].ToString();
    // ConfigurationManager.AppSettings["pcno"].ToString();

    Console.WriteLine(ss);
    string[] a= ss.Split(';');
    int k = 0;
    foreach(var y in a)
    {

    if (output.Contains(a[k]))
    {
    // SendMail aa = new SendMail();
    // aa.SendMailUseGmail(a[k]+" is ok ");
    Console.WriteLine(a[k]+" is ok ");
    NLogger.Info(a[k] + " is ok ");
    }
    else
    {
    SendMail aa = new SendMail();
    aa.SendMailUseGmail(a[k]+" is fail ");
    Console.WriteLine(a[k] + " is fail ");
    NLogger.Info(a[k] + " is fail ");
    }

    k++;
    }



    //if (output.Contains("HSCP.Message.Tasks"))
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("HSCP.Message.Tasks is ok ");
    // Console.WriteLine("HSCP.Message.Tasks is ok ");
    //}
    //else
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("HSCP.Message.Tasks is fail ");
    // Console.WriteLine("HSCP.Message.Tasks is fail ");
    //}


    //if (output.Contains("HSCP.Dayu.Task"))
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("HSCP.Dayu.Task is ok ");
    // Console.WriteLine("HSCP.Dayu.Task is ok ");
    //}
    //else
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("HSCP.Dayu.Task is fail ");
    // Console.WriteLine("HSCP.Dayu.Task is fail ");
    //}


    //if (output.Contains("Redis"))
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("Redis is ok ");
    // Console.WriteLine("Redis is ok ");
    //}
    //else
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("Redis is fail ");
    // Console.WriteLine("Redis is fail ");
    //}


    //if (output.Contains("RabbitMQ"))
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("RabbitMQ is ok ");
    // Console.WriteLine("RabbitMQ is ok ");
    //}
    //else
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("RabbitMQ is fail ");
    // Console.WriteLine("RabbitMQ is fail ");
    //}


    //if (output.Contains("MongoDB"))
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("MongoDB is ok ");
    // Console.WriteLine("MongoDB is ok ");
    //}
    //else
    //{
    // SendMail a = new SendMail();
    // a.SendMailUseGmail("MongoDB is fail ");
    // Console.WriteLine("MongoDB is fail ");
    //}


    //Thread.Sleep(300000);
    //Console.ReadKey();

    }

  • 相关阅读:
    Js onmouseover和onmouseout小特效
    js操作元素透明度以及浏览器兼容性
    大多数人不知道的表格其他写法的onmouseover效果
    表格的删除与添加以及id的唯一性
    添加或创建元素,最新消息在最上方
    数组元素排序
    删除父级元素
    网页侧栏小分享
    如何利用极致业务基础平台构建一个通用企业ERP之十七过滤器的功能介绍
    如何利用极致业务基础平台构建一个通用企业ERP之十六物料进出明细报表的设计
  • 原文地址:https://www.cnblogs.com/lyl6796910/p/8182679.html
Copyright © 2011-2022 走看看