|
|
|
@ -25,6 +25,7 @@ import (
|
|
|
|
|
|
|
|
|
|
|
|
"golang.org/x/exp/constraints"
|
|
|
|
"golang.org/x/exp/constraints"
|
|
|
|
"tailscale.com/metrics"
|
|
|
|
"tailscale.com/metrics"
|
|
|
|
|
|
|
|
"tailscale.com/syncs"
|
|
|
|
"tailscale.com/types/logger"
|
|
|
|
"tailscale.com/types/logger"
|
|
|
|
"tailscale.com/version"
|
|
|
|
"tailscale.com/version"
|
|
|
|
)
|
|
|
|
)
|
|
|
|
@ -136,6 +137,9 @@ func writePromExpVar(w io.Writer, prefix string, kv expvar.KeyValue) {
|
|
|
|
case *expvar.Int:
|
|
|
|
case *expvar.Int:
|
|
|
|
fmt.Fprintf(w, "# TYPE %s %s\n%s %v\n", name, cmp.Or(typ, "counter"), name, v.Value())
|
|
|
|
fmt.Fprintf(w, "# TYPE %s %s\n%s %v\n", name, cmp.Or(typ, "counter"), name, v.Value())
|
|
|
|
return
|
|
|
|
return
|
|
|
|
|
|
|
|
case *syncs.ShardedInt:
|
|
|
|
|
|
|
|
fmt.Fprintf(w, "# TYPE %s %s\n%s %v\n", name, cmp.Or(typ, "counter"), name, v.Value())
|
|
|
|
|
|
|
|
return
|
|
|
|
case *expvar.Float:
|
|
|
|
case *expvar.Float:
|
|
|
|
fmt.Fprintf(w, "# TYPE %s %s\n%s %v\n", name, cmp.Or(typ, "gauge"), name, v.Value())
|
|
|
|
fmt.Fprintf(w, "# TYPE %s %s\n%s %v\n", name, cmp.Or(typ, "gauge"), name, v.Value())
|
|
|
|
return
|
|
|
|
return
|
|
|
|
|