Skip to content
This repository was archived by the owner on Mar 9, 2022. It is now read-only.

Use monitor component #64

Merged
merged 16 commits into from
Apr 17, 2018
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
filter: Clean up generation of per rule metrics
  • Loading branch information
mjs committed Apr 10, 2018
commit e037211d0045c61af6e8b870cfaf43f58330ff8f
21 changes: 8 additions & 13 deletions filter/filter.go
Original file line number Diff line number Diff line change
@@ -24,7 +24,6 @@ import (
"time"

"github.com/jumptrading/influx-spout/config"
"github.com/jumptrading/influx-spout/prometheus"
"github.com/jumptrading/influx-spout/stats"
"github.com/nats-io/go-nats"
)
@@ -172,20 +171,16 @@ func (f *Filter) startStatistician(st *stats.Stats, rules *RuleSet) {
f.nc.Publish(f.c.NATSSubjectMonitor, lines)

// publish the per rule stats
// XXX merge with SnapshotToPrometheus
millis := now.UnixNano() / int64(time.Millisecond)
for i, subject := range rules.Subjects() {
metric := &prometheus.Metric{
Name: []byte("triggered"),
Labels: prometheus.LabelPairs{
{[]byte("filter"), []byte(f.c.Name)},
{[]byte("rule"), []byte(subject)},
f.nc.Publish(f.c.NATSSubjectMonitor, stats.CounterToPrometheus(
"triggered",
ruleCounts[i],
now,
map[string]string{
"filter": f.c.Name,
"rule": subject,
},
Value: int64(ruleCounts[i]),
Milliseconds: millis,
}

f.nc.Publish(f.c.NATSSubjectMonitor, metric.ToBytes())
))
}

select {