1
0
mirror of https://github.com/prometheus-community/windows_exporter.git synced 2025-11-09 12:20:58 +03:00
Files
windows_exporter/internal/utils/utils.go
Jan-Otto Kröpke 1a4c6c5ce7 feat: Tolerate collector failures (#1769)
Signed-off-by: Jan-Otto Kröpke <mail@jkroepke.de>
2024-11-25 21:27:31 +01:00

48 lines
749 B
Go

//go:build windows
package utils
func MilliSecToSec(t float64) float64 {
return t / 1000
}
func MBToBytes(mb float64) float64 {
return mb * 1024 * 1024
}
func BoolToFloat(b bool) float64 {
if b {
return 1.0
}
return 0.0
}
func ToPTR[t any](v t) *t {
return &v
}
func PercentageToRatio(percentage float64) float64 {
return percentage / 100
}
// Must panics if the error is not nil.
//
//nolint:ireturn
func Must[T any](v T, err error) T {
if err != nil {
panic(err)
}
return v
}
// SplitError returns a slice of errors from the given error. It reverses the [errors.Join] function.
func SplitError(err error) []error {
if errs, ok := err.(interface{ Unwrap() []error }); ok {
return errs.Unwrap()
}
return []error{err}
}