Monitoring 应用程序运行状况监视系统的要求是什么?

Monitoring 应用程序运行状况监视系统的要求是什么?,monitoring,health-monitoring,Monitoring,Health Monitoring,应用程序运行状况监控系统至少应该为您(开发人员)和/或您的上司(IT经理)和/或运营(待命)员工做些什么 除了最低要求,它还应该做什么 监控“基础设施”应用程序(ms exchange、apache等)是否足够,或者是否还需要监控单个用户应用程序、网站和数据库 如果是后者,你需要了解什么 附录:感谢您的输入,我确实在寻找应用程序级监控,而不是基础架构监控,但最好了解这两个方面的信息(最低要求:确保它正在运行:) 然而,其他一些东西会非常有用。例如,CPU负载、RAM使用和(在多用户系统中)哪个用

应用程序运行状况监控系统至少应该为您(开发人员)和/或您的上司(IT经理)和/或运营(待命)员工做些什么

除了最低要求,它还应该做什么

监控“基础设施”应用程序(ms exchange、apache等)是否足够,或者是否还需要监控单个用户应用程序、网站和数据库

如果是后者,你需要了解什么


附录:感谢您的输入,我确实在寻找应用程序级监控,而不是基础架构监控,但最好了解这两个方面的信息(最低要求:确保它正在运行:)

然而,其他一些东西会非常有用。例如,CPU负载、RAM使用和(在多用户系统中)哪个用户正在运行什么。此外,对于访问网络的应用程序,每个应用程序的网络连接列表。而且(如果您可以访问客户端计算机),能够看到应用程序的“窗口标题”会很酷-如果它发生更改,可能每2-3分钟检查一次并保存。此外,应用程序打开的文件列表可能非常有用,但不是必须的。

  • 应用程序是否正在运行
  • cpu/内存/网络使用异常
  • 报告任何未处理的异常
  • 各种模块的状态(如适用)
  • 外部组件(数据库、Web服务、文件服务器等)的状态
  • 挂起的后台任务数(如果适用)
  • 也许可以跟踪应用程序的使用情况,并报告大多数/较少使用的功能的统计信息,以便您知道哪些优化最有益

    • 答案是“视情况而定”。你为什么需要监控?你们的操作人员有多大?你需要报告吗?什么是应用程序环境?谁在乎应用程序是否失败?谁在乎是否发生了异常?有任何错误是可恢复的吗?我可以问这样的问题很长一段时间。

      我认为这相当简单-监控,以便在出现问题之前尽早向您发出警告。这意味着监视依赖项和应用程序本身


      如果您不打算提供您正在监视的应用程序的详细信息,则很难提供详细信息,因此我建议将其作为一般规则。

      这是一个开放式问题,但我将从物理测量开始
      1.我认为托管此站点的所有计算机都可以ping吗?
      2.所有应该提供内容的机器都提供了一些内容吗?(理想情况下,这将通过外部网络进行访问。)
      3.每台机器上的每个预期服务都在运行吗?
      3a。这些服务最近运行过吗?
      4.每台机器是否还有硬盘空间?(别忘了db)
      5.这些机器有备份吗?上次是什么时候?

      一旦规划了系统的物理监控,就可以解决特定于系统的问题了

      1.自动脚本可以登录吗?花了多长时间?
      2.有多少用户是实时的?是否增加了一百万个假账户?

      这类问题变得更加模糊,可能非常系统化。当对PHSY测量作出反应时,通常也可以得到它们。硬盘被填满了,可能是因为一群代理创造了太多的假用户,网络服务器日志被填满了。那种事


      虽然计划A不一定是被动的,但它是许多站点设置监控系统的方式。

      至少您希望知道系统是健康的。这是主观的,在什么定义您的系统是健康的。是计算机启动,所需资源存在,数据在系统中流动,数据正确产生结果,等等

      在我的项目中,我们对其中的大部分进行监控,然后对一些进行监控。这实际上可以归结为你可以用来分析一切都在运行的最高层次。在我们的例子中,我们需要知道到底是数据输出。如果你只需要知道到底这些机器在运行吗,那么你就不用试图向没有经验的最终用户说明问题出在哪里了


      还有一些“现成的”工具,若你们只是太过努力地查看数据结果,它们会为你们做很多艰苦的工作。我特别喜欢环顾四周,但我们需要的远不止它能轻易显示的东西,所以我编写了我们自己的监控系统。基本上,我们还关注系统中的“特性”、内存/cpu峰值等。

      感谢大家的投入,我真的在寻找应用程序级监控,而不是基础设施监控,但很高兴了解这两者

      区别在于:

      • 基础结构监视将是服务器加上MS Exchange Server、Apache、IIS等
      • 应用程序监控将是用户机器和他们用来完成工作的特定程序,和/或服务器加上他们运行以保持数据流动的数据移动/后端应用程序
      有时很难划清界限——过于简单的定义可能是“如果你的团队编写了它,它就是一个应用程序;如果你购买了它,它就是一个基础设施”


      我认为在实践中,最好同时监控这两个方面,您需要做的是分解应用程序的业务流程,然后让软件在主要业务组件上发出事件。此外,您还需要创建端到端的合成事务(例如,模拟最终用户点击网站)。所有这些数据都将输入一个监控工具。在过去,我为流入Tivoli Monitoring的JMX适配器的应用程序编写了JMX,然后编写了实现“假用户”的脚本,然后将结果导入Tivoli Monitoring的脚本适配器。Tivoli Monitoring获取数据,然后根据原始数据创建应用程序运行状况和性能图表。