@@ -21,6 +21,7 @@ import (
2121 "net/url"
2222 "sync"
2323
24+ "github.com/go-logr/logr"
2425 "github.com/pkg/errors"
2526 "github.com/vmware/govmomi"
2627 "github.com/vmware/govmomi/find"
@@ -46,15 +47,17 @@ type Session struct {
4647// already exist.
4748func GetOrCreate (
4849 ctx context.Context ,
50+ logger logr.Logger ,
4951 server , datacenter , username , password string , thumbprint string ) (* Session , error ) {
5052
5153 sessionMU .Lock ()
5254 defer sessionMU .Unlock ()
5355
5456 sessionKey := server + username + datacenter
55- if session , ok := sessionCache [sessionKey ]; ok {
56- if ok , _ := session .SessionManager .SessionIsActive (ctx ); ok {
57- return & session , nil
57+ if cachedSession , ok := sessionCache [sessionKey ]; ok {
58+ if ok , _ := cachedSession .SessionManager .SessionIsActive (ctx ); ok {
59+ logger .V (2 ).Info ("found active cached vSphere client session" , "server" , server , "datacenter" , datacenter )
60+ return & cachedSession , nil
5861 }
5962 }
6063
@@ -89,8 +92,7 @@ func GetOrCreate(
8992 // Cache the session.
9093 sessionCache [sessionKey ] = session
9194
92- // TODO(akutz) Reintroduce the logger.
93- //ctx.Logger.V(2).Info("cached vSphere client session", "server", server, "datacenter", datacenter)
95+ logger .V (2 ).Info ("cached vSphere client session" , "server" , server , "datacenter" , datacenter )
9496
9597 return & session , nil
9698}
0 commit comments