Skip to content

Commit

Permalink
feat(promtail): initContainers (#655)
Browse files Browse the repository at this point in the history
* fix(promtail/targets): remove dependency on prometheus/relabel

`filetargetmanager.go` had a dependency on prometheus/relabel, a package that
has been removed in favor of prometheus/pkg/relabel.
This converts the code to the new package, to allow the prometheus vendor be
updated to master

* chore(vendor): update prometheus vendor

Updates prometheus vendor to current master, to add support for InitContainers
in kubernetes service discovery

* chore(vendor): do dep's homework

Gives dep hints on how to resolve the vendor so that it work

* fix(promtail/targets): non-nil check

Accidentally checked against the wrong labelSet, this one can never get nil
  • Loading branch information
sh0rez authored and cyriltovena committed Jun 7, 2019
1 parent 3021d6f commit 11ad356
Show file tree
Hide file tree
Showing 397 changed files with 55,374 additions and 28,397 deletions.
89 changes: 50 additions & 39 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions Gopkg.toml
Original file line number Diff line number Diff line change
Expand Up @@ -71,3 +71,7 @@
name = "github.com/hpcloud/tail"
source = "github.com/grafana/tail"
branch = "master"

[[override]]
name = "k8s.io/client-go"
revision = "1a26190bd76a9017e289958b9fba936430aa3704"
20 changes: 15 additions & 5 deletions pkg/promtail/targets/filetargetmanager.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ import (
"github.com/prometheus/prometheus/discovery"
sd_config "github.com/prometheus/prometheus/discovery/config"
"github.com/prometheus/prometheus/discovery/targetgroup"
pkgrelabel "github.com/prometheus/prometheus/pkg/relabel"
"github.com/prometheus/prometheus/relabel"
"github.com/prometheus/prometheus/pkg/labels"
"github.com/prometheus/prometheus/pkg/relabel"

"github.com/grafana/loki/pkg/helpers"
"github.com/grafana/loki/pkg/logentry/stages"
Expand Down Expand Up @@ -184,7 +184,7 @@ type targetSyncer struct {
targets map[string]*FileTarget
mtx sync.Mutex

relabelConfig []*pkgrelabel.Config
relabelConfig []*relabel.Config
targetConfig *Config
}

Expand All @@ -201,10 +201,20 @@ func (s *targetSyncer) sync(groups []*targetgroup.Group) {
level.Debug(s.log).Log("msg", "new target", "labels", t)

discoveredLabels := group.Labels.Merge(t)
labels := relabel.Process(discoveredLabels.Clone(), s.relabelConfig...)
var labelMap = make(map[string]string)
for k, v := range discoveredLabels.Clone() {
labelMap[string(k)] = string(v)
}

processedLabels := relabel.Process(labels.FromMap(labelMap), s.relabelConfig...)

var labels = make(model.LabelSet)
for k, v := range processedLabels.Map() {
labels[model.LabelName(k)] = model.LabelValue(v)
}

// Drop empty targets (drop in relabeling).
if labels == nil {
if processedLabels == nil {
dropped = append(dropped, newDroppedTarget("dropping target, no labels", discoveredLabels))
level.Debug(s.log).Log("msg", "dropping target, no labels")
failedTargets.WithLabelValues("empty_labels").Inc()
Expand Down
14 changes: 9 additions & 5 deletions vendor/github.com/gophercloud/gophercloud/.travis.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 11ad356

Please sign in to comment.