Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAltTokenSource ¶
func NewAltTokenSource(tokenURL, tokenBody string) oauth2.TokenSource
NewAltTokenSource constructs a new alternate token source for generating tokens.
Types ¶
type AltTokenSource ¶
type AltTokenSource struct {
// contains filtered or unexported fields
}
AltTokenSource is the structure holding the data for the functionality needed to generates tokens
type AuthConfig ¶
AuthConfig contains authentication data for making requests to components.
type CommonConfig ¶
type CommonConfig struct {
GceConfig *GceConfig
SourceConfig *SourceConfig
OmitComponentName bool
DowncaseMetricNames bool
MonitoredResourceLabels map[string]string
MonitoredResourceTypePrefix string
}
CommonConfig contains all required information about environment in which prometheus-to-sd running and which component is monitored.
type GceConfig ¶
type GceConfig struct {
Project string
Zone string
Cluster string
ClusterLocation string
// This is actually instance name.
Instance string
InstanceId string
}
GceConfig aggregates all GCE related configuration parameters.
func GetGceConfig ¶
GetGceConfig builds GceConfig based on the provided prefix and metadata server available on GCE.
type PodConfig ¶
type PodConfig interface {
// IsMetricLabel returns true if the label name should be added as a metric label
IsMetricLabel(labelName string) bool
// GetPodInfo returns the information required to identify the pod.
GetPodInfo(labels []*dto.LabelPair) (containerName, podId, namespaceId string)
}
PodConfig can identify metric and resource information for pods.
func NewPodConfig ¶
func NewPodConfig(podId, namespaceId, podIdLabel, namespaceIdLabel, containerNameLabel string) PodConfig
NewPodConfig returns a PodConfig which uses for the provided pod, namespace and container label values, if found, and falls back to the podId and namespaceId.
type SourceConfig ¶
type SourceConfig struct {
Component string
Protocol string
Host string
Port uint
Path string
AuthConfig AuthConfig
Whitelisted []string
WhitelistedLabelsMap map[string]map[string]bool
PodConfig PodConfig
MetricsPrefix string
CustomResourceType string
CustomLabels map[string]string
}
SourceConfig contains data specific for scraping one component.
func SourceConfigsFromDynamicSources ¶
func SourceConfigsFromDynamicSources(gceConfig *GceConfig, sources []flags.Uri) ([]*SourceConfig, error)
SourceConfigsFromDynamicSources takes pod specifications from the Kubernetes API and maps them to source configs.
func SourceConfigsFromFlags ¶
func SourceConfigsFromFlags(source flags.Uris, podId *string, namespaceId *string, defaultMetricsPrefix string) []*SourceConfig
SourceConfigsFromFlags creates a slice of SourceConfig's base on the provided flags.
func (*SourceConfig) UpdateWhitelistedMetrics ¶
func (config *SourceConfig) UpdateWhitelistedMetrics(list []string)
UpdateWhitelistedMetrics sets passed list as a list of whitelisted metrics.