filer: adds basic metrics pushing to Prometheus gateway

This commit is contained in:
Chris Lu
2019-06-13 02:01:51 -07:00
parent c542714448
commit a11525fe4e
6 changed files with 88 additions and 2 deletions

View File

@@ -24,8 +24,10 @@ import (
)
type ServerOptions struct {
cpuprofile *string
v VolumeServerOptions
cpuprofile *string
metricsAddress *string
metricsIntervalSec *int
v VolumeServerOptions
}
var (
@@ -81,6 +83,8 @@ var (
func init() {
serverOptions.cpuprofile = cmdServer.Flag.String("cpuprofile", "", "cpu profile output file")
serverOptions.metricsAddress = cmdServer.Flag.String("metrics.address", "", "Prometheus gateway address")
serverOptions.metricsIntervalSec = cmdServer.Flag.Int("metrics.intervalSeconds", 15, "Prometheus push interval in seconds")
filerOptions.collection = cmdServer.Flag.String("filer.collection", "", "all data will be stored in this collection")
filerOptions.port = cmdServer.Flag.Int("filer.port", 8888, "filer server http listen port")
filerOptions.publicPort = cmdServer.Flag.Int("filer.port.public", 0, "filer server public http listen port")
@@ -143,6 +147,9 @@ func runServer(cmd *Command, args []string) bool {
filerOptions.dataCenter = serverDataCenter
filerOptions.disableHttp = serverDisableHttp
filerOptions.metricsAddress = serverOptions.metricsAddress
filerOptions.metricsIntervalSec = serverOptions.metricsIntervalSec
filerAddress := fmt.Sprintf("%s:%d", *serverIp, *filerOptions.port)
s3Options.filer = &filerAddress