mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2026-05-17 00:26:36 +03:00
Follow-up commit for
211fb08028
Address @f41gh7 review comments:
- Move code from `lib/osinfo` to `lib/appmetrics`.
- Make the logic private.
- Use metrics.WriteGaugeUint64 func.
- Remove registration logic from `app/xxx/main.go`.
- Remove `lib/osinfo` package.
27 lines
490 B
Go
27 lines
490 B
Go
package appmetrics
|
|
|
|
import (
|
|
"syscall"
|
|
|
|
"github.com/VictoriaMetrics/VictoriaMetrics/lib/logger"
|
|
)
|
|
|
|
func initOS() {
|
|
os = osInfo{name: "linux"}
|
|
|
|
var uname syscall.Utsname
|
|
if err := syscall.Uname(&uname); err != nil {
|
|
logger.Warnf("vm_os_info metric will miss release info since syscall.Uname failed: %s", err)
|
|
return
|
|
}
|
|
|
|
ur := make([]byte, 0, len(uname.Release))
|
|
for _, v := range uname.Release {
|
|
if v == 0 {
|
|
break
|
|
}
|
|
ur = append(ur, byte(v))
|
|
}
|
|
os.release = string(ur)
|
|
}
|