Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GCPLogEntry ¶
type GCPLogEntry struct {
LogName string `json:"logName"`
Resource struct {
Type string `json:"type"`
Labels map[string]string `json:"labels"`
} `json:"resource"`
Timestamp string `json:"timestamp"`
// The time the log entry was received by Logging.
// Its important that `Timestamp` is optional in GCE log entry.
ReceiveTimestamp string `json:"receiveTimestamp"`
TextPayload string `json:"textPayload"`
}
LogEntry that will be written to the pubsub topic. According to the following spec. https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry nolint:revive
type GcplogTargetManager ¶
type GcplogTargetManager struct {
// contains filtered or unexported fields
}
nolint:revive
func NewGcplogTargetManager ¶
func NewGcplogTargetManager( metrics *Metrics, logger log.Logger, client api.EntryHandler, scrape []scrapeconfig.Config, ) (*GcplogTargetManager, error)
func (*GcplogTargetManager) ActiveTargets ¶
func (tm *GcplogTargetManager) ActiveTargets() map[string][]target.Target
func (*GcplogTargetManager) AllTargets ¶
func (tm *GcplogTargetManager) AllTargets() map[string][]target.Target
func (*GcplogTargetManager) Ready ¶
func (tm *GcplogTargetManager) Ready() bool
func (*GcplogTargetManager) Stop ¶
func (tm *GcplogTargetManager) Stop()
type Metrics ¶
type Metrics struct {
// contains filtered or unexported fields
}
Metrics stores gcplog entry metrics.
func NewMetrics ¶
func NewMetrics(reg prometheus.Registerer) *Metrics
NewMetrics creates a new set of metrics. Metrics will be registered to reg.
type PushMessage ¶
type PushMessage struct {
Message struct {
Attributes map[string]string `json:"attributes"`
Data string `json:"data"`
ID string `json:"message_id"`
PublishTimestamp string `json:"publish_time"`
} `json:"message"`
Subscription string `json:"subscription"`
}
PushMessage is the POST body format sent by GCP PubSub push subscriptions. See https://cloud.google.com/pubsub/docs/push for details.
func (PushMessage) Validate ¶
func (pm PushMessage) Validate() error
type Target ¶
Target is a common interface implemented by both GCPLog targets.
func NewGCPLogTarget ¶
func NewGCPLogTarget( metrics *Metrics, logger log.Logger, handler api.EntryHandler, relabel []*relabel.Config, jobName string, config *scrapeconfig.GcplogTargetConfig, clientOptions ...option.ClientOption, ) (Target, error)
NewGCPLogTarget creates a GCPLog target either with the push or pull implementation, depending on the configured subscription type.
Click to show internal directories.
Click to hide internal directories.