volume server: adds basic metrics

This commit is contained in:
Chris Lu
2019-06-14 00:54:56 -07:00
parent a11525fe4e
commit 5f6c9825f8
7 changed files with 61 additions and 8 deletions

View File

@@ -45,6 +45,8 @@ type VolumeServerOptions struct {
cpuProfile *string
memProfile *string
compactionMBPerSecond *int
metricsAddress *string
metricsIntervalSec *int
}
func init() {
@@ -66,6 +68,8 @@ func init() {
v.cpuProfile = cmdVolume.Flag.String("cpuprofile", "", "cpu profile output file")
v.memProfile = cmdVolume.Flag.String("memprofile", "", "memory profile output file")
v.compactionMBPerSecond = cmdVolume.Flag.Int("compactionMBps", 0, "limit background compaction or copying speed in mega bytes per second")
v.metricsAddress = cmdVolume.Flag.String("metrics.address", "", "Prometheus gateway address")
v.metricsIntervalSec = cmdVolume.Flag.Int("metrics.intervalSeconds", 15, "Prometheus push interval in seconds")
}
var cmdVolume = &Command{
@@ -161,6 +165,8 @@ func (v VolumeServerOptions) startVolumeServer(volumeFolders, maxVolumeCounts, v
v.whiteList,
*v.fixJpgOrientation, *v.readRedirect,
*v.compactionMBPerSecond,
*v.metricsAddress,
*v.metricsIntervalSec,
)
listeningAddress := *v.bindIp + ":" + strconv.Itoa(*v.port)