import "go.chromium.org/luci/common/tsmon/monitor"
Package monitor contains the code for sending metric data to monitoring endpoints.
Package monitor contains the code for sending metric data to monitoring endpoints.
acq.go debug.go doc.go fake.go http.go monitor.go nil.go serialize.go
var ( // ProdxmonScopes is the list of oauth2 scopes needed on the http client // given to NewHTTPMonitor. ProdxmonScopes = []string{"https://www.googleapis.com/auth/prodxmon"} )
SerializeCells creates a MetricsCollection message from a slice of cells.
func SerializeDataSet(c types.Cell) *pb.MetricsDataSet
SerializeDataSet creates a new MetricsDataSet without any data, but just with the metric metadata fields populated.
SerializeValue creates a new MetricsData representing this cell's value.
Fake is a fake Monitor.
ChunkSize returns the fake value.
Close always works.
Send appends the cells to Cells, unless SendErr is set.
type Monitor interface { // ChunkSize returns the maximum number of metrics this Monitor can Send in // one go. If there are more metrics, they will be broken up into chunks and // Send will be called multiple times. A ChunkSize of 0 disables chunking. ChunkSize() int Send(ctx context.Context, cells []types.Cell) error // Close closes any resources held by the monitor. // // Close need not be called at program exit. Close() error }
A Monitor can send a collection of metrics somewhere.
NewDebugMonitor returns a Monitor that outputs metrics to a log, and optionally a file on disk.
NewHTTPMonitor creates a new Monitor object that sends metric to an HTTP (or HTTPS) endpoint. The http client should be authenticated as required.
NewNilMonitor returns a Monitor that does nothing.
Package monitor imports 17 packages (graph) and is imported by 12 packages. Updated 2021-01-21. Refresh now. Tools for package owners.