mirror of
https://github.com/prometheus-community/windows_exporter.git
synced 2026-02-23 13:16:36 +00:00
@@ -12,16 +12,11 @@ import (
|
|||||||
// (for many use cases the index is sufficient)
|
// (for many use cases the index is sufficient)
|
||||||
|
|
||||||
var CounterNameTable = *QueryNameTable("Counter 009")
|
var CounterNameTable = *QueryNameTable("Counter 009")
|
||||||
var HelpNameTable = *QueryNameTable("Help 009")
|
|
||||||
|
|
||||||
func (p *perfObjectType) LookupName() string {
|
func (p *perfObjectType) LookupName() string {
|
||||||
return CounterNameTable.LookupString(p.ObjectNameTitleIndex)
|
return CounterNameTable.LookupString(p.ObjectNameTitleIndex)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *perfObjectType) LookupHelp() string {
|
|
||||||
return HelpNameTable.LookupString(p.ObjectHelpTitleIndex)
|
|
||||||
}
|
|
||||||
|
|
||||||
type NameTable struct {
|
type NameTable struct {
|
||||||
byIndex map[uint32]string
|
byIndex map[uint32]string
|
||||||
byString map[string]uint32
|
byString map[string]uint32
|
||||||
|
|||||||
@@ -127,13 +127,9 @@ const averageCount64Type = 1073874176
|
|||||||
|
|
||||||
// PerfObject Top-level performance object (like "Process").
|
// PerfObject Top-level performance object (like "Process").
|
||||||
type PerfObject struct {
|
type PerfObject struct {
|
||||||
Name string
|
Name string
|
||||||
// Same index you pass to QueryPerformanceData
|
Instances []*PerfInstance
|
||||||
NameIndex uint
|
CounterDefs []*PerfCounterDef
|
||||||
HelpText string
|
|
||||||
HelpTextIndex uint
|
|
||||||
Instances []*PerfInstance
|
|
||||||
CounterDefs []*PerfCounterDef
|
|
||||||
|
|
||||||
Frequency int64
|
Frequency int64
|
||||||
|
|
||||||
@@ -152,10 +148,7 @@ type PerfInstance struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type PerfCounterDef struct {
|
type PerfCounterDef struct {
|
||||||
Name string
|
Name string
|
||||||
NameIndex uint
|
|
||||||
HelpText string
|
|
||||||
HelpTextIndex uint
|
|
||||||
|
|
||||||
// For debugging - subject to removal. CounterType is a perflib
|
// For debugging - subject to removal. CounterType is a perflib
|
||||||
// implementation detail (see perflib.h) and should not be used outside
|
// implementation detail (see perflib.h) and should not be used outside
|
||||||
@@ -330,14 +323,11 @@ func QueryPerformanceData(query string) ([]*PerfObject, error) {
|
|||||||
counterDefs := make([]*PerfCounterDef, numCounterDefs)
|
counterDefs := make([]*PerfCounterDef, numCounterDefs)
|
||||||
|
|
||||||
objects[i] = &PerfObject{
|
objects[i] = &PerfObject{
|
||||||
Name: obj.LookupName(),
|
Name: obj.LookupName(),
|
||||||
NameIndex: uint(obj.ObjectNameTitleIndex),
|
Instances: instances,
|
||||||
HelpText: obj.LookupHelp(),
|
CounterDefs: counterDefs,
|
||||||
HelpTextIndex: uint(obj.ObjectHelpTitleIndex),
|
Frequency: obj.PerfFreq,
|
||||||
Instances: instances,
|
rawData: obj,
|
||||||
CounterDefs: counterDefs,
|
|
||||||
Frequency: obj.PerfFreq,
|
|
||||||
rawData: obj,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for i := 0; i < numCounterDefs; i++ {
|
for i := 0; i < numCounterDefs; i++ {
|
||||||
@@ -348,11 +338,8 @@ func QueryPerformanceData(query string) ([]*PerfObject, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
counterDefs[i] = &PerfCounterDef{
|
counterDefs[i] = &PerfCounterDef{
|
||||||
Name: def.LookupName(),
|
Name: def.LookupName(),
|
||||||
NameIndex: uint(def.CounterNameTitleIndex),
|
rawData: def,
|
||||||
HelpText: def.LookupHelp(),
|
|
||||||
HelpTextIndex: uint(def.CounterHelpTitleIndex),
|
|
||||||
rawData: def,
|
|
||||||
|
|
||||||
CounterType: def.CounterType,
|
CounterType: def.CounterType,
|
||||||
|
|
||||||
|
|||||||
@@ -133,10 +133,6 @@ func (p *perfCounterDefinition) LookupName() string {
|
|||||||
return CounterNameTable.LookupString(p.CounterNameTitleIndex)
|
return CounterNameTable.LookupString(p.CounterNameTitleIndex)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *perfCounterDefinition) LookupHelp() string {
|
|
||||||
return HelpNameTable.LookupString(p.CounterHelpTitleIndex)
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
perfCounterBlock
|
perfCounterBlock
|
||||||
See: https://msdn.microsoft.com/en-us/library/windows/desktop/aa373147(v=vs.85).aspx
|
See: https://msdn.microsoft.com/en-us/library/windows/desktop/aa373147(v=vs.85).aspx
|
||||||
|
|||||||
Reference in New Issue
Block a user