move v4 changes
This commit is contained in:
@@ -2,14 +2,32 @@ package victoriametrics
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"go.unistack.org/micro/v3/client"
|
||||
"go.unistack.org/micro/v3/codec"
|
||||
"go.unistack.org/micro/v3/meter"
|
||||
)
|
||||
|
||||
func BenchmarkBuildName(b *testing.B) {
|
||||
m := NewMeter(meter.Labels("pod", "xxx"))
|
||||
if err := m.Init(); err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
im := m.(*victoriametricsMeter)
|
||||
b.ResetTimer()
|
||||
for i := 0; i < b.N; i++ {
|
||||
name := im.buildName("micro_foo", "bar", "baz", "aaa", "b", "ccc", "d")
|
||||
_ = name
|
||||
}
|
||||
}
|
||||
|
||||
func TestBuildName(t *testing.T) {
|
||||
m := NewMeter()
|
||||
im := m.(*victoriametricsMeter)
|
||||
check := `micro_foo{micro_aaa="b",micro_bar="baz",micro_ccc="d"}`
|
||||
name := im.buildName("micro_foo", "micro_bar", "baz", "micro_aaa", "b", "micro_ccc", "d")
|
||||
check := `micro_foo{bar="baz",aaa="b",ccc="d"}`
|
||||
name := im.buildName("micro_foo", "bar", "baz", "aaa", "b", "ccc", "d")
|
||||
if name != check {
|
||||
t.Fatalf("metric name error: %s != %s", name, check)
|
||||
}
|
||||
@@ -18,12 +36,24 @@ func TestBuildName(t *testing.T) {
|
||||
cnt.Inc()
|
||||
}
|
||||
|
||||
func TestPrometheusCompat(t *testing.T) {
|
||||
m := NewMeter(PrometheusCompat(true))
|
||||
m.Histogram("foo", "key", "val").Update(15)
|
||||
func TestWrapper(t *testing.T) {
|
||||
m := NewMeter()
|
||||
if err := m.Init(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
ctx := context.Background()
|
||||
|
||||
c := client.NewClient(client.Meter(m))
|
||||
if err := c.Init(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
rsp := &codec.Frame{}
|
||||
req := &codec.Frame{}
|
||||
err := c.Call(ctx, c.NewRequest("svc2", "Service.Method", req), rsp)
|
||||
_, _ = rsp, err
|
||||
buf := bytes.NewBuffer(nil)
|
||||
|
||||
_ = m.Write(buf)
|
||||
t.Logf("\n%s", buf.Bytes())
|
||||
_ = m.Write(buf, meter.WriteProcessMetrics(false), meter.WriteFDMetrics(false))
|
||||
if !bytes.Contains(buf.Bytes(), []byte(`micro_client_request_total{endpoint="Service.Method",status="failure",code="500"} 1`)) {
|
||||
t.Fatalf("invalid metrics output: %s", buf.Bytes())
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user