A "smart monitor" you describe is exactly time-series classification.
There are many classification algorithms. They all basically take a matrix, where the rows are observations and the columns are "features" that somehow describe the observation, and a label vector of length rows that is valued either 0 or 1. In your problem an observation maybe a second sample, and your label vector will be valued 1 for the time periods that are experiencing performance issues and 0 otherwise.
Implicit in this definition is the need to resample your data(using the mode/median/mean if necessary) such that each observation is defined evenly, such as seconds or minutes or hours.
Generating the feature is a crucial part. I'd in all probability begin with two features, the raw values and the (once) differenced values between observation x_i and x_i-1. We'll define these for a lag of 2. Technically making these 4 features. Each feature can't look into the future.
Each the feature should represent a similar thing for every observation.
For example consider the time-series of length 10:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
If we want to produce a set of features using lag two intervals in the past then the first two elements of the time-series is considered a burnt-in sample. We can't use the observations related to them to train out algorithm.
The raw values, of 8 rows by 2 columns would be
[[ 1., 0.]
[ 2., 1.],
[ 3., 2.],
[ 4., 3.],
[ 5., 4.],
[ 6., 5.],
[ 7., 6.],
[ 8., 7.]]
The differenced values
[[ 1., 1.],
[ 1., 1.],
[ 1., 1.],
[ 1., 1.],
[ 1., 1.],
[ 1., 1.],
[ 1., 1.]])
These get column stacked. There are many additional features you could explore. Rolling mean would be my next pick.
If you would like to predict further within the future then your training knowledge should be insulating material beyond your label vector.
If performance is not satisfactory then attempt adding additional options by selecting a rolling mean over a much bigger window or add additional back within the future. A clever trick to boost the performance of time-series algorithms is to incorporate the worth of the prediction for the previous quantity.
Fit your classifier on some early a part of the info, then observes its accuracy over a later a part of the info. There are several metrics for classifiers you'll be able to use. If you decide on to use a classifier that outputs chances rather than laborious 1/0, then your options even broaden. (As does the uses of your classifier.)
Precision and recall are intuitive performance metrics of classifiers.
Train on the first (early) half of your data and test on the second half (later).
As way as algorithms go, I'd look into logistic regression. I'd solely look elsewhere if the performance is not satisfactory and you have exhausted feature extraction choices.
Mallet appears to be a good library for the task. See this bit of the docs.
I recently discovered JSAT, which looks promising.
There are more specific approaches to time-series classification that explicitly take into account the sequential nature of the observations and labels. This is a general-purpose adaptation of classification to time-series.