AnsweredAssumed Answered

Automate AF Analysis Backfill

Question asked by ckarras on Jul 6, 2015
Latest reply on May 12, 2017 by Mike Zboray

I need to automatically backfill analyses for specific date/time ranges.


I found this discussion that indicates this was not possible (at the time of the discussion):  Re: AF Abacus and Automatic Recalculations  . Was something implemented since then?


I tried implementing something starting from sample code in this discussion  (ProgrammaticAnalysisRecalculation from pthivierge), but found I would have too many cases to implement to really use this, for example:

* Support different types of analyses (Expression, Rollup, Event Frame Generation)

* Support different types of schedules (Event-Triggered, Periodic)

* For event-triggered analyses, lookup data for the source attributes to identify at which times the analyses should be calculated.

* Exclude analyses that are not enabled


It seems that I would be re-implementing a major part of AF Analyses (I would only be reusing expression evaluation, and reimplementing everything else). I would need some way to automate what can be done manually in the "Analyses" tab of PI System Explorer (select 1 or more analysis, click "Backfill checked analyses" enter a date range and click "Queue"). I can live with restrictions when there are old results (for example, I could use the AFSDK to delete old results before requesting a backfill)


I need automated backfilling for the following scenario:

* Delete PI data for a date range

* Reimport data to PI for that date range from the source systems

* Automatically re-evaluate any Analyses for that date range, based on the schedule configured for each analysis


I need this scenario for the following cases:

* Unit and integration testing, including automated tests

* Handle corrections in a source system (re-import data once it has been fixed)