Skip to content

Commit

Permalink
fixes after review
Browse files Browse the repository at this point in the history
  • Loading branch information
denispershin committed Mar 11, 2021
1 parent 888c6cd commit 68cb425
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 46 deletions.
3 changes: 2 additions & 1 deletion plugins/inputs/mongodb/mongodb.go
Expand Up @@ -54,7 +54,8 @@ var sampleConfig = `
## When true, collect per collection stats
# gather_col_stats = false
## When true, collect stats per collection
## When true, collect usage statistics for each collection
## (insert, update, queries, remove, getmore, commands etc...).
# gather_top_stat = false
## List of db where collections stats are collected
Expand Down
64 changes: 32 additions & 32 deletions plugins/inputs/mongodb/mongodb_data.go
Expand Up @@ -38,7 +38,7 @@ func NewMongodbData(statLine *StatLine, tags map[string]string) *MongodbData {
}
}

var DefaultStats = map[string]string{
var defaultStats = map[string]string{
"uptime_ns": "UptimeNanos",
"inserts": "InsertCnt",
"inserts_per_sec": "Insert",
Expand Down Expand Up @@ -95,15 +95,15 @@ var DefaultStats = map[string]string{
"total_docs_scanned": "TotalObjectsScanned",
}

var DefaultAssertsStats = map[string]string{
var defaultAssertsStats = map[string]string{
"assert_regular": "Regular",
"assert_warning": "Warning",
"assert_msg": "Msg",
"assert_user": "User",
"assert_rollovers": "Rollovers",
}

var DefaultCommandsStats = map[string]string{
var defaultCommandsStats = map[string]string{
"aggregate_command_total": "AggregateCommandTotal",
"aggregate_command_failed": "AggregateCommandFailed",
"count_command_total": "CountCommandTotal",
Expand All @@ -124,7 +124,7 @@ var DefaultCommandsStats = map[string]string{
"update_command_failed": "UpdateCommandFailed",
}

var DefaultLatencyStats = map[string]string{
var defaultLatencyStats = map[string]string{
"latency_writes_count": "WriteOpsCnt",
"latency_writes": "WriteLatency",
"latency_reads_count": "ReadOpsCnt",
Expand All @@ -133,7 +133,7 @@ var DefaultLatencyStats = map[string]string{
"latency_commands": "CommandLatency",
}

var DefaultReplStats = map[string]string{
var defaultReplStats = map[string]string{
"repl_inserts": "InsertRCnt",
"repl_inserts_per_sec": "InsertR",
"repl_queries": "QueryRCnt",
Expand Down Expand Up @@ -165,37 +165,37 @@ var DefaultReplStats = map[string]string{
"repl_executor_unsignaled_events": "ReplExecutorUnsignaledEvents",
}

var DefaultClusterStats = map[string]string{
var defaultClusterStats = map[string]string{
"jumbo_chunks": "JumboChunksCount",
}

var DefaultShardStats = map[string]string{
var defaultShardStats = map[string]string{
"total_in_use": "TotalInUse",
"total_available": "TotalAvailable",
"total_created": "TotalCreated",
"total_refreshing": "TotalRefreshing",
}

var ShardHostStats = map[string]string{
var shardHostStats = map[string]string{
"in_use": "InUse",
"available": "Available",
"created": "Created",
"refreshing": "Refreshing",
}

var MmapStats = map[string]string{
var mmapStats = map[string]string{
"mapped_megabytes": "Mapped",
"non-mapped_megabytes": "NonMapped",
"page_faults": "FaultsCnt",
"page_faults_per_sec": "Faults",
}

var WiredTigerStats = map[string]string{
var wiredTigerStats = map[string]string{
"percent_cache_dirty": "CacheDirtyPercent",
"percent_cache_used": "CacheUsedPercent",
}

var WiredTigerExtStats = map[string]string{
var wiredTigerExtStats = map[string]string{
"wtcache_tracked_dirty_bytes": "TrackedDirtyBytes",
"wtcache_current_bytes": "CurrentCachedBytes",
"wtcache_max_bytes_configured": "MaxBytesConfigured",
Expand All @@ -216,7 +216,7 @@ var WiredTigerExtStats = map[string]string{
"wtcache_unmodified_pages_evicted": "UnmodifiedPagesEvicted",
}

var DefaultTCMallocStats = map[string]string{
var defaultTCMallocStats = map[string]string{
"tcmalloc_current_allocated_bytes": "TCMallocCurrentAllocatedBytes",
"tcmalloc_heap_size": "TCMallocHeapSize",
"tcmalloc_central_cache_free_bytes": "TCMallocCentralCacheFreeBytes",
Expand All @@ -238,13 +238,13 @@ var DefaultTCMallocStats = map[string]string{
"tcmalloc_pageheap_total_reserve_bytes": "TCMallocPageheapTotalReserveBytes",
}

var DefaultStorageStats = map[string]string{
var defaultStorageStats = map[string]string{
"storage_freelist_search_bucket_exhausted": "StorageFreelistSearchBucketExhausted",
"storage_freelist_search_requests": "StorageFreelistSearchRequests",
"storage_freelist_search_scanned": "StorageFreelistSearchScanned",
}

var DbDataStats = map[string]string{
var dbDataStats = map[string]string{
"collections": "Collections",
"objects": "Objects",
"avg_obj_size": "AvgObjSize",
Expand All @@ -256,7 +256,7 @@ var DbDataStats = map[string]string{
"ok": "Ok",
}

var ColDataStats = map[string]string{
var colDataStats = map[string]string{
"count": "Count",
"size": "Size",
"avg_obj_size": "AvgObjSize",
Expand All @@ -265,7 +265,7 @@ var ColDataStats = map[string]string{
"ok": "Ok",
}

var TopDataStats = map[string]string{
var topDataStats = map[string]string{
"total_time": "TotalTime",
"total_count": "TotalCount",
"read_lock_time": "ReadLockTime",
Expand Down Expand Up @@ -294,7 +294,7 @@ func (d *MongodbData) AddDbStats() {
Fields: make(map[string]interface{}),
}
newDbData.Fields["type"] = "db_stat"
for key, value := range DbDataStats {
for key, value := range dbDataStats {
val := dbStatLine.FieldByName(value).Interface()
newDbData.Fields[key] = val
}
Expand All @@ -311,7 +311,7 @@ func (d *MongodbData) AddColStats() {
Fields: make(map[string]interface{}),
}
newColData.Fields["type"] = "col_stat"
for key, value := range ColDataStats {
for key, value := range colDataStats {
val := colStatLine.FieldByName(value).Interface()
newColData.Fields[key] = val
}
Expand All @@ -327,7 +327,7 @@ func (d *MongodbData) AddShardHostStats() {
Fields: make(map[string]interface{}),
}
newDbData.Fields["type"] = "shard_host_stat"
for k, v := range ShardHostStats {
for k, v := range shardHostStats {
val := hostStatLine.FieldByName(v).Interface()
newDbData.Fields[k] = val
}
Expand All @@ -343,7 +343,7 @@ func (d *MongodbData) AddTopStats() {
Fields: make(map[string]interface{}),
}
newTopStatData.Fields["type"] = "top_stat"
for key, value := range TopDataStats {
for key, value := range topDataStats {
val := topStatLine.FieldByName(value).Interface()
newTopStatData.Fields[key] = val
}
Expand All @@ -353,14 +353,14 @@ func (d *MongodbData) AddTopStats() {

func (d *MongodbData) AddDefaultStats() {
statLine := reflect.ValueOf(d.StatLine).Elem()
d.addStat(statLine, DefaultStats)
d.addStat(statLine, defaultStats)
if d.StatLine.NodeType != "" {
d.addStat(statLine, DefaultReplStats)
d.addStat(statLine, defaultReplStats)
d.Tags["node_type"] = d.StatLine.NodeType
}

if d.StatLine.ReadLatency > 0 {
d.addStat(statLine, DefaultLatencyStats)
d.addStat(statLine, defaultLatencyStats)
}

if d.StatLine.ReplSetName != "" {
Expand All @@ -375,23 +375,23 @@ func (d *MongodbData) AddDefaultStats() {
d.add("version", d.StatLine.Version)
}

d.addStat(statLine, DefaultAssertsStats)
d.addStat(statLine, DefaultClusterStats)
d.addStat(statLine, DefaultCommandsStats)
d.addStat(statLine, DefaultShardStats)
d.addStat(statLine, DefaultStorageStats)
d.addStat(statLine, DefaultTCMallocStats)
d.addStat(statLine, defaultAssertsStats)
d.addStat(statLine, defaultClusterStats)
d.addStat(statLine, defaultCommandsStats)
d.addStat(statLine, defaultShardStats)
d.addStat(statLine, defaultStorageStats)
d.addStat(statLine, defaultTCMallocStats)

if d.StatLine.StorageEngine == "mmapv1" || d.StatLine.StorageEngine == "rocksdb" {
d.addStat(statLine, MmapStats)
d.addStat(statLine, mmapStats)
} else if d.StatLine.StorageEngine == "wiredTiger" {
for key, value := range WiredTigerStats {
for key, value := range wiredTigerStats {
val := statLine.FieldByName(value).Interface()
percentVal := fmt.Sprintf("%.1f", val.(float64)*100)
floatVal, _ := strconv.ParseFloat(percentVal, 64)
d.add(key, floatVal)
}
d.addStat(statLine, WiredTigerExtStats)
d.addStat(statLine, wiredTigerExtStats)
d.add("page_faults", d.StatLine.FaultsCnt)
}
}
Expand Down
24 changes: 12 additions & 12 deletions plugins/inputs/mongodb/mongodb_data_test.go
Expand Up @@ -64,7 +64,7 @@ func TestAddNonReplStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultStats {
for key := range defaultStats {
assert.True(t, acc.HasFloatField("mongodb", key) || acc.HasInt64Field("mongodb", key), key)
}
}
Expand All @@ -85,7 +85,7 @@ func TestAddReplStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range MmapStats {
for key := range mmapStats {
assert.True(t, acc.HasInt64Field("mongodb", key), key)
}
}
Expand Down Expand Up @@ -119,11 +119,11 @@ func TestAddWiredTigerStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range WiredTigerStats {
for key := range wiredTigerStats {
assert.True(t, acc.HasFloatField("mongodb", key), key)
}

for key := range WiredTigerExtStats {
for key := range wiredTigerExtStats {
assert.True(t, acc.HasFloatField("mongodb", key) || acc.HasInt64Field("mongodb", key), key)
}

Expand All @@ -146,7 +146,7 @@ func TestAddShardStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultShardStats {
for key := range defaultShardStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand All @@ -169,7 +169,7 @@ func TestAddLatencyStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultLatencyStats {
for key := range defaultLatencyStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand All @@ -191,7 +191,7 @@ func TestAddAssertsStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultAssertsStats {
for key := range defaultAssertsStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand Down Expand Up @@ -226,7 +226,7 @@ func TestAddCommandsStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultCommandsStats {
for key := range defaultCommandsStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand Down Expand Up @@ -262,7 +262,7 @@ func TestAddTCMallocStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultTCMallocStats {
for key := range defaultTCMallocStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand All @@ -282,7 +282,7 @@ func TestAddStorageStats(t *testing.T) {
d.AddDefaultStats()
d.flush(&acc)

for key := range DefaultStorageStats {
for key := range defaultStorageStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}
Expand Down Expand Up @@ -312,7 +312,7 @@ func TestAddShardHostStats(t *testing.T) {

var hostsFound []string
for host := range hostStatLines {
for key := range ShardHostStats {
for key := range shardHostStats {
assert.True(t, acc.HasInt64Field("mongodb_shard_stats", key))
}

Expand Down Expand Up @@ -526,7 +526,7 @@ func TestAddTopStats(t *testing.T) {
d.flush(&acc)

for range topStatLines {
for key := range TopDataStats {
for key := range topDataStats {
assert.True(t, acc.HasInt64Field("mongodb_top_stats", key))
}
}
Expand Down
1 change: 1 addition & 0 deletions plugins/inputs/mongodb/mongodb_server.go
Expand Up @@ -276,6 +276,7 @@ func (s *Server) gatherData(acc telegraf.Accumulator, gatherClusterStatus bool,
topStats, err := s.gatherTopStatData()
if err != nil {
s.Log.Debugf("Unable to gather top stat data: %s", err.Error())
return err
}
topStatData = topStats
}
Expand Down
2 changes: 1 addition & 1 deletion plugins/inputs/mongodb/mongodb_server_test.go
Expand Up @@ -35,7 +35,7 @@ func TestAddDefaultStats(t *testing.T) {
err = server.gatherData(&acc, false)
require.NoError(t, err)

for key := range DefaultStats {
for key := range defaultStats {
assert.True(t, acc.HasInt64Field("mongodb", key))
}
}

0 comments on commit 68cb425

Please sign in to comment.