系统监控技术之主机模块(精通Unix下C语言编程与项目实践)

文章试读
不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国。一、二、三、四
职场规划:一些杂七杂八的职场感悟吧。不值钱的软件人才 精力充沛与事业成功   让系分来得更猛烈些吧    不值钱的系统分析师   经济危机下大学生如何就业
我的诗歌:都是我的打油诗,但是很值得一读。不要工作还衣食无忧之四难歌   香格里拉美人图
宝宝图片:超可爱的小宝宝 写博客
考试培训:主要是关于考研、软考和等级的相关题解。2009考研试题分析   2008年12月程序员试题分析    2009年软考备考全攻略    2008年5月程序员试题解析  轻松写系分论文
 
 
 
 
 
 

20 系统监控技术之主机模块

作者:朱云翔,胡平

Windows 下的应用程序相比较, Unix 下的应用程序往往不够直观。比如当我们需要确认某程序是否运行时,在 Windows 中只要查看任务栏就可以一目了然,而在 Unix 中必须使用 shell 命令“ ps ”才能看到一串不友好的字符。正因为如此,当 Unix 主机系统或服务应用出现故障或警报时,往往因为错误表现得不够直观,我们错失在第一时间内补救的机会。
系统监控项目可以在一定程度上弥补以上缺陷,它定时采集 Unix 主机的系统和应用信息,然后将此信息传送到 Windows 端,再利用 Windows 界面友好地向用户展示枯燥的主机信息。如果有错误或警报产生,它还将以闪屏或发声的方式提醒用户。
本章将设计一个系统监控项目的主机模块,它定时获取主机信息并将此数据通过 UDP 报文发送到信息转发模块。

20.1 系统模块划分

系统监控项目要求每隔一段时间读取一次被监控主机的某类信息,并把监控结果打包后,传送到 Windows 客户端。客户端解析报文,并转换为多媒体信息展示给客户。 Windows 客户端在接收主机信息前必须签到和定制监控的内容,否则将接收不到监控结果。
系统监控 项目分为 3 个模块,分别是主机模块、信息转发模块和显示端模块:

1. 主机模块

本模块负责定时获取被监控主机的系统信息(比如文件系统的可用空间等)和应用信息(比如消息队列是否已经创建、进程是否仍在运行、套接字是否仍然保持连接等)。
主机模块担负了监控主机的各种系统信息的重任,它至少由两部分组成,分别是监控系统信息部分和调度监控部分,前者记载了监控各种系统信息的代码,后者则负责以一定的算法调度这些代码。

2. 信息转发模块

本模块负责接收从监控主机传来的系统信息和应用信息,并根据显示端的签到情况有选择的向显示端转发这些信息。

3. 显示端模块

本模块负责将枯燥的主机信息报文转化为图像和声音等多媒体形式,并以直观的、漂亮的、友好的界面输出,一般选择 Windows 平台下的 PC 机作为监控显示端。
主机模块将监控到的主机信息打包成报文,通过 UDP 套接字发送给信息转发模块,信息转发模块以 UDP 套接字的形式转发此报文到显示端。显示模块必须要通过 TCP 报文向信息转发模块签到和注册监控内容。各模块之间的关系如图 20-1 所示:
20-1 系统监控项目模块关系图
本章将讲述主机模块的设计,有关信息转发模块将在下一章讲述。
 
相关文章:
封面          前言        目录         策划         作者
动态库        变长参数    文件锁       外设         僵死进程
定时器        I/O重定向   消息队列    共享内存
 
  实践项目:
开发网页投票器(一)  (二) 
开发网页投票器  字符串报文
银行代发工资报文
Unix下远程控制程序
监控程序主机模块
 
 
 

你可能感兴趣的:(unix,C编程,Unix编程,监控技术)