Ejemplo n.º 1
0
def test_can_display_logs():
    retriever = mock.Mock(spec=logs.LogRetriever)
    retriever.retrieve_logs.return_value = [
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'One'
        },
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'Two'
        },
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'Three'
        },
    ]
    stream = StringIO()
    logs.display_logs(retriever,
                      max_entries=None,
                      include_lambda_messages=True,
                      stream=stream)
    assert stream.getvalue().splitlines() == [
        'NOW shortId One',
        'NOW shortId Two',
        'NOW shortId Three',
    ]
Ejemplo n.º 2
0
def test_can_display_logs():
    retriever = mock.Mock(spec=logs.LogRetriever)
    retriever.retrieve_logs.return_value = [
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'One'
        },
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'Two'
        },
        {
            'timestamp': 'NOW',
            'logShortId': 'shortId',
            'message': 'Three'
        },
    ]
    stream = StringIO()
    logs.display_logs(retriever, retrieve_options=NO_OPTIONS, stream=stream)
    assert stream.getvalue().splitlines() == [
        'NOW shortId One',
        'NOW shortId Two',
        'NOW shortId Three',
    ]
def logs(ctx, num_entries, include_lambda_messages, stage):
    # type: (click.Context, int, bool, str) -> None
    factory = ctx.obj['factory']  # type: CLIFactory
    config = factory.create_config_obj(stage, False)
    deployed = config.deployed_resources(stage)
    if deployed is not None:
        session = factory.create_botocore_session()
        retriever = factory.create_log_retriever(
            session, deployed.api_handler_arn)
        display_logs(retriever, num_entries, include_lambda_messages,
                     sys.stdout)
Ejemplo n.º 4
0
def logs(ctx, num_entries, include_lambda_messages, stage):
    # type: (click.Context, int, bool, str) -> None
    factory = ctx.obj['factory']  # type: CLIFactory
    config = factory.create_config_obj(stage, False)
    deployed = config.deployed_resources(stage)
    if deployed is not None:
        session = factory.create_botocore_session()
        retriever = factory.create_log_retriever(
            session, deployed.api_handler_arn)
        display_logs(retriever, num_entries, include_lambda_messages,
                     sys.stdout)
Ejemplo n.º 5
0
def logs(ctx, num_entries, include_lambda_messages, stage, profile):
    # type: (click.Context, int, bool, str, str) -> None
    factory = ctx.obj['factory']  # type: CLIFactory
    factory.profile = profile
    config = factory.create_config_obj(stage, False)
    deployed = config.deployed_resources(stage)
    if deployed is not None and 'api_handler' in deployed.resource_names():
        lambda_arn = deployed.resource_values('api_handler')['lambda_arn']
        session = factory.create_botocore_session()
        retriever = factory.create_log_retriever(session, lambda_arn)
        display_logs(retriever, num_entries, include_lambda_messages,
                     sys.stdout)
Ejemplo n.º 6
0
def logs(ctx, num_entries, include_lambda_messages, stage, profile):
    # type: (click.Context, int, bool, str, str) -> None
    factory = ctx.obj['factory']  # type: CLIFactory
    factory.profile = profile
    config = factory.create_config_obj(stage, False)
    deployed = config.deployed_resources(stage)
    if deployed is not None and 'api_handler' in deployed.resource_names():
        lambda_arn = deployed.resource_values('api_handler')['lambda_arn']
        session = factory.create_botocore_session()
        retriever = factory.create_log_retriever(
            session, lambda_arn)
        display_logs(retriever, num_entries, include_lambda_messages,
                     sys.stdout)
Ejemplo n.º 7
0
def test_can_display_logs():
    retriever = mock.Mock(sepc=logs.LogRetriever)
    retriever.retrieve_logs.return_value = [
        {'timestamp': 'NOW', 'logShortId': 'shortId', 'message': 'One'},
        {'timestamp': 'NOW', 'logShortId': 'shortId', 'message': 'Two'},
        {'timestamp': 'NOW', 'logShortId': 'shortId', 'message': 'Three'},
    ]
    stream = StringIO()
    logs.display_logs(retriever, max_entries=None,
                      include_lambda_messages=True,
                      stream=stream)
    assert stream.getvalue().splitlines() == [
        'NOW shortId One',
        'NOW shortId Two',
        'NOW shortId Three',
    ]
Ejemplo n.º 8
0
def logs(ctx, num_entries, include_lambda_messages, stage, name, since, follow,
         profile):
    # type: (click.Context, int, bool, str, str, str, bool, str) -> None
    factory = ctx.obj['factory']  # type: CLIFactory
    factory.profile = profile
    config = factory.create_config_obj(stage, False)
    deployed = config.deployed_resources(stage)
    if name in deployed.resource_names():
        lambda_arn = deployed.resource_values(name)['lambda_arn']
        session = factory.create_botocore_session()
        retriever = factory.create_log_retriever(session, lambda_arn, follow)
        options = LogRetrieveOptions.create(
            max_entries=num_entries,
            since=since,
            include_lambda_messages=include_lambda_messages,
        )
        display_logs(retriever, sys.stdout, options)