我一直在记录日志,试图向Comcast Business说明他们在我的办公室中断服务的频率。我将ping响应时间记录到文件中,然后用R解析该文件。在日志文件中,值为1000表示ping超时。我的脚本每5秒记录一次ping。因此,如果我的Comcast服务中断了30秒,那么就会产生大约6个值为1000的日志条目。我想以这样的方式解析我的日志,以便创建一个摘要表格,显示每次中断开始的时间和持续时间。有什么好的方法可以做到这一点?
以下是今天的一些示例数据和说明我的时间序列的一些图形:
以下是今天的一些示例数据和说明我的时间序列的一些图形:
require(xts)
outFile <- "http://pastebin.com/raw.php?i=SJuMQ9rD"
pingLog <- read.csv(outFile, header=FALSE,
col.names = c("time","ms"),
colClasses=c("POSIXct", "numeric"))
xPingLog <- as.xts(pingLog$ms, order.by=pingLog$time)
outages <- subset(pingLog, ms==1000)
xOutages <- as.xts(outages$ms, order.by=outages$time)
par(mfrow=c(2,1))
plot(xPingLog)
plot(outages)
outages
ifelse(pingLog$ms==1000, TRUE, FALSE)
可以缩短为pingLog$ms==1000
。 - tstenner