class SnapshotCollector
Defined at line 37 of file ../../src/developer/forensics/crash_reports/snapshot_collector.h
Manages the collection of snapshots.
To limit memory usage, SnapshotCollector will return the same Uuid to all calls to GetUuid that
occur within |shared_request_window_| of a fuchsia.feedback.DataProvider/GetSnapshot request.
Public Methods
void SnapshotCollector (async_dispatcher_t *dispatcher,timekeeper::Clock *clock,feedback_data::DataProviderInternal *data_provider,SnapshotStore *snapshot_store,Queue *queue,zx::durationshared_request_window)
Defined at line 46 of file ../../src/developer/forensics/crash_reports/snapshot_collector.cc
::fpromise::promise<Report> GetReport (zx::durationtimeout,fuchsia::feedback::CrashReportfidl_report,ProgramShortnameprogram_shortname,ReportIdreport_id,std::optional<timekeeper::time_utc>current_utc_time,const Product &product,boolis_hourly_snapshot,ReportingPolicyreporting_policy)
Returns a promise of a report. The report may have a snapshot uuid, with that snapshot
containing the most up-to-date system data (a new snapshot will be created if all existing
snapshots contain data that is out-of-date). No snapshot will be saved if |timeout| expires.
Defined at line 68 of file ../../src/developer/forensics/crash_reports/snapshot_collector.cc
void Shutdown ()
Shuts down the snapshot manager by cancelling any pending FIDL calls and provides waiting
clients with a UUID for a generic "shutdown" snapshot.
Defined at line 139 of file ../../src/developer/forensics/crash_reports/snapshot_collector.cc