Documentation
¶
Overview ¶
Package monitor contains the code for sending metric data to monitoring endpoints.
Package monitor contains the code for sending metric data to monitoring endpoints.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // ProdxmonScopes is the list of oauth2 scopes needed on the http client // given to NewHTTPMonitor. ProdxmonScopes = []string{"https://www.googleapis.com/auth/prodxmon"} )
Functions ¶
func SerializeCells ¶
SerializeCells creates a MetricsCollection message from a slice of cells.
func SerializeDataSet ¶
func SerializeDataSet(c types.Cell) *pb.MetricsDataSet
SerializeDataSet creates a new MetricsDataSet without any data, but just with the metric metadata fields populated.
Types ¶
type Fake ¶
Fake is a fake Monitor.
type Monitor ¶
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.
func NewDebugMonitor ¶
NewDebugMonitor returns a Monitor that outputs metrics to a log, and optionally a file on disk.
func NewHTTPMonitor ¶
NewHTTPMonitor creates a new Monitor object that sends metric to an HTTP (or HTTPS) endpoint. The http client should be authenticated as required.
Source Files
¶
- acq.go
- debug.go
- doc.go
- fake.go
- http.go
- monitor.go
- nil.go
- serialize.go