aboutsummaryrefslogtreecommitdiffstats
path: root/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd')
-rw-r--r--Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-bench/metrics-bench.go20
-rw-r--r--Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-example/metrics-example.go154
-rw-r--r--Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/never-read/never-read.go22
3 files changed, 196 insertions, 0 deletions
diff --git a/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-bench/metrics-bench.go b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-bench/metrics-bench.go
new file mode 100644
index 000000000..dddaf4b12
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-bench/metrics-bench.go
@@ -0,0 +1,20 @@
+package main
+
+import (
+ "fmt"
+ "github.com/rcrowley/go-metrics"
+ "time"
+)
+
+func main() {
+ r := metrics.NewRegistry()
+ for i := 0; i < 10000; i++ {
+ r.Register(fmt.Sprintf("counter-%d", i), metrics.NewCounter())
+ r.Register(fmt.Sprintf("gauge-%d", i), metrics.NewGauge())
+ r.Register(fmt.Sprintf("gaugefloat64-%d", i), metrics.NewGaugeFloat64())
+ r.Register(fmt.Sprintf("histogram-uniform-%d", i), metrics.NewHistogram(metrics.NewUniformSample(1028)))
+ r.Register(fmt.Sprintf("histogram-exp-%d", i), metrics.NewHistogram(metrics.NewExpDecaySample(1028, 0.015)))
+ r.Register(fmt.Sprintf("meter-%d", i), metrics.NewMeter())
+ }
+ time.Sleep(600e9)
+}
diff --git a/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-example/metrics-example.go b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-example/metrics-example.go
new file mode 100644
index 000000000..66f42c046
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/metrics-example/metrics-example.go
@@ -0,0 +1,154 @@
+package main
+
+import (
+ "errors"
+ "github.com/rcrowley/go-metrics"
+ // "github.com/rcrowley/go-metrics/stathat"
+ "log"
+ "math/rand"
+ "os"
+ // "syslog"
+ "time"
+)
+
+const fanout = 10
+
+func main() {
+
+ r := metrics.NewRegistry()
+
+ c := metrics.NewCounter()
+ r.Register("foo", c)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ c.Dec(19)
+ time.Sleep(300e6)
+ }
+ }()
+ go func() {
+ for {
+ c.Inc(47)
+ time.Sleep(400e6)
+ }
+ }()
+ }
+
+ g := metrics.NewGauge()
+ r.Register("bar", g)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ g.Update(19)
+ time.Sleep(300e6)
+ }
+ }()
+ go func() {
+ for {
+ g.Update(47)
+ time.Sleep(400e6)
+ }
+ }()
+ }
+
+ gf := metrics.NewGaugeFloat64()
+ r.Register("barfloat64", gf)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ g.Update(19.0)
+ time.Sleep(300e6)
+ }
+ }()
+ go func() {
+ for {
+ g.Update(47.0)
+ time.Sleep(400e6)
+ }
+ }()
+ }
+
+ hc := metrics.NewHealthcheck(func(h metrics.Healthcheck) {
+ if 0 < rand.Intn(2) {
+ h.Healthy()
+ } else {
+ h.Unhealthy(errors.New("baz"))
+ }
+ })
+ r.Register("baz", hc)
+
+ s := metrics.NewExpDecaySample(1028, 0.015)
+ //s := metrics.NewUniformSample(1028)
+ h := metrics.NewHistogram(s)
+ r.Register("bang", h)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ h.Update(19)
+ time.Sleep(300e6)
+ }
+ }()
+ go func() {
+ for {
+ h.Update(47)
+ time.Sleep(400e6)
+ }
+ }()
+ }
+
+ m := metrics.NewMeter()
+ r.Register("quux", m)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ m.Mark(19)
+ time.Sleep(300e6)
+ }
+ }()
+ go func() {
+ for {
+ m.Mark(47)
+ time.Sleep(400e6)
+ }
+ }()
+ }
+
+ t := metrics.NewTimer()
+ r.Register("hooah", t)
+ for i := 0; i < fanout; i++ {
+ go func() {
+ for {
+ t.Time(func() { time.Sleep(300e6) })
+ }
+ }()
+ go func() {
+ for {
+ t.Time(func() { time.Sleep(400e6) })
+ }
+ }()
+ }
+
+ metrics.RegisterDebugGCStats(r)
+ go metrics.CaptureDebugGCStats(r, 5e9)
+
+ metrics.RegisterRuntimeMemStats(r)
+ go metrics.CaptureRuntimeMemStats(r, 5e9)
+
+ metrics.Log(r, 60e9, log.New(os.Stderr, "metrics: ", log.Lmicroseconds))
+
+ /*
+ w, err := syslog.Dial("unixgram", "/dev/log", syslog.LOG_INFO, "metrics")
+ if nil != err { log.Fatalln(err) }
+ metrics.Syslog(r, 60e9, w)
+ */
+
+ /*
+ addr, _ := net.ResolveTCPAddr("tcp", "127.0.0.1:2003")
+ metrics.Graphite(r, 10e9, "metrics", addr)
+ */
+
+ /*
+ stathat.Stathat(r, 10e9, "example@example.com")
+ */
+
+}
diff --git a/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/never-read/never-read.go b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/never-read/never-read.go
new file mode 100644
index 000000000..dc175b778
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rcrowley/go-metrics/cmd/never-read/never-read.go
@@ -0,0 +1,22 @@
+package main
+
+import (
+ "log"
+ "net"
+)
+
+func main() {
+ addr, _ := net.ResolveTCPAddr("tcp", "127.0.0.1:2003")
+ l, err := net.ListenTCP("tcp", addr)
+ if nil != err {
+ log.Fatalln(err)
+ }
+ log.Println("listening", l.Addr())
+ for {
+ c, err := l.AcceptTCP()
+ if nil != err {
+ log.Fatalln(err)
+ }
+ log.Println("accepted", c.RemoteAddr())
+ }
+}