From 82b235c9f50c372d91e80c53c8b9bfcc6009861e Mon Sep 17 00:00:00 2001 From: Johannes Drummer Date: Sat, 6 Feb 2021 11:01:29 +0100 Subject: [PATCH] v2 windows counters on non english systems --- internal/common/common_windows.go | 7 ++++--- load/load_windows.go | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/internal/common/common_windows.go b/internal/common/common_windows.go index cbf4f06..88bf18f 100644 --- a/internal/common/common_windows.go +++ b/internal/common/common_windows.go @@ -72,6 +72,7 @@ var ( PdhOpenQuery = ModPdh.NewProc("PdhOpenQuery") PdhAddCounter = ModPdh.NewProc("PdhAddCounterW") + PdhAddEnglishCounterW = ModPdh.NewProc("PdhAddEnglishCounterW") PdhCollectQueryData = ModPdh.NewProc("PdhCollectQueryData") PdhGetFormattedCounterValue = ModPdh.NewProc("PdhGetFormattedCounterValue") PdhCloseQuery = ModPdh.NewProc("PdhCloseQuery") @@ -113,10 +114,10 @@ func CreateQuery() (windows.Handle, error) { return query, nil } -// CreateCounter with a PdhAddCounter call +// CreateCounter with a PdhAddEnglishCounterW call func CreateCounter(query windows.Handle, pname, cname string) (*CounterInfo, error) { var counter windows.Handle - r, _, err := PdhAddCounter.Call( + r, _, err := PdhAddEnglishCounterW.Call( uintptr(query), uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(cname))), 0, @@ -159,7 +160,7 @@ func NewWin32PerformanceCounter(postName, counterName string) (*Win32Performance PostName: postName, CounterName: counterName, } - r, _, err := PdhAddCounter.Call( + r, _, err := PdhAddEnglishCounterW.Call( uintptr(counter.Query), uintptr(unsafe.Pointer(windows.StringToUTF16Ptr(counter.CounterName))), 0, diff --git a/load/load_windows.go b/load/load_windows.go index 5f3c695..76cfcf5 100644 --- a/load/load_windows.go +++ b/load/load_windows.go @@ -36,7 +36,7 @@ func loadAvgGoroutine() { counter, err := common.ProcessorQueueLengthCounter() if err != nil || counter == nil { - log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github") + log.Println("gopsutil: unexpected processor queue length counter error, please file an issue on github: err") return }