今天給配一個aggregator,明明是存在的counter,配好就是報err:invalid value
經過閱讀aggregator的源碼,發現在aggregator/cron/run.go裏面有這樣一個函數
func cleanParam(val string) string {
val = strings.TrimSpace(val)
val = strings.Replace(val, " ", "", -1)
val = strings.Replace(val, "\r", "", -1)
val = strings.Replace(val, "\n", "", -1)
val = strings.Replace(val, "\t", "", -1)
return val
}
這個函數是用來清除aggregator分子分母表達式裏面多餘的空格字符的,但是我的counter名字是用空格隔開的,經過他的清理,counter名自然對不上了
更換counter間隔符爲下劃線,問題解決