def test_can_support_max_entries(): client = mock.Mock(spec=TypedAWSClient) client.iter_log_events.return_value = [message('first'), message('second')] retriever = logs.LogRetriever(client, 'loggroup') messages = list(retriever.retrieve_logs(max_entries=1)) assert len(messages) == 1 assert messages[0]['message'] == 'first'
def test_can_parse_short_id(): log_message = message( 'Log Message', '2017/04/28/[$LATEST]fc219a0d613b40e9b5c58e6b8fd2320c') client = mock.Mock(spec=TypedAWSClient) client.iter_log_events.return_value = [log_message] retriever = logs.LogRetriever(client, 'loggroup') messages = list(retriever.retrieve_logs(include_lambda_messages=False)) assert len(messages) == 1 assert messages[0]['logShortId'] == 'fc219a'
def test_can_retrieve_all_logs(): client = mock.Mock(spec=TypedAWSClient) log_message = message('first') client.iter_log_events.return_value = [log_message] retriever = logs.LogRetriever(client, 'loggroup') messages = list(retriever.retrieve_logs()) expected = log_message.copy() # We also inject a logShortId. expected['logShortId'] = 'logStreamName' assert messages == [expected]
def test_can_exclude_lambda_messages(): client = mock.Mock(spec=TypedAWSClient) client.iter_log_events.return_value = [ message('START RequestId: id Version: $LATEST'), message('END RequestId: id'), message('REPORT RequestId: id Duration: 0.42 ms ' 'Billed Duration: 100 ms ' 'Memory Size: 128 MB Max Memory Used: 19 MB'), message('Not a lambda message'), ] retriever = logs.LogRetriever(client, 'loggroup') messages = list(retriever.retrieve_logs(include_lambda_messages=False)) assert len(messages) == 1 assert messages[0]['message'] == 'Not a lambda message'