Skip to content

Commit

Permalink
Fix division by zero to calculate memory usage
Browse files Browse the repository at this point in the history
Closes #41
  • Loading branch information
corny committed Jul 6, 2017
1 parent fd7e712 commit 2148a7d
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions meshviewer/node.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,15 @@ type Flags struct {

// Statistics a meshviewer spezifisch struct, diffrent from respondd
type Statistics struct {
NodeID string `json:"node_id"`
Clients uint32 `json:"clients"`
RootFsUsage float64 `json:"rootfs_usage,omitempty"`
LoadAverage float64 `json:"loadavg,omitempty"`
MemoryUsage float64 `json:"memory_usage,omitempty"`
Uptime float64 `json:"uptime,omitempty"`
Idletime float64 `json:"idletime,omitempty"`
GatewayIPv4 string `json:"gateway,omitempty"`
GatewayIPv6 string `json:"gateway6,omitempty"`
NodeID string `json:"node_id"`
Clients uint32 `json:"clients"`
RootFsUsage float64 `json:"rootfs_usage,omitempty"`
LoadAverage float64 `json:"loadavg,omitempty"`
MemoryUsage *float64 `json:"memory_usage,omitempty"`
Uptime float64 `json:"uptime,omitempty"`
Idletime float64 `json:"idletime,omitempty"`
GatewayIPv4 string `json:"gateway,omitempty"`
GatewayIPv6 string `json:"gateway6,omitempty"`
Processes struct {
Total uint32 `json:"total"`
Running uint32 `json:"running"`
Expand All @@ -57,7 +57,11 @@ func NewStatistics(stats *data.Statistics) *Statistics {
* calc is coppied from node statuspage (look discussion:
* https://github.com/FreifunkBremen/yanic/issues/35)
*/
memoryUsage := 1 - (float64(stats.Memory.Free)+float64(stats.Memory.Buffers)+float64(stats.Memory.Cached))/float64(stats.Memory.Total)
var memoryUsage *float64
if stats.Memory.Total > 0 {
usage := 1 - (float64(stats.Memory.Free)+float64(stats.Memory.Buffers)+float64(stats.Memory.Cached))/float64(stats.Memory.Total)
memoryUsage = &usage
}

return &Statistics{
NodeID: stats.NodeID,
Expand Down

0 comments on commit 2148a7d

Please sign in to comment.