class CrashServer
Defined at line 29 of file ../../src/developer/forensics/crash_reports/crash_server.h
Represents the HTTP crash server to which the agent uploads crash reports to.
|fuchsia.net.http.Loader| is expected to be in |services|.
Public Methods
void ~CrashServer ()
Defined at line 37 of file ../../src/developer/forensics/crash_reports/crash_server.h
bool HasPendingRequest ()
Defined at line 39 of file ../../src/developer/forensics/crash_reports/crash_server.h
void CrashServer (async_dispatcher_t *dispatcher,std::shared_ptr<sys::ServiceDirectory>services,const std::string &url,LogTags *tags,feedback::AnnotationManager *annotation_manager,timekeeper::Clock *clock)
Defined at line 170 of file ../../src/developer/forensics/crash_reports/crash_server.cc
void MakeRequest (const Report &report,const Snapshot &snapshot,cobalt::Logger &cobalt,::fit::function<void (UploadStatus, std::string)>callback)
Makes the HTTP request using |report| and |snapshot|.
Executes |callback| on completion with whether the request was successful (HTTP status
code [200-203]) and the crash report id on the server, if the request was successful.
Note: Only a single call to MakeRequest can be outstanding at a time.
Defined at line 186 of file ../../src/developer/forensics/crash_reports/crash_server.cc
std::map<std::string, std::string> PrepareAnnotations (const Report &report,const Snapshot &snapshot,const feedback::AnnotationManager *annotation_manager,zx::time_bootuptime)
Combines the annotations from |report|, |snapshot|, and |annotation_manager| into annotations
for upload.
* Annotations from |report| are always included.
* Only "presence" annotations from |snapshot| are included.
* Only the upload boot id from |annotation_manager| is included (if the current boot id is
immediately available).
Defined at line 345 of file ../../src/developer/forensics/crash_reports/crash_server.cc
Enumerations
enum UploadStatus
| Name | Value |
|---|---|
| kSuccess | 0 |
| kFailure | 1 |
| kThrottled | 2 |
| kTimedOut | 3 |
Defined at line 31 of file ../../src/developer/forensics/crash_reports/crash_server.h