Timing the duration a test has been running

Previously I have tried to do this with the millis(), but since my project will be running for hours at a time, with the voltages changing at irregular intervals, the numbers that the board will have to store will become extremely large. Is there some other way to do what I want to do?

Millis() is the proper 'tool' to use. You don't need to store each unique elapsed times separably, just keep adding the elapsed time the test was true into a single accumulated total time.

Lefty