Skip to content

Commit

Permalink
Add logs for system specs
Browse files Browse the repository at this point in the history
Add CPU microcode revision
Add OS, Platform, PlatformVersion, KernelVersion, Uptime
Add Go version, GOMAXPROCS, NumCPU
  • Loading branch information
fxamacker committed Mar 23, 2022
1 parent 5af3bb2 commit fb68a6a
Showing 1 changed file with 20 additions and 7 deletions.
27 changes: 20 additions & 7 deletions cmd/execution/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"os"
"path"
"path/filepath"
goruntime "runtime"
"time"

awsconfig "github.com/aws/aws-sdk-go-v2/config"
Expand All @@ -16,6 +17,7 @@ import (
"github.com/onflow/cadence/runtime"
"github.com/rs/zerolog"
cpu "github.com/shirou/gopsutil/v3/cpu"
host "github.com/shirou/gopsutil/v3/host"
mem "github.com/shirou/gopsutil/v3/mem"
"github.com/spf13/pflag"

Expand Down Expand Up @@ -202,11 +204,11 @@ func main() {
)
return err
}).
Module("hardware specs", func(node *cmd.NodeConfig) error {
hwLogger := node.Logger.With().Str("system", "hardware").Logger()
err = logHardware(hwLogger)
Module("system specs", func(node *cmd.NodeConfig) error {
sysInfoLogger := node.Logger.With().Str("system", "specs").Logger()
err = logSysInfo(sysInfoLogger)
if err != nil {
hwLogger.Error().Err(err)
sysInfoLogger.Error().Err(err)
}
return nil
}).
Expand Down Expand Up @@ -838,7 +840,7 @@ func copyBootstrapState(dir, trie string) error {
return out.Close()
}

func logHardware(logger zerolog.Logger) error {
func logSysInfo(logger zerolog.Logger) error {

vmem, err := mem.VirtualMemory()
if err != nil {
Expand All @@ -864,10 +866,21 @@ func logHardware(logger zerolog.Logger) error {
return fmt.Errorf("cpu info length is 0")
}

logger.Info().Msgf("CPU: ModelName=%s, MHz=%.0f, Family=%s, Model=%s, Stepping=%d, PhysicalCores=%d, LogicalCores=%d",
info[0].ModelName, info[0].Mhz, info[0].Family, info[0].Model, info[0].Stepping, physicalCores, logicalCores)
logger.Info().Msgf("CPU: ModelName=%s, MHz=%.0f, Family=%s, Model=%s, Stepping=%d, Microcode=%s, PhysicalCores=%d, LogicalCores=%d",
info[0].ModelName, info[0].Mhz, info[0].Family, info[0].Model, info[0].Stepping, info[0].Microcode, physicalCores, logicalCores)

logger.Info().Msgf("RAM: Total=%d, Free=%d", vmem.Total, vmem.Free)

hostInfo, err := host.Info()
if err != nil {
return fmt.Errorf("failed to get platform info: %w", err)
}
logger.Info().Msgf("OS: OS=%s, Platform=%s, PlatformVersion=%s, KernelVersion=%s, Uptime: %d",
hostInfo.OS, hostInfo.Platform, hostInfo.PlatformVersion, hostInfo.KernelVersion, hostInfo.Uptime)

// goruntime.GOMAXPROCS(0) doesn't modify any settings.
logger.Info().Msgf("GO: GoVersion=%s, GOMAXPROCS=%d, NumCPU=%d",
goruntime.Version(), goruntime.GOMAXPROCS(0), goruntime.NumCPU())

return nil
}

0 comments on commit fb68a6a

Please sign in to comment.