github.com/netdata/go.d.plugin@v0.58.1/modules/couchbase/metrics.go (about)

     1  // SPDX-License-Identifier: GPL-3.0-or-later
     2  
     3  package couchbase
     4  
     5  type cbMetrics struct {
     6  	// https://developer.couchbase.com/resources/best-practice-guides/monitoring-guide.pdf
     7  	BucketsBasicStats []bucketsBasicStats
     8  }
     9  
    10  func (m cbMetrics) empty() bool {
    11  	switch {
    12  	case m.hasBucketsStats():
    13  		return false
    14  	}
    15  	return true
    16  }
    17  
    18  func (m cbMetrics) hasBucketsStats() bool { return len(m.BucketsBasicStats) > 0 }
    19  
    20  type bucketsBasicStats struct {
    21  	Name string `json:"name"`
    22  
    23  	BasicStats struct {
    24  		DataUsed               float64 `json:"dataUsed"`
    25  		DiskFetches            float64 `json:"diskFetches"`
    26  		ItemCount              float64 `json:"itemCount"`
    27  		DiskUsed               float64 `json:"diskUsed"`
    28  		MemUsed                float64 `json:"memUsed"`
    29  		OpsPerSec              float64 `json:"opsPerSec"`
    30  		QuotaPercentUsed       float64 `json:"quotaPercentUsed"`
    31  		VbActiveNumNonResident float64 `json:"vbActiveNumNonResident"`
    32  	} `json:"basicStats"`
    33  }