To try and understand the problem a bit better. You have a UFL interface that reads a log file. There will be multiple log files which will contain x number of records. The total number of records for the 24 hour period will be 96. Is this correct?
If it is then I don't believe that you can do the error checking with UFL. UFL doesn't have a persistent state between reading files (I would have to check the manual to see if it can read values back from PI). However, even if it could you can't predict the end of the day; the last file might have all 96 values (hypothetically). What I would do is create a performance equation point that does the count at the end of each day (off set the time by a little).
I've been in a similar situation in a very similar case (UK water company, 15-minute reads from telemetry using UFL).
Because you mention the data is asynchronous, (in other words, you can only check if you have 96 values some reasonable time after the day period passed), imho the UFL interface is not the place to do this. Imho, the interface should just process the raw data, and a separate process should take care of Data Quality checks.Separation of duties.
I'd suggest to build a separate tool which checks of the data of a specific day reflects the expected quantity and frequency. One way is e.g. using Excel and the OLEDB Provider to run a query counting the values per point per day, and use Excel to report the Points for attention. Ofcourse, PE tags, AF Notifications, etc. can do the same job and much more.
Hope this helps!