Search in sources :

Example 6 with ListLogEntriesResponse

use of com.google.logging.v2.ListLogEntriesResponse in project google-cloud-java by GoogleCloudPlatform.

the class LoggingImplTest method testListLogEntriesAsyncNextPage.

@Test
public void testListLogEntriesAsyncNextPage() {
    String cursor1 = "cursor";
    EasyMock.replay(rpcFactoryMock);
    logging = options.getService();
    ListLogEntriesRequest request1 = ListLogEntriesRequest.newBuilder().addProjectIds(PROJECT).build();
    ListLogEntriesRequest request2 = ListLogEntriesRequest.newBuilder().addProjectIds(PROJECT).setPageToken(cursor1).build();
    List<LogEntry> descriptorList1 = ImmutableList.of(LOG_ENTRY1, LOG_ENTRY2);
    List<LogEntry> descriptorList2 = ImmutableList.of(LOG_ENTRY1);
    ListLogEntriesResponse response1 = ListLogEntriesResponse.newBuilder().setNextPageToken(cursor1).addAllEntries(Lists.transform(descriptorList1, LogEntry.toPbFunction(PROJECT))).build();
    String cursor2 = "nextCursor";
    ListLogEntriesResponse response2 = ListLogEntriesResponse.newBuilder().setNextPageToken(cursor2).addAllEntries(Lists.transform(descriptorList2, LogEntry.toPbFunction(PROJECT))).build();
    ApiFuture<ListLogEntriesResponse> futureResponse1 = ApiFutures.immediateFuture(response1);
    ApiFuture<ListLogEntriesResponse> futureResponse2 = ApiFutures.immediateFuture(response2);
    EasyMock.expect(loggingRpcMock.list(request1)).andReturn(futureResponse1);
    EasyMock.expect(loggingRpcMock.list(request2)).andReturn(futureResponse2);
    EasyMock.replay(loggingRpcMock);
    Page<LogEntry> page = logging.listLogEntries();
    assertEquals(cursor1, page.getNextPageToken());
    assertArrayEquals(descriptorList1.toArray(), Iterables.toArray(page.getValues(), LogEntry.class));
    page = page.getNextPage();
    assertEquals(cursor2, page.getNextPageToken());
    assertArrayEquals(descriptorList2.toArray(), Iterables.toArray(page.getValues(), LogEntry.class));
}
Also used : ListLogEntriesResponse(com.google.logging.v2.ListLogEntriesResponse) ListLogEntriesRequest(com.google.logging.v2.ListLogEntriesRequest) Test(org.junit.Test)

Example 7 with ListLogEntriesResponse

use of com.google.logging.v2.ListLogEntriesResponse in project google-cloud-java by GoogleCloudPlatform.

the class LocalLoggingImpl method listLogEntries.

@Override
public void listLogEntries(ListLogEntriesRequest request, StreamObserver<ListLogEntriesResponse> responseObserver) {
    List<LogEntry> entries = new ArrayList<>();
    for (ByteString proj : request.getProjectIdsList().asByteStringList()) {
        String prefix = "projects/" + proj.toStringUtf8() + "/";
        for (Map.Entry<String, List<LogEntry>> entry : logs.entrySet()) {
            if (entry.getKey().startsWith(prefix)) {
                entries.addAll(entry.getValue());
            }
        }
    }
    responseObserver.onNext(ListLogEntriesResponse.newBuilder().addAllEntries(entries).build());
    responseObserver.onCompleted();
}
Also used : ByteString(com.google.protobuf.ByteString) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List) ByteString(com.google.protobuf.ByteString) HashMap(java.util.HashMap) Map(java.util.Map) LogEntry(com.google.logging.v2.LogEntry)

Example 8 with ListLogEntriesResponse

use of com.google.logging.v2.ListLogEntriesResponse in project google-cloud-java by GoogleCloudPlatform.

the class LoggingImplTest method testListLogEntriesAyncEmpty.

@Test
public void testListLogEntriesAyncEmpty() throws ExecutionException, InterruptedException {
    String cursor = "cursor";
    EasyMock.replay(rpcFactoryMock);
    logging = options.getService();
    ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder().addProjectIds(PROJECT).build();
    List<LogEntry> entriesList = ImmutableList.of();
    ListLogEntriesResponse response = ListLogEntriesResponse.newBuilder().setNextPageToken(cursor).addAllEntries(Lists.transform(entriesList, LogEntry.toPbFunction(PROJECT))).build();
    ApiFuture<ListLogEntriesResponse> futureResponse = ApiFutures.immediateFuture(response);
    EasyMock.expect(loggingRpcMock.list(request)).andReturn(futureResponse);
    EasyMock.replay(loggingRpcMock);
    AsyncPage<LogEntry> page = logging.listLogEntriesAsync().get();
    assertEquals(cursor, page.getNextPageToken());
    assertArrayEquals(entriesList.toArray(), Iterables.toArray(page.getValues(), LogEntry.class));
}
Also used : ListLogEntriesResponse(com.google.logging.v2.ListLogEntriesResponse) ListLogEntriesRequest(com.google.logging.v2.ListLogEntriesRequest) Test(org.junit.Test)

Example 9 with ListLogEntriesResponse

use of com.google.logging.v2.ListLogEntriesResponse in project google-cloud-java by GoogleCloudPlatform.

the class LoggingImplTest method testListLogEntriesWithOptions.

@Test
public void testListLogEntriesWithOptions() {
    String cursor = "cursor";
    EasyMock.replay(rpcFactoryMock);
    logging = options.getService();
    ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder().addProjectIds(PROJECT).setOrderBy("timestamp desc").setFilter("logName:syslog").build();
    List<LogEntry> entriesList = ImmutableList.of(LOG_ENTRY1, LOG_ENTRY2);
    ListLogEntriesResponse response = ListLogEntriesResponse.newBuilder().setNextPageToken(cursor).addAllEntries(Lists.transform(entriesList, LogEntry.toPbFunction(PROJECT))).build();
    ApiFuture<ListLogEntriesResponse> futureResponse = ApiFutures.immediateFuture(response);
    EasyMock.expect(loggingRpcMock.list(request)).andReturn(futureResponse);
    EasyMock.replay(loggingRpcMock);
    Page<LogEntry> page = logging.listLogEntries(EntryListOption.filter("logName:syslog"), EntryListOption.sortOrder(SortingField.TIMESTAMP, Logging.SortingOrder.DESCENDING));
    assertEquals(cursor, page.getNextPageToken());
    assertArrayEquals(entriesList.toArray(), Iterables.toArray(page.getValues(), LogEntry.class));
}
Also used : ListLogEntriesResponse(com.google.logging.v2.ListLogEntriesResponse) ListLogEntriesRequest(com.google.logging.v2.ListLogEntriesRequest) Test(org.junit.Test)

Example 10 with ListLogEntriesResponse

use of com.google.logging.v2.ListLogEntriesResponse in project google-cloud-java by GoogleCloudPlatform.

the class LoggingImplTest method testListLogEntriesAsyncWithOptions.

@Test
public void testListLogEntriesAsyncWithOptions() throws ExecutionException, InterruptedException {
    String cursor = "cursor";
    EasyMock.replay(rpcFactoryMock);
    logging = options.getService();
    ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder().addProjectIds(PROJECT).setOrderBy("timestamp desc").setFilter("logName:syslog").build();
    List<LogEntry> entriesList = ImmutableList.of(LOG_ENTRY1, LOG_ENTRY2);
    ListLogEntriesResponse response = ListLogEntriesResponse.newBuilder().setNextPageToken(cursor).addAllEntries(Lists.transform(entriesList, LogEntry.toPbFunction(PROJECT))).build();
    ApiFuture<ListLogEntriesResponse> futureResponse = ApiFutures.immediateFuture(response);
    EasyMock.expect(loggingRpcMock.list(request)).andReturn(futureResponse);
    EasyMock.replay(loggingRpcMock);
    AsyncPage<LogEntry> page = logging.listLogEntriesAsync(EntryListOption.filter("logName:syslog"), EntryListOption.sortOrder(SortingField.TIMESTAMP, Logging.SortingOrder.DESCENDING)).get();
    assertEquals(cursor, page.getNextPageToken());
    assertArrayEquals(entriesList.toArray(), Iterables.toArray(page.getValues(), LogEntry.class));
}
Also used : ListLogEntriesResponse(com.google.logging.v2.ListLogEntriesResponse) ListLogEntriesRequest(com.google.logging.v2.ListLogEntriesRequest) Test(org.junit.Test)

Aggregations

ListLogEntriesRequest (com.google.logging.v2.ListLogEntriesRequest)10 ListLogEntriesResponse (com.google.logging.v2.ListLogEntriesResponse)10 Test (org.junit.Test)9 ArrayList (java.util.ArrayList)3 LogEntry (com.google.logging.v2.LogEntry)2 List (java.util.List)2 AsyncPage (com.google.api.gax.paging.AsyncPage)1 ListLogEntriesPagedResponse (com.google.cloud.logging.spi.v2.PagedResponseWrappers.ListLogEntriesPagedResponse)1 ImmutableList (com.google.common.collect.ImmutableList)1 ByteString (com.google.protobuf.ByteString)1 GeneratedMessageV3 (com.google.protobuf.GeneratedMessageV3)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1