服务器远程监视开发包说明与开发手册_第1页
服务器远程监视开发包说明与开发手册_第2页
服务器远程监视开发包说明与开发手册_第3页
服务器远程监视开发包说明与开发手册_第4页
服务器远程监视开发包说明与开发手册_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、文档可自由编辑打印服务器远程监视开发包说明与开发手册服务器远程监视开发包说明与开发手册项目名称:项目名称:N/A系统名称:系统名称:N/A子系统名称:子系统名称:N/A密级:密级:公司2001/09/19作者修改者版本修改原因时间闻怡洋Alpha 0.9首次创建文档创建功能介绍2001/10/19闻怡洋Alpha 0.9添加 V1.0 功能介绍和开发手册2001/10/23闻怡洋Alpha 0.9添加 V1.0 客户端软件功能介绍和使用手册2001/10/24闻怡洋Alpha 0.9添加 V1.0 客户端软件显示定制功能使用手册2001/10/25闻怡洋Beta 0.9发布 Beta 0.9

2、版本2001/10/28相关文档:其他说明:如果有任何问题和功能上的补充请联系闻怡洋文档可自由编辑打印目录第第 1 章章介绍介绍.31.1解决的问题.31.2实现方法介绍.31.2.1版本规划.3第第 2 章章基类功能介绍基类功能介绍.42.1CLASS CSRMBASE : PUBLIC CPARENTTHREAD.42.1.1构造.42.1.2设置保存信息的最大数量.42.1.3得到保存信息的最大数量.42.1.4添加消息.42.2CLASS SRMCHILD : PUBLIC CCHILDTHREAD.4第第 3 章章版本版本 V1.0 功能介绍功能介绍.53.1文件.53.2功能介绍.

3、53.3可以完成的功能.53.4不能完成的功能.53.5通信包格式.53.5.1消息查询包.53.6通信方式.6第第 4 章章版本版本 V1.0 服务器端开发说明服务器端开发说明.74.1服务器端开发.74.2示例.7第第 5 章章版本版本 V1.0 客户端使用说明客户端使用说明.95.1客户端.95.2配置.95.2.1基本信息.95.2.2显示方式.105.3运行.105.4故障.105.5示例.10文档可自由编辑打印第第 1 章章介绍介绍1.1 解决的问题解决的问题由于服务器在后台进行运行,并且在 Windows 平台上服务器的监视没有什么常规的解决办法。某些应用通过将日志写入数据库的方

4、法来实现服务器的监控,我一直认为这样的方法不可靠,而且这样也不能够实现服务器的远程控制。而服务器远程监视开发包的目的就是要实现服务器运行状态的远程监视和控制。1.2 实现方法介绍实现方法介绍服务器与客户端采用 TCP 协议进行通信,在通信上采用了客户查询机制,服务器方不会主动向客户端发送数据。在服务器方每一条运行状态记录由四部分组成:序列号:由系统生成。日志创建时间:由系统生成。消息类型:消息类型的文字说明,由用户自己定义。消息内容:由用户自己定义,每条消息不能超过 512 个字节,服务器方最多保存 200 条消息记录,多余的记录会被自动删除。1.2.1 版本规划版本规划V1.0 提供面向 T

5、CP 套接口的连接方式的数据传输。提供服务器运行状态监视功能。V1.5 在 V1.0 的基础上增加身份验证和服务器控制功能。V2.0 创建可以支持自定义格式的远程日志监视系统。文档可自由编辑打印第第 2 章章基类功能介绍基类功能介绍参照了服务器模式 V1.0 版本,来实现服务器端的网络连接管理。2.1 class CSRMBase : public CparentThread父线程。2.1.1 构造构造CSRMBase(LPCSTR pszSvrName,int iListenPort);pszSvrName 在构造对象时必须提供一个服务器名,该名字在系统中唯一iListenPort 监听端口

6、2.1.2 设置保存信息的最大数量设置保存信息的最大数量void SetMaxMessageNum(UINT uNum=100);uNum 系统保存的信息数,该值最大值为 2002.1.3 得到保存信息的最大数量得到保存信息的最大数量UINT GetMaxMessageNum(void)return m_uMaxElement;返回:当前保存的信息的最大数量2.1.4 添加消息添加消息int AddMessage(LPCSTR pszMsg,LPCSTR pszFlag=msg);pszMsg 需要保存的信息内容pszFlag 消息类型标记(有用户自定义)返回:当前添加的消息的 ID2.2 c

7、lass SRMChild : public CChildThread子线程,用于处理每个客户端的连接。使用者不需要直接使用。文档可自由编辑打印第第 3 章章版本版本 V1.0 功能介绍功能介绍3.1 文件文件commonServerRM.hcommonServerRM.cpp3.2 功能介绍功能介绍V1.0 版本主要是完成了基本的类定义,并且实现了服务器运行状态的监视功能。定义了基本的通信格式。提供了通用的监视客户端软件。3.3 可以完成的功能可以完成的功能实现了最基本的服务器状态监视功能(命令 get)。通信方式采用了非阻塞方式(检测)。所有类中的数据存取都是线程安全的。在客户端支持对特定

8、消息的选择不同的图标。3.4 不能完成的功能不能完成的功能没有实现服务子线程的监控。无法查询当前子线程的具体信息。不能对消息进行物理存储。不支持口令检测命令。3.5 通信包格式通信包格式3.5.1 消息查询包消息查询包客户方:message number文档可自由编辑打印message number:为消息序列号,服务器根据客户端上传的顺序号下发当前日志中学列号大于该序列号的日志。服务器方:ID time msg_type message0.n服务器方可以一次性返回多条记录,每条记录由来包含。ID:消息序列号Time:创建时间Msg_type:消息类型Message:消息内容3.6 通信方式通

9、信方式双方采用请求应答的方式完成通信,每次客户端发起一个查询请求后服务器端返回一次记录集。客户端在没有收取上次的应答就发送下一次的请求时可能会造成请求丢失。文档可自由编辑打印第第 4 章章版本版本 V1.0 服务器端开发说明服务器端开发说明4.1 服务器端开发服务器端开发在服务器端只需要编写简单的代码。CSRMBase srm(test,9099);srm.CreateNewThread(TRUE);srm.AddMessage(“this is a message”,”type”);下面是一个简单的示范(代码见 v09_server_rmt_demo):/初始化 WinSOCKETAfxSo

10、cketInit();/定义监视服务对象CSRMBase srm(test,9099);/创建监听线程srm.CreateNewThread(TRUE);/定义几个消息类型char szType310=通知,警告,错误;while(1)char szMsg100;sprintf(szMsg,%06X - %06X - %06X,rand(),rand(),rand();/添加消息srm.AddMessage(szMsg,szTyperand()%3);Sleep(2000);/每 2 秒钟产生一条日志(消息)4.2 示例示例v09_server_rmt_demo:服务器端演示,定期产生随机的消

11、息。v09_server_rmt_echo_demo:echo 服务器,在 ECHO 服务器的基础上添加了文档可自由编辑打印远程监视的功能。文档可自由编辑打印第第 5 章章版本版本 V1.0 客户端使用说明客户端使用说明5.1 客户端客户端V1.0 自带了一个客户端软件,SRMClient。界面如下:5.2 配置配置在运行客户端前需要创建一个 srmClient.ini 文件记录各类设置数据。5.2.1 基本信息基本信息基本信息格式如下:settingname=SRM Client Demo 显示的名称ip=127.0.0.1 服务器 IP 地址port=9099 服务器监听端口timer=2

12、 刷新频率,以秒计文档可自由编辑打印row=400 保存的消息数量,最少 20 条,最多 20000 条。5.2.2 显示方式显示方式客户端提供下面五种图标用于显示不同消息时的提示,默认图标是最后一个。前三种图标分别代表:错误,警告和通知。格式如下:icon1=:错误:2=:警告:3=:通知:4=:info5:info6:5=:info7:当你使用 int AddMessage(LPCSTR pszMsg,LPCSTR pszFlag=msg);第二个参数就将会在客户端被匹配来确定使用的图标。在设置图标所对应的消息类型时需要将文字两端用冒号“:”包含起来,并且允许为同一图标指定多个消息类型。5.3 运行运行如果运行客户端时不带参数,则程序会使用运行目录下的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论