@Rob I think you might have to answer some questions for yourself (and us if we should be able to help you further).
The first question is: do you have a ground truth? Do you know (in retrospect) which lines (500k lines) are OK or Not-OK? If you have this ground truth you could proceed fro there. If you do not have it you will have to employ techniques of anomaly detection and check back if someone might be able to interpret the times where you found anomalies which might or might not hint at a ‘Not-OK’ status.
If we assume you have the ground truth you will have to employ techniques of data reduction (to one line). One extremely brutal technique would be to transpose all 500k lines to columns to produce a table that has one entry for each instance. That would be extremely hard to handle and all following models would require a lot of dimension reduction.
For a starter, you could try and remove highly correlated values as they might not add any relevant information to what you might want to find.
An alternative could be to provide each line with ‘only’ the preceding 10 or 100 lines depending on what kind of relationship you would expect them to have and what kind of trend an expert would expect from the sensor results.
Then you could employ more simple aggregation functions like mean, min, max, kurtosis and skewness or other trend methods to describe your entity.
If you are dealing with time series you might try and use a tool like tsfresh and see if you could extract time-related trends. I am not 100% sure it can handle grouped time series but might be worth a try.
In general, it would make sense to know more about the logic and inner workings of this machine and what experts would expect and what measures they deem to be relevant.