Documentation ¶
Overview ¶
Package monitorstorage holds data produced by the monitor
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // ErrAlreadyStored is raised if the caller tries storing a response which // has already been stored. ErrAlreadyStored = errors.New("already stored revision") // ErrNotFound is raised if the caller tries to retrieve data for an revision // which has not been processed and stored yet. ErrNotFound = errors.New("data for revision not found") )
Functions ¶
This section is empty.
Types ¶
type Interface ¶
type Interface interface { // Set stores the monitoring result for a specific revision. Set(revision int64, r *Result) error // Get retrieves the monitoring result for a specific revision. Get(revision int64) (*Result, error) // LatestRevision returns the highest numbered revision that has been processed. LatestRevision() int64 }
Interface is the interface that stores and retrieves monitoring results. TODO(gbelvin): make multi-tenant.
type Result ¶
type Result struct { // Smr contains the map root signed by the monitor in case all verifications // have passed. Smr *trillian.SignedMapRoot // Seen is the timestamp at which the mutations response has been received. Seen time.Time // Errors contains a string representation of the verifications steps that // failed. Errors []error }
Result describes the monitor's attempt to verify the complete transition from SignedMapRoot (SMR) revision T to revision T+1, having been supplied the set of mutations by which to transform SMR T into SMR T+1.
Result contains the monitor's signature on SMR T if the monitor believes that the transition from T to T+1 is fully correct. It also contains that time at which the monitor observed SMR, and in cases where the verification did not succeed, a list of errors describing the observed problems, and a collection of data by which others can attempt the same verification.