Не получать сетевые метрики от scollector на Centos 7.1
У нас есть Bosun, работающий на Centos 6.4 и многих узлах в этой ОС. Мы добавили несколько узлов Centos 7.1, и хотя мы получаем базовые метрики, такие как os.cpu, никакие метрики, связанные с сетью, не отображаются.
Я перекомпилировал последнюю версию scollector на 7.1 и вытолкнул ее, но это не помогло. Нужно ли перекомпилировать bosun на 6.4? Или все обратно совместимо?
Спасибо Кен
1 ответ
Прямо сейчас интерфейсы, из которых он будет собирать, ограничены регулярным выражением:
https://github.com/bosun-monitor/bosun/blob/master/cmd/scollector/collectors/ifstat_linux.go
var ifstatRE = regexp.MustCompile(`\s+(eth\d+|em\d+_\d+/\d+|em\d+_\d+|em\d+|` +
`bond\d+|team\d+|` + `p\d+p\d+_\d+/\d+|p\d+p\d+_\d+|p\d+p\d+):(.*)`)
Проблема связана с агрегацией, нам нужно уяснить, является ли интерфейс физическим интерфейсом, туннелем, командой / связью и т. Д. Поэтому мы не хотим случайно получить виртуальные интерфейсы в os.net.bytes, поскольку они портят агрегацию,
Есть пара PR, но они должны решить проблему категоризации, но пока не имеют. Поэтому немедленные обходные пути: вы можете отредактировать код так, чтобы он имел то, что вам нужно, поработать с PR, чтобы сделать его настраиваемым с помощью категории, или переименовать ваши интерфейсы.