aboutsummaryrefslogtreecommitdiff
path: root/weed/stats/metrics.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/stats/metrics.go')
-rw-r--r--weed/stats/metrics.go12
1 files changed, 10 insertions, 2 deletions
diff --git a/weed/stats/metrics.go b/weed/stats/metrics.go
index a9a24ce31..454b35d7a 100644
--- a/weed/stats/metrics.go
+++ b/weed/stats/metrics.go
@@ -1,7 +1,6 @@
package stats
import (
- "fmt"
"log"
"net"
"net/http"
@@ -282,12 +281,21 @@ func LoopPushingMetric(name, instance, addr string, intervalSeconds int) {
}
}
+func JoinHostPort(host string, port int) string {
+ portStr := strconv.Itoa(port)
+ if strings.HasPrefix(host, "[") && strings.HasSuffix(host, "]") {
+ return host + ":" + portStr
+ }
+ return net.JoinHostPort(host, portStr)
+}
+
+
func StartMetricsServer(ip string, port int) {
if port == 0 {
return
}
http.Handle("/metrics", promhttp.HandlerFor(Gather, promhttp.HandlerOpts{}))
- log.Fatal(http.ListenAndServe(fmt.Sprintf("%s:%d", ip, port), nil))
+ log.Fatal(http.ListenAndServe(JoinHostPort(ip, port), nil))
}
func SourceName(port uint32) string {