Skip to content

Commit 5c165f9

Browse files
Split out sendLogFallback
1 parent ce2ce47 commit 5c165f9

1 file changed

Lines changed: 16 additions & 22 deletions

File tree

protocol/logger/job_logger.go

Lines changed: 16 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,20 @@ func (logger *WebsocketLiveloggerWithFallback) Close() error {
193193
return logger.replace(&errorLogger{})
194194
}
195195

196+
func (logger *WebsocketLiveloggerWithFallback) sendLogFallback(err error, wrapper *protocol.TimelineRecordFeedLinesWrapper) {
197+
if !logger.ForceWebsock {
198+
if logger.Connection.Trace {
199+
fmt.Printf("Failed to reconnect to websocket %s, fallback to vsslogger\n", err.Error())
200+
}
201+
currentLogger = logger.initializeVssLogger()
202+
if currentLogger == nil {
203+
return fmt.Errorf("failed to initialize VSS logger after websocket reconnect failure: %w", err)
204+
}
205+
return currentLogger.SendLog(wrapper)
206+
}
207+
return err
208+
}
209+
196210
func (logger *WebsocketLiveloggerWithFallback) SendLog(wrapper *protocol.TimelineRecordFeedLinesWrapper) error {
197211
currentLogger := getPointer(logger.currentLogger.Load())
198212
if currentLogger == nil {
@@ -208,31 +222,11 @@ func (logger *WebsocketLiveloggerWithFallback) SendLog(wrapper *protocol.Timelin
208222
}
209223
if wslogger, ok := currentLogger.(*WebsocketLivelogger); ok {
210224
if err = wslogger.Connect(); err != nil {
211-
if !logger.ForceWebsock {
212-
if logger.Connection.Trace {
213-
fmt.Printf("Failed to reconnect to websocket %s, fallback to vsslogger\n", err.Error())
214-
}
215-
currentLogger = logger.initializeVssLogger()
216-
if currentLogger == nil {
217-
return fmt.Errorf("failed to initialize VSS logger after websocket reconnect failure: %w", err)
218-
}
219-
return currentLogger.SendLog(wrapper)
220-
}
221-
return err
225+
return logger.sendLogFallback(err, wrapper)
222226
}
223227
err = currentLogger.SendLog(wrapper)
224228
if err != nil {
225-
if !logger.ForceWebsock {
226-
if logger.Connection.Trace {
227-
fmt.Printf("Failed to send webconsole log %s, fallback to vsslogger\n", err.Error())
228-
}
229-
currentLogger = logger.initializeVssLogger()
230-
if currentLogger == nil {
231-
return fmt.Errorf("failed to initialize VSS logger after websocket send failure: %w", err)
232-
}
233-
return currentLogger.SendLog(wrapper)
234-
}
235-
return err
229+
return logger.sendLogFallback(err, wrapper)
236230
}
237231
return nil
238232
}

0 commit comments

Comments
 (0)