Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
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
31 changes: 31 additions & 0 deletions emptysender/emptysender.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
// Package emptysender implements an empty xstats Sender interface
// Useful for testing locally or perf benchmarks with and without instrumentation
package emptysender

import (
"time"
)

type sender struct {
}

// New creates an instance of type sender
func New() *sender {
return new(sender)
}

// Gauge implements xstats.Sender interface
func (s *sender) Gauge(stat string, value float64, tags ...string) {
}

// Count implements xstats.Sender interface
func (s *sender) Count(stat string, count float64, tags ...string) {
}

// Histogram implements xstats.Sender interface
func (s *sender) Histogram(stat string, value float64, tags ...string) {
}

// Timing implements xstats.Sender interface
func (s *sender) Timing(stat string, value time.Duration, tags ...string) {
}
13 changes: 13 additions & 0 deletions emptysender/emptysender_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package emptysender

import (
"testing"

"github.com/rs/xstats"
"github.com/stretchr/testify/assert"
)

func TestNew(t *testing.T) {
s := New()
assert.Implements(t, (*xstats.Sender)(nil), s)
}