Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
aos
GitHub Repository: aos/grafana-agent
Path: blob/main/component/loki/source/docker/internal/dockertarget/metrics.go
4096 views
1
package dockertarget
2
3
// This code is copied from Promtail. The dockertarget package is used to
4
// configure and run the targets that can read logs from Docker containers and
5
// forward them to other loki components.
6
7
import "github.com/prometheus/client_golang/prometheus"
8
9
// Metrics holds a set of Docker target metrics.
10
type Metrics struct {
11
reg prometheus.Registerer
12
13
dockerEntries prometheus.Counter
14
dockerErrors prometheus.Counter
15
}
16
17
// NewMetrics creates a new set of Docker target metrics. If reg is non-nil, the
18
// metrics will be registered.
19
func NewMetrics(reg prometheus.Registerer) *Metrics {
20
var m Metrics
21
m.reg = reg
22
23
m.dockerEntries = prometheus.NewCounter(prometheus.CounterOpts{
24
Name: "loki_source_docker_target_entries_total",
25
Help: "Total number of successful entries sent to the Docker target",
26
})
27
m.dockerErrors = prometheus.NewCounter(prometheus.CounterOpts{
28
Name: "loki_source_docker_target_parsing_errors_total",
29
Help: "Total number of parsing errors while receiving Docker messages",
30
})
31
32
if reg != nil {
33
reg.MustRegister(
34
m.dockerEntries,
35
m.dockerErrors,
36
)
37
}
38
39
return &m
40
}
41
42