@@ -89,6 +89,18 @@ type Node struct {
8989 uptime uptime.UptimeFuncType
9090}
9191
92+ type ZerologWriter struct {
93+ logger zerolog.Logger
94+ }
95+
96+ type StdWriter struct {
97+ * ZerologWriter
98+ }
99+
100+ type ErrWriter struct {
101+ * ZerologWriter
102+ }
103+
92104// New will construct a node struct to perform various node function through the kubernetes api server
93105func New (nthConfig config.Config , clientset * kubernetes.Clientset ) (* Node , error ) {
94106 drainHelper , err := getDrainHelper (nthConfig , clientset )
@@ -737,8 +749,8 @@ func getDrainHelper(nthConfig config.Config, clientset *kubernetes.Clientset) (*
737749 AdditionalFilters : []drain.PodFilter {filterPodForDeletion (nthConfig .PodName , nthConfig .PodNamespace )},
738750 DeleteEmptyDirData : nthConfig .DeleteLocalData ,
739751 Timeout : time .Duration (nthConfig .NodeTerminationGracePeriod ) * time .Second ,
740- Out : log .Logger ,
741- ErrOut : log .Logger ,
752+ Out : & StdWriter { & ZerologWriter { logger : log .Logger }} ,
753+ ErrOut : & ErrWriter { & ZerologWriter { logger : log .Logger }} ,
742754 }
743755
744756 if nthConfig .DryRun {
@@ -927,6 +939,18 @@ func isDaemonSetPod(pod corev1.Pod) bool {
927939 return false
928940}
929941
942+ func (w * StdWriter ) Write (p []byte ) (n int , err error ) {
943+ msg := strings .TrimRight (string (p ), "\n " )
944+ w .logger .Info ().Msg (msg )
945+ return len (p ), nil
946+ }
947+
948+ func (w * ErrWriter ) Write (p []byte ) (n int , err error ) {
949+ msg := strings .TrimRight (string (p ), "\n " )
950+ w .logger .Error ().Msg (msg )
951+ return len (p ), nil
952+ }
953+
930954type recorderInterface interface {
931955 AnnotatedEventf (object runtime.Object , annotations map [string ]string , eventType , reason , messageFmt string , args ... interface {})
932956}
0 commit comments