use of com.ibm.watson.developer_cloud.conversation.v1.model.LogCollection in project java-sdk by watson-developer-cloud.
the class ConversationServiceIT method testListLogsWithPaging.
/**
* Test listLogs with pagination.
*/
@Test
@Ignore("To be run locally until we fix the Rate limitation issue")
public void testListLogsWithPaging() {
try {
ListLogsOptions.Builder listOptionsBuilder = new ListLogsOptions.Builder(workspaceId);
listOptionsBuilder.sort("-request_timestamp");
listOptionsBuilder.filter("request.intents:intent:off_topic");
listOptionsBuilder.pageLimit(1L);
LogCollection response = service.listLogs(listOptionsBuilder.build()).execute();
assertNotNull(response);
assertNotNull(response.getLogs());
assertNotNull(response.getPagination());
// Empirically -- no refresh_url in pagination of listLogs
// assertNotNull(response.getPagination().getRefreshUrl());
assertNotNull(response.getPagination().getNextUrl());
assertNotNull(response.getPagination().getCursor());
assertTrue(response.getLogs().size() == 1);
LogExport logEntry1 = response.getLogs().get(0);
String cursor = response.getPagination().getCursor();
response = service.listLogs(listOptionsBuilder.cursor(cursor).build()).execute();
assertNotNull(response.getLogs());
assertTrue(response.getLogs().size() == 1);
LogExport logEntry2 = response.getLogs().get(0);
Date requestDate1 = isoDateFormat.parse(logEntry1.getRequestTimestamp());
Date requestDate2 = isoDateFormat.parse(logEntry2.getRequestTimestamp());
assertTrue(requestDate2.before(requestDate1));
} catch (Exception ex) {
fail(ex.getMessage());
}
}
use of com.ibm.watson.developer_cloud.conversation.v1.model.LogCollection in project java-sdk by watson-developer-cloud.
the class Conversation method listAllLogs.
/**
* List log events in all workspaces.
*
* List log events in all workspaces in the service instance.
*
* @param listAllLogsOptions the {@link ListAllLogsOptions} containing the options for the call
* @return a {@link ServiceCall} with a response type of {@link LogCollection}
*/
public ServiceCall<LogCollection> listAllLogs(ListAllLogsOptions listAllLogsOptions) {
Validator.notNull(listAllLogsOptions, "listAllLogsOptions cannot be null");
String[] pathSegments = { "v1/logs" };
RequestBuilder builder = RequestBuilder.get(RequestBuilder.constructHttpUrl(getEndPoint(), pathSegments));
builder.query(VERSION, versionDate);
builder.query("filter", listAllLogsOptions.filter());
if (listAllLogsOptions.sort() != null) {
builder.query("sort", listAllLogsOptions.sort());
}
if (listAllLogsOptions.pageLimit() != null) {
builder.query("page_limit", String.valueOf(listAllLogsOptions.pageLimit()));
}
if (listAllLogsOptions.cursor() != null) {
builder.query("cursor", listAllLogsOptions.cursor());
}
return createServiceCall(builder.build(), ResponseConverterUtils.getObject(LogCollection.class));
}
use of com.ibm.watson.developer_cloud.conversation.v1.model.LogCollection in project java-sdk by watson-developer-cloud.
the class ConversationServiceIT method testListLogs.
/**
* Test listLogs.
*/
@Test
public void testListLogs() {
try {
ListLogsOptions listOptions = new ListLogsOptions.Builder().workspaceId(workspaceId).build();
LogCollection response = service.listLogs(listOptions).execute();
assertNotNull(response);
assertNotNull(response.getLogs());
assertNotNull(response.getPagination());
// nextUrl may be null
if (response.getPagination().getNextUrl() == null) {
assertNull(response.getPagination().getCursor());
} else {
assertNotNull(response.getPagination().getCursor());
}
} catch (Exception ex) {
fail(ex.getMessage());
}
}
Aggregations