一、glaylog测试 测试环境: CPU: Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz 6核心、6线程 内存:16G 硬盘:480G SSD OS: centos7.6.1810 1、功能测试 1.1 测试在glaylog web界面配置日志采集、展示的功能 测试工具:glaylog系统,chrome 测试方案: 1)使用chrome登录glaylog,为glaylog服务器增加sidecar、filebeat配置,将filebeat关联到sidecar,配置采集glaylog日志文件/var/log/graylog-server/server.log,在glaylog web的search界面检查采集的日志条数是否正常 2)根据上面采集的日志,在glaylog web的dashboards界面创建仪表盘,增加日志条数展示项,检查条数展示情况 测试过程记录: 1)使用chrome登录glaylog,为glaylog服务器增加sidecar、filebeat配置,将filebeat关联到sidecar,配置采集glaylog日志文件/var/log/graylog-server/server.log,在glaylog web的search界面检查采集的日志条数,对比日志文件的日志条数,结果一致 2)根据上面采集的日志,在glaylog web的dashboards界面创建仪表盘,增加日志条数展示项,条数展示结果一致 测试结果: 1)glaylog web界面配置日志采集、展示的功能正常 1.2 测试glaylog日志系统采集日志功能 测试工具:glaylog系统 + filebeat采集器,chrome,shell 测试方案: 1)停止glaylog服务,并删除glaylog日志 2)启动glaylog服务,检查日志采集是否正常 3)持续向glaylog的日志文件写入日志,检查日志采集是否正常 测试过程记录: 1)停止glaylog服务,并删除glaylog日志 2)3分钟后(为了与之前的日志做区分)启动glaylog服务,在glaylog web检查采集的日志数据、条数是否和日志文件一致 3)持续用echo >> 命令向glaylog的日志文件写入日志信息,检查日志采集的数据是否正常 测试结果: 1)启动glaylog服务过程约产生70条日志,采集正常 2)持续用echo >> 命令向glaylog的日志文件写入日志信息,均能正常采集到这些日志信息 2、性能测试 3、异常测试 3.1 正常采集时删除并新建日志文件,日志采集是否正常 测试工具:glaylog系统 + filebeat采集器,chrome,shell 测试方案: 1)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)rm -f test.log,echo 111 >> test.log,检查日志采集是否正常 测试过程记录: 1)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)rm -f test.log,检查采集的日志数据,结果正确,无丢失 3)创建test2.log并写入少量数据,用test2.log覆盖test.log,检查采集的日志数据,结果正确,test2.log也正常采集到了,无丢失 测试结果: 1)在filebeat采集日志时,日志文件被删除、被覆盖,采集结果均正常 3.2 正常采集时杀死filebeat并重启,日志采集是否正常 测试工具:glaylog系统 + filebeat采集器,chrome,shell 测试方案: 1)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)杀死filebeat,并持续向test.log写入之日 3)启动filebeat,检查日志采集是否正常,是否丢失,是否重复发送日志 测试过程记录: 1)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)kill filebeat,并持续向test.log写入之日 3)sidecar会自动启动filebeat,检查采集的日志数据,结果正常,无丢失,无重复发送日志 测试结果: 1)filebeat被作为sidecar的子进程启动,filebeat被kill后,会被sidecar自动启动 2)kill掉filebeat后,kill前后的日志均能正常采集 3.3 正常采集时,日志所在服务器宕机,重启后日志采集是否正常 测试工具:glaylog系统 + filebeat采集器,chrome,shell 测试方案: 1)新搭建一台centos服务器,安装sidecar + filebeat 1)在新服务器上使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)重启日志所在服务器,模拟宕机 3)重启后,检查宕机前后的日志采集是否正常 测试过程记录: 1)用VMWare workstation新搭建一台centos服务器s2,安装sidecar + filebeat 1)在新服务器上使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 2)直接关闭服务器电源,重启 3)重启后,检查宕机前后的日志,宕机前的日志全部重复发送了1遍,经过多次测试,有时会正常把宕机前未收集的日志收集齐全,不重复 测试结果: 1)日志所在服务器突然宕机情况下,宕机前的日志可能会发生问题。 3.4 filebeat正常采集时,发生网络故障,恢复后日志采集是否正常 测试工具:glaylog系统 + filebeat采集器,chrome,shell 测试方案: 1)新搭建一台centos服务器,安装sidecar + filebeat 2)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 3)断开日志所在服务器网络,模拟网络异常 4)20秒后恢复网络,检查宕机前后的日志采集是否正常 测试过程记录: 1)用VMWare workstation新搭建一台centos服务器,安装sidecar + filebeat 2)使用filebeat采集test.log日志文件,使用shell脚本每秒往日志文件写入一条记录,在web上确认日志采集正常 3)断开日志所在服务器网络 4)20秒后恢复网络,检查宕机前后的日志,断开网络期间的日志会补齐,且glaylog记录的时间基本和日志采集时间一致。 测试结果: 1)短暂网络异常不影响filebeat采集日志。 2)Graylog的timestamp字段以客户端的时间为准。 3.5 syslog udp 正常采集时,发生网络故障,恢复后日志采集是否正常 测试工具:glaylog系统 + syslog,chrome,shell 测试方案: 1)新搭建一台centos服务器,安装sidecar + 系统自带syslog 2)使用syslog采集系统日志,使用shell脚本每秒输出一条日志,在web上确认日志采集正常。命令:logger -p mail.info Linux Syslog UDP 64.24: $(date) 3)断开日志所在服务器网络,模拟网络异常 4)20秒后恢复网络,检查宕机前后的日志采集是否正常 测试过程记录: 1)用VMWare workstation新搭建一台centos服务器,安装sidecar + 系统自带syslog 2)使用syslog采集系统日志,使用shell脚本每秒输出一条日志,在web上确认日志采集正常。命令:logger -p mail.info Linux Syslog UDP 64.24: $(date) 3)断开日志所在服务器网络 4)20秒后恢复网络,检查宕机前后的日志,发现从网络断开到恢复后约10S左右时间内的日志丢失 测试结果: 1)网络异常影响syslog udp协议采集日志。 3.6 syslog tcp 正常采集时,发生网络故障,恢复后日志采集是否正常 测试工具:glaylog系统 + syslog,chrome,shell 测试方案: 1)新搭建一台centos服务器,安装sidecar + 系统自带syslog 2)使用syslog采集系统日志,使用shell脚本每秒输出一条日志,在web上确认日志采集正常。命令:logger -p mail.info Linux Syslog TCP 64.24: $(date) 3)断开日志所在服务器网络,模拟网络异常 4)20秒后恢复网络,检查宕机前后的日志采集是否正常 测试过程记录: 1)用VMWare workstation新搭建一台centos服务器,安装sidecar + 系统自带syslog 2)使用syslog采集系统日志,使用shell脚本每秒输出一条日志,在web上确认日志采集正常。命令:logger -p mail.info Linux Syslog TCP 64.24: $(date) 3)断开日志所在服务器网络 4)20秒后恢复网络,检查宕机前后的日志,断开网络期间的日志会补齐,且glaylog记录的时间基本和日志采集时间一致。 测试结果: 1)短暂网络异常不影响syslog tcp采集日志。