From 5875550802cf2a5f08fae6e571df439b33dba0e2 Mon Sep 17 00:00:00 2001 From: Nathan Coad Date: Mon, 30 Sep 2024 12:41:04 +1000 Subject: [PATCH] more logging --- internal/tasks/monitorVcenter.go | 36 ++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/internal/tasks/monitorVcenter.go b/internal/tasks/monitorVcenter.go index 24abafe..8bea3d7 100644 --- a/internal/tasks/monitorVcenter.go +++ b/internal/tasks/monitorVcenter.go @@ -3,9 +3,11 @@ package tasks import ( "context" "database/sql" + "encoding/json" "errors" "fmt" "log/slog" + "runtime" "strings" "time" "vctp/db/queries" @@ -111,6 +113,12 @@ func (c *CronTask) AddVmToInventory(vmObject *mo.VirtualMachine, vc *vcenter.Vce } c.Logger.Debug("found VM") + + if vmObject.Name == "DBRaaS_testVMTemplate" { + c.Logger.Debug("Found problematic VM") + prettyPrint(vmObject) + } + srmPlaceholder = "FALSE" // Default assumption //prettyPrint(vmObject) @@ -230,3 +238,31 @@ func (c *CronTask) AddVmToInventory(vmObject *mo.VirtualMachine, vc *vcenter.Vce return nil } + +// prettyPrint comes from https://gist.github.com/sfate/9d45f6c5405dc4c9bf63bf95fe6d1a7c +func prettyPrint(args ...interface{}) { + var caller string + + timeNow := time.Now().Format("01-02-2006 15:04:05") + prefix := fmt.Sprintf("[%s] %s -- ", "PrettyPrint", timeNow) + _, fileName, fileLine, ok := runtime.Caller(1) + + if ok { + caller = fmt.Sprintf("%s:%d", fileName, fileLine) + } else { + caller = "" + } + + fmt.Printf("\n%s%s\n", prefix, caller) + + if len(args) == 2 { + label := args[0] + value := args[1] + + s, _ := json.MarshalIndent(value, "", "\t") + fmt.Printf("%s%s: %s\n", prefix, label, string(s)) + } else { + s, _ := json.MarshalIndent(args, "", "\t") + fmt.Printf("%s%s\n", prefix, string(s)) + } +}