@@ -366,10 +366,7 @@ def _read(
366366 executor_messages : list [str ] = []
367367 executor_logs : list [str ] = []
368368 served_logs : list [str ] = []
369- is_running = ti .try_number == try_number and ti .state in (
370- TaskInstanceState .RUNNING ,
371- TaskInstanceState .DEFERRED ,
372- )
369+ is_in_running_or_deferred = ti .state in (TaskInstanceState .RUNNING , TaskInstanceState .DEFERRED )
373370 with suppress (NotImplementedError ):
374371 remote_messages , remote_logs = self ._read_remote_logs (ti , try_number , metadata )
375372 messages_list .extend (remote_messages )
@@ -384,7 +381,9 @@ def _read(
384381 worker_log_full_path = Path (self .local_base , worker_log_rel_path )
385382 local_messages , local_logs = self ._read_from_local (worker_log_full_path )
386383 messages_list .extend (local_messages )
387- if is_running and not executor_messages :
384+ if is_in_running_or_deferred and not executor_messages and not remote_logs :
385+ # While task instance is still running and we don't have either executor nor remote logs, look for served logs
386+ # This is for cases when users have not setup remote logging nor shared drive for logs
388387 served_messages , served_logs = self ._read_from_logs_server (ti , worker_log_rel_path )
389388 messages_list .extend (served_messages )
390389 elif ti .state not in State .unfinished and not (local_logs or remote_logs ):
@@ -404,11 +403,12 @@ def _read(
404403 )
405404 log_pos = len (logs )
406405 messages = "" .join ([f"*** { x } \n " for x in messages_list ])
406+ end_of_log = ti .try_number != try_number or not is_in_running_or_deferred
407407 if metadata and "log_pos" in metadata :
408408 previous_chars = metadata ["log_pos" ]
409409 logs = logs [previous_chars :] # Cut off previously passed log test as new tail
410410 out_message = logs if "log_pos" in (metadata or {}) else messages + logs
411- return out_message , {"end_of_log" : not is_running , "log_pos" : log_pos }
411+ return out_message , {"end_of_log" : end_of_log , "log_pos" : log_pos }
412412
413413 @staticmethod
414414 def _get_pod_namespace (ti : TaskInstance ):
0 commit comments