This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 53a8973952 Fix bug in task logs when using AWS CloudWatch. Do not set 
`start_time` (#33673)
53a8973952 is described below

commit 53a89739528cda26b8b53670fc51769850eb263e
Author: Vincent <[email protected]>
AuthorDate: Thu Aug 24 01:03:46 2023 -0400

    Fix bug in task logs when using AWS CloudWatch. Do not set `start_time` 
(#33673)
    
    * Fix bug in task logs when using AWS CloudWatch. Do not set `start_time`
    
    * Fix tests
---
 .../amazon/aws/log/cloudwatch_task_handler.py      |  4 ----
 .../amazon/aws/log/test_cloudwatch_task_handler.py | 24 ++++------------------
 2 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py 
b/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py
index 5f74468d04..0cc9c43b05 100644
--- a/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py
+++ b/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py
@@ -114,9 +114,6 @@ class CloudwatchTaskHandler(FileTaskHandler, LoggingMixin):
         :param task_instance: the task instance to get logs about
         :return: string of all logs from the given log stream
         """
-        start_time = (
-            0 if task_instance.start_date is None else 
datetime_to_epoch_utc_ms(task_instance.start_date)
-        )
         # If there is an end_date to the task instance, fetch logs until that 
date + 30 seconds
         # 30 seconds is an arbitrary buffer so that we don't miss any logs 
that were emitted
         end_time = (
@@ -127,7 +124,6 @@ class CloudwatchTaskHandler(FileTaskHandler, LoggingMixin):
         events = self.hook.get_log_events(
             log_group=self.log_group,
             log_stream_name=stream_name,
-            start_time=start_time,
             end_time=end_time,
         )
         return "\n".join(self._event_to_str(event) for event in events)
diff --git a/tests/providers/amazon/aws/log/test_cloudwatch_task_handler.py 
b/tests/providers/amazon/aws/log/test_cloudwatch_task_handler.py
index 219f594604..00d5cf2f46 100644
--- a/tests/providers/amazon/aws/log/test_cloudwatch_task_handler.py
+++ b/tests/providers/amazon/aws/log/test_cloudwatch_task_handler.py
@@ -155,35 +155,19 @@ class TestCloudwatchTaskHandler:
         )
 
     @pytest.mark.parametrize(
-        "start_date, end_date, expected_start_time, expected_end_time",
+        "end_date, expected_end_time",
         [
-            (None, None, 0, None),
-            (datetime(2020, 1, 1), None, 
datetime_to_epoch_utc_ms(datetime(2020, 1, 1)), None),
-            (
-                None,
-                datetime(2020, 1, 2),
-                0,
-                datetime_to_epoch_utc_ms(datetime(2020, 1, 2) + 
timedelta(seconds=30)),
-            ),
-            (
-                datetime(2020, 1, 1),
-                datetime(2020, 1, 2),
-                datetime_to_epoch_utc_ms(datetime(2020, 1, 1)),
-                datetime_to_epoch_utc_ms(datetime(2020, 1, 2) + 
timedelta(seconds=30)),
-            ),
+            (None, None),
+            (datetime(2020, 1, 2), datetime_to_epoch_utc_ms(datetime(2020, 1, 
2) + timedelta(seconds=30))),
         ],
     )
     @mock.patch.object(AwsLogsHook, "get_log_events")
-    def test_get_cloudwatch_logs(
-        self, mock_get_log_events, start_date, end_date, expected_start_time, 
expected_end_time
-    ):
-        self.ti.start_date = start_date
+    def test_get_cloudwatch_logs(self, mock_get_log_events, end_date, 
expected_end_time):
         self.ti.end_date = end_date
         
self.cloudwatch_task_handler.get_cloudwatch_logs(self.remote_log_stream, 
self.ti)
         mock_get_log_events.assert_called_once_with(
             log_group=self.remote_log_group,
             log_stream_name=self.remote_log_stream,
-            start_time=expected_start_time,
             end_time=expected_end_time,
         )
 

Reply via email to