class BackfillManager
Defined at line 16 of file ../../third_party/cobalt/src/local_aggregation/backfill_manager.h
BackfillManager is responsible for computing the list of aggregation periods for which no
observations were generated for a particular report.
Public Methods
void BackfillManager (uint32_t total_backfill_window)
|total_backfill_window| The maximum number of past days (with respect to UTC) to generate
daily/hourly observations for. In addition, the BackfillManager may return TimeInfos for
previous hours of the current day for hourly reports, and will return a TimeInfo for the
current day for expedited daily reports.
lib::statusor::StatusOr<std::vector<util::TimeInfo>> CalculateBackfill (util::TimeInfo last_time_info, CivilTimeManager * civil_time_mgr, const MetricDefinition & metric, bool is_daily, bool is_expedited)
CalculateBackfill returns a list of TimeInfos corresponding to aggregation periods for which
observations have not yet been generated. The returned list of TimeInfos will be sorted from
oldest to newest.
|last_time_info| The last `TimeInfo` for which an observation has been generated.
|civil_time_mgr| Converts the end time of the observation generation interval, as well
as earlier hourly time points, into civil times for a given time zone.
|metric| The metric definition associated with the observations.
|is_daily| If true, we should generate daily TimeInfos, otherwise generate hourly.
|is_expedited| If true, generate a TimeInfo for the day of |end_time|.