mirror of
https://github.com/prometheus-community/windows_exporter.git
synced 2026-03-07 02:56:35 +00:00
chore: Remove registry based perfdata collector (#1742)
Signed-off-by: Jan-Otto Kröpke <mail@jkroepke.de>
This commit is contained in:
@@ -10,7 +10,6 @@ import (
|
||||
"github.com/alecthomas/kingpin/v2"
|
||||
"github.com/prometheus-community/windows_exporter/internal/mi"
|
||||
"github.com/prometheus-community/windows_exporter/internal/perfdata"
|
||||
"github.com/prometheus-community/windows_exporter/internal/toggle"
|
||||
"github.com/prometheus-community/windows_exporter/internal/types"
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
)
|
||||
@@ -21,11 +20,10 @@ type Config struct{}
|
||||
|
||||
var ConfigDefaults = Config{}
|
||||
|
||||
// A Collector is a Prometheus Collector for WMI Win32_PerfRawData_DirectoryServices_DirectoryServices metrics.
|
||||
type Collector struct {
|
||||
config Config
|
||||
|
||||
perfDataCollector perfdata.Collector
|
||||
perfDataCollector *perfdata.Collector
|
||||
|
||||
addressBookClientSessions *prometheus.Desc
|
||||
addressBookOperationsTotal *prometheus.Desc
|
||||
@@ -111,14 +109,8 @@ func (c *Collector) GetName() string {
|
||||
return Name
|
||||
}
|
||||
|
||||
func (c *Collector) GetPerfCounter(_ *slog.Logger) ([]string, error) {
|
||||
return []string{}, nil
|
||||
}
|
||||
|
||||
func (c *Collector) Close(_ *slog.Logger) error {
|
||||
if toggle.IsPDHEnabled() {
|
||||
c.perfDataCollector.Close()
|
||||
}
|
||||
func (c *Collector) Close() error {
|
||||
c.perfDataCollector.Close()
|
||||
|
||||
return nil
|
||||
}
|
||||
@@ -273,7 +265,7 @@ func (c *Collector) Build(_ *slog.Logger, _ *mi.Session) error {
|
||||
|
||||
var err error
|
||||
|
||||
c.perfDataCollector, err = perfdata.NewCollector(perfdata.V2, "DirectoryServices", perfdata.AllInstances, counters)
|
||||
c.perfDataCollector, err = perfdata.NewCollector("DirectoryServices", perfdata.InstanceAll, counters)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to create DirectoryServices collector: %w", err)
|
||||
}
|
||||
@@ -657,11 +649,7 @@ func (c *Collector) Build(_ *slog.Logger, _ *mi.Session) error {
|
||||
|
||||
// Collect sends the metric values for each metric
|
||||
// to the provided prometheus Metric channel.
|
||||
func (c *Collector) Collect(_ *types.ScrapeContext, _ *slog.Logger, ch chan<- prometheus.Metric) error {
|
||||
return c.collect(ch)
|
||||
}
|
||||
|
||||
func (c *Collector) collect(ch chan<- prometheus.Metric) error {
|
||||
func (c *Collector) Collect(ch chan<- prometheus.Metric) error {
|
||||
perfData, err := c.perfDataCollector.Collect()
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to collect DirectoryServices (AD) metrics: %w", err)
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
//go:build windows
|
||||
|
||||
package ad_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/prometheus-community/windows_exporter/internal/collector/ad"
|
||||
"github.com/prometheus-community/windows_exporter/internal/testutils"
|
||||
"github.com/prometheus-community/windows_exporter/internal/utils/testutils"
|
||||
)
|
||||
|
||||
func BenchmarkCollector(b *testing.B) {
|
||||
|
||||
@@ -205,155 +205,3 @@ const (
|
||||
_ = "Warning eventlogs since boot"
|
||||
_ = "Warning events since boot"
|
||||
)
|
||||
|
||||
// Win32_PerfRawData_DirectoryServices_DirectoryServices docs:
|
||||
// - https://msdn.microsoft.com/en-us/library/ms803980.aspx
|
||||
type Win32_PerfRawData_DirectoryServices_DirectoryServices struct {
|
||||
Name string
|
||||
|
||||
ABANRPersec uint32
|
||||
ABBrowsesPersec uint32
|
||||
ABClientSessions uint32
|
||||
ABMatchesPersec uint32
|
||||
ABPropertyReadsPersec uint32
|
||||
ABProxyLookupsPersec uint32
|
||||
ABSearchesPersec uint32
|
||||
ApproximatehighestDNT uint32
|
||||
ATQEstimatedQueueDelay uint32
|
||||
ATQOutstandingQueuedRequests uint32
|
||||
ATQRequestLatency uint32
|
||||
ATQThreadsLDAP uint32
|
||||
ATQThreadsOther uint32
|
||||
ATQThreadsTotal uint32
|
||||
BasesearchesPersec uint32
|
||||
DatabaseaddsPersec uint32
|
||||
DatabasedeletesPersec uint32
|
||||
DatabasemodifysPersec uint32
|
||||
DatabaserecyclesPersec uint32
|
||||
DigestBindsPersec uint32
|
||||
DRAHighestUSNCommittedHighpart uint64
|
||||
DRAHighestUSNCommittedLowpart uint64
|
||||
DRAHighestUSNIssuedHighpart uint64
|
||||
DRAHighestUSNIssuedLowpart uint64
|
||||
DRAInboundBytesCompressedBetweenSitesAfterCompressionPersec uint32
|
||||
DRAInboundBytesCompressedBetweenSitesAfterCompressionSinceBoot uint32
|
||||
DRAInboundBytesCompressedBetweenSitesBeforeCompressionPersec uint32
|
||||
DRAInboundBytesCompressedBetweenSitesBeforeCompressionSinceBoot uint32
|
||||
DRAInboundBytesNotCompressedWithinSitePersec uint32
|
||||
DRAInboundBytesNotCompressedWithinSiteSinceBoot uint32
|
||||
DRAInboundBytesTotalPersec uint32
|
||||
DRAInboundBytesTotalSinceBoot uint32
|
||||
DRAInboundFullSyncObjectsRemaining uint32
|
||||
DRAInboundLinkValueUpdatesRemaininginPacket uint32
|
||||
DRAInboundObjectsAppliedPersec uint32
|
||||
DRAInboundObjectsFilteredPersec uint32
|
||||
DRAInboundObjectsPersec uint32
|
||||
DRAInboundObjectUpdatesRemaininginPacket uint32
|
||||
DRAInboundPropertiesAppliedPersec uint32
|
||||
DRAInboundPropertiesFilteredPersec uint32
|
||||
DRAInboundPropertiesTotalPersec uint32
|
||||
DRAInboundTotalUpdatesRemaininginPacket uint32
|
||||
DRAInboundValuesDNsonlyPersec uint32
|
||||
DRAInboundValuesTotalPersec uint32
|
||||
DRAOutboundBytesCompressedBetweenSitesAfterCompressionPersec uint32
|
||||
DRAOutboundBytesCompressedBetweenSitesAfterCompressionSinceBoot uint32
|
||||
DRAOutboundBytesCompressedBetweenSitesBeforeCompressionPersec uint32
|
||||
DRAOutboundBytesCompressedBetweenSitesBeforeCompressionSinceBoot uint32
|
||||
DRAOutboundBytesNotCompressedWithinSitePersec uint32
|
||||
DRAOutboundBytesNotCompressedWithinSiteSinceBoot uint32
|
||||
DRAOutboundBytesTotalPersec uint32
|
||||
DRAOutboundBytesTotalSinceBoot uint32
|
||||
DRAOutboundObjectsFilteredPersec uint32
|
||||
DRAOutboundObjectsPersec uint32
|
||||
DRAOutboundPropertiesPersec uint32
|
||||
DRAOutboundValuesDNsonlyPersec uint32
|
||||
DRAOutboundValuesTotalPersec uint32
|
||||
DRAPendingReplicationOperations uint32
|
||||
DRAPendingReplicationSynchronizations uint32
|
||||
DRASyncFailuresonSchemaMismatch uint32
|
||||
DRASyncRequestsMade uint32
|
||||
DRASyncRequestsSuccessful uint32
|
||||
DRAThreadsGettingNCChanges uint32
|
||||
DRAThreadsGettingNCChangesHoldingSemaphore uint32
|
||||
DSClientBindsPersec uint32
|
||||
DSClientNameTranslationsPersec uint32
|
||||
DSDirectoryReadsPersec uint32
|
||||
DSDirectorySearchesPersec uint32
|
||||
DSDirectoryWritesPersec uint32
|
||||
DSMonitorListSize uint32
|
||||
DSNameCachehitrate uint32
|
||||
DSNameCachehitrate_Base uint32
|
||||
DSNotifyQueueSize uint32
|
||||
DSPercentReadsfromDRA uint32
|
||||
DSPercentReadsfromKCC uint32
|
||||
DSPercentReadsfromLSA uint32
|
||||
DSPercentReadsfromNSPI uint32
|
||||
DSPercentReadsfromNTDSAPI uint32
|
||||
DSPercentReadsfromSAM uint32
|
||||
DSPercentReadsOther uint32
|
||||
DSPercentSearchesfromDRA uint32
|
||||
DSPercentSearchesfromKCC uint32
|
||||
DSPercentSearchesfromLDAP uint32
|
||||
DSPercentSearchesfromLSA uint32
|
||||
DSPercentSearchesfromNSPI uint32
|
||||
DSPercentSearchesfromNTDSAPI uint32
|
||||
DSPercentSearchesfromSAM uint32
|
||||
DSPercentSearchesOther uint32
|
||||
DSPercentWritesfromDRA uint32
|
||||
DSPercentWritesfromKCC uint32
|
||||
DSPercentWritesfromLDAP uint32
|
||||
DSPercentWritesfromLSA uint32
|
||||
DSPercentWritesfromNSPI uint32
|
||||
DSPercentWritesfromNTDSAPI uint32
|
||||
DSPercentWritesfromSAM uint32
|
||||
DSPercentWritesOther uint32
|
||||
DSSearchsuboperationsPersec uint32
|
||||
DSSecurityDescriptorPropagationsEvents uint32
|
||||
DSSecurityDescriptorPropagatorAverageExclusionTime uint32
|
||||
DSSecurityDescriptorPropagatorRuntimeQueue uint32
|
||||
DSSecurityDescriptorsuboperationsPersec uint32
|
||||
DSServerBindsPersec uint32
|
||||
DSServerNameTranslationsPersec uint32
|
||||
DSThreadsinUse uint32
|
||||
ExternalBindsPersec uint32
|
||||
FastBindsPersec uint32
|
||||
LDAPActiveThreads uint32
|
||||
LDAPBindTime uint32
|
||||
LDAPClientSessions uint32
|
||||
LDAPClosedConnectionsPersec uint32
|
||||
LDAPNewConnectionsPersec uint32
|
||||
LDAPNewSSLConnectionsPersec uint32
|
||||
LDAPSearchesPersec uint32
|
||||
LDAPSuccessfulBindsPersec uint32
|
||||
LDAPUDPoperationsPersec uint32
|
||||
LDAPWritesPersec uint32
|
||||
LinkValuesCleanedPersec uint32
|
||||
NegotiatedBindsPersec uint32
|
||||
NTLMBindsPersec uint32
|
||||
OnelevelsearchesPersec uint32
|
||||
PhantomsCleanedPersec uint32
|
||||
PhantomsVisitedPersec uint32
|
||||
SAMAccountGroupEvaluationLatency uint32
|
||||
SAMDisplayInformationQueriesPersec uint32
|
||||
SAMDomainLocalGroupMembershipEvaluationsPersec uint32
|
||||
SAMEnumerationsPersec uint32
|
||||
SAMGCEvaluationsPersec uint32
|
||||
SAMGlobalGroupMembershipEvaluationsPersec uint32
|
||||
SAMMachineCreationAttemptsPersec uint32
|
||||
SAMMembershipChangesPersec uint32
|
||||
SAMNonTransitiveMembershipEvaluationsPersec uint32
|
||||
SAMPasswordChangesPersec uint32
|
||||
SAMResourceGroupEvaluationLatency uint32
|
||||
SAMSuccessfulComputerCreationsPersecIncludesallrequests uint32
|
||||
SAMSuccessfulUserCreationsPersec uint32
|
||||
SAMTransitiveMembershipEvaluationsPersec uint32
|
||||
SAMUniversalGroupMembershipEvaluationsPersec uint32
|
||||
SAMUserCreationAttemptsPersec uint32
|
||||
SimpleBindsPersec uint32
|
||||
SubtreesearchesPersec uint32
|
||||
TombstonesGarbageCollectedPersec uint32
|
||||
TombstonesVisitedPersec uint32
|
||||
Transitiveoperationsmillisecondsrun uint32
|
||||
TransitiveoperationsPersec uint32
|
||||
TransitivesuboperationsPersec uint32
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user