Documentation ¶
Overview ¶
Package metrics records stats of agones controllers
Index ¶
- Variables
- func MustTagKey(key string) tag.Key
- func RegisterPrometheusExporter(registry *prom.Registry) (http.Handler, error)
- func RegisterStackdriverExporter(projectID string) (sd *stackdriver.Exporter, err error)
- func SetReportingPeriod(prometheus, stackdriver bool)
- type Controller
- type GameServerCount
Constants ¶
This section is empty.
Variables ¶
var ( // MetricResyncPeriod is the interval to re-synchronize metrics based on indexed cache. MetricResyncPeriod = time.Second * 15 )
Functions ¶
func MustTagKey ¶ added in v1.0.0
MustTagKey creates a new `tag.Key` from a string, panic if the key is not a valid.
func RegisterPrometheusExporter ¶
RegisterPrometheusExporter register a prometheus exporter to OpenCensus with a given prometheus metric registry. It will automatically add go runtime and process metrics using default prometheus collectors. The function return an http.handler that you can use to expose the prometheus endpoint.
func RegisterStackdriverExporter ¶ added in v0.8.0
func RegisterStackdriverExporter(projectID string) (sd *stackdriver.Exporter, err error)
RegisterStackdriverExporter register a Stackdriver exporter to OpenCensus. It will add Agones metrics into Stackdriver on Google Cloud.
func SetReportingPeriod ¶ added in v0.8.0
func SetReportingPeriod(prometheus, stackdriver bool)
SetReportingPeriod set appropriate reporting period which depends on exporters we are going to use
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller is a metrics controller collecting Agones state metrics
func NewController ¶
func NewController( kubeClient kubernetes.Interface, agonesClient versioned.Interface, kubeInformerFactory informers.SharedInformerFactory, agonesInformerFactory externalversions.SharedInformerFactory) *Controller
NewController returns a new metrics controller
func (*Controller) Run ¶
func (c *Controller) Run(workers int, stop <-chan struct{}) error
Run the Metrics controller. Will block until stop is closed. Collect metrics via cache changes and parse the cache periodically to record resource counts.
type GameServerCount ¶
type GameServerCount map[agonesv1.GameServerState]map[string]int64
GameServerCount is the count of gameserver per current state and per fleet name