@Generated(value="by gapic-generator") @BetaApi public class LoggingClient extends Object implements BackgroundResource
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
loggingClient.deleteLog(logName);
}
Note: close() needs to be called on the loggingClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of LoggingSettings to create(). For example:
To customize credentials:
LoggingSettings loggingSettings =
LoggingSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
LoggingClient loggingClient =
LoggingClient.create(loggingSettings);
To customize the endpoint:
LoggingSettings loggingSettings =
LoggingSettings.newBuilder().setEndpoint(myEndpoint).build();
LoggingClient loggingClient =
LoggingClient.create(loggingSettings);
Modifier and Type | Class and Description |
---|---|
static class |
LoggingClient.ListLogEntriesFixedSizeCollection |
static class |
LoggingClient.ListLogEntriesPage |
static class |
LoggingClient.ListLogEntriesPagedResponse |
static class |
LoggingClient.ListLogsFixedSizeCollection |
static class |
LoggingClient.ListLogsPage |
static class |
LoggingClient.ListLogsPagedResponse |
static class |
LoggingClient.ListMonitoredResourceDescriptorsFixedSizeCollection |
static class |
LoggingClient.ListMonitoredResourceDescriptorsPage |
static class |
LoggingClient.ListMonitoredResourceDescriptorsPagedResponse |
Modifier | Constructor and Description |
---|---|
protected |
LoggingClient(LoggingServiceV2Stub stub) |
protected |
LoggingClient(LoggingSettings settings)
Constructs an instance of LoggingClient, using the given settings.
|
Modifier and Type | Method and Description |
---|---|
boolean |
awaitTermination(long duration,
TimeUnit unit) |
void |
close() |
static LoggingClient |
create()
Constructs an instance of LoggingClient with default settings.
|
static LoggingClient |
create(LoggingServiceV2Stub stub)
Constructs an instance of LoggingClient, using the given stub for making calls.
|
static LoggingClient |
create(LoggingSettings settings)
Constructs an instance of LoggingClient, using the given settings.
|
void |
deleteLog(com.google.logging.v2.DeleteLogRequest request)
Deletes all the log entries in a log.
|
void |
deleteLog(com.google.logging.v2.LogName logName)
Deletes all the log entries in a log.
|
void |
deleteLog(String logName)
Deletes all the log entries in a log.
|
UnaryCallable<com.google.logging.v2.DeleteLogRequest,Empty> |
deleteLogCallable()
Deletes all the log entries in a log.
|
LoggingSettings |
getSettings() |
LoggingServiceV2Stub |
getStub() |
boolean |
isShutdown() |
boolean |
isTerminated() |
LoggingClient.ListLogEntriesPagedResponse |
listLogEntries(List<String> resourceNames,
String filter,
String orderBy)
Lists log entries.
|
LoggingClient.ListLogEntriesPagedResponse |
listLogEntries(com.google.logging.v2.ListLogEntriesRequest request)
Lists log entries.
|
UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,com.google.logging.v2.ListLogEntriesResponse> |
listLogEntriesCallable()
Lists log entries.
|
UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,LoggingClient.ListLogEntriesPagedResponse> |
listLogEntriesPagedCallable()
Lists log entries.
|
LoggingClient.ListLogsPagedResponse |
listLogs(com.google.logging.v2.ListLogsRequest request)
Lists the logs in projects, organizations, folders, or billing accounts.
|
LoggingClient.ListLogsPagedResponse |
listLogs(com.google.logging.v2.ParentName parent)
Lists the logs in projects, organizations, folders, or billing accounts.
|
LoggingClient.ListLogsPagedResponse |
listLogs(String parent)
Lists the logs in projects, organizations, folders, or billing accounts.
|
UnaryCallable<com.google.logging.v2.ListLogsRequest,com.google.logging.v2.ListLogsResponse> |
listLogsCallable()
Lists the logs in projects, organizations, folders, or billing accounts.
|
UnaryCallable<com.google.logging.v2.ListLogsRequest,LoggingClient.ListLogsPagedResponse> |
listLogsPagedCallable()
Lists the logs in projects, organizations, folders, or billing accounts.
|
LoggingClient.ListMonitoredResourceDescriptorsPagedResponse |
listMonitoredResourceDescriptors(com.google.logging.v2.ListMonitoredResourceDescriptorsRequest request)
Lists the descriptors for monitored resource types used by Logging.
|
UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,com.google.logging.v2.ListMonitoredResourceDescriptorsResponse> |
listMonitoredResourceDescriptorsCallable()
Lists the descriptors for monitored resource types used by Logging.
|
UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,LoggingClient.ListMonitoredResourceDescriptorsPagedResponse> |
listMonitoredResourceDescriptorsPagedCallable()
Lists the descriptors for monitored resource types used by Logging.
|
void |
shutdown() |
void |
shutdownNow() |
com.google.logging.v2.WriteLogEntriesResponse |
writeLogEntries(com.google.logging.v2.LogName logName,
com.google.api.MonitoredResource resource,
Map<String,String> labels,
List<com.google.logging.v2.LogEntry> entries)
Writes log entries to Logging.
|
com.google.logging.v2.WriteLogEntriesResponse |
writeLogEntries(String logName,
com.google.api.MonitoredResource resource,
Map<String,String> labels,
List<com.google.logging.v2.LogEntry> entries)
Writes log entries to Logging.
|
com.google.logging.v2.WriteLogEntriesResponse |
writeLogEntries(com.google.logging.v2.WriteLogEntriesRequest request)
Writes log entries to Logging.
|
UnaryCallable<com.google.logging.v2.WriteLogEntriesRequest,com.google.logging.v2.WriteLogEntriesResponse> |
writeLogEntriesCallable()
Writes log entries to Logging.
|
protected LoggingClient(LoggingSettings settings) throws IOException
IOException
@BetaApi(value="A restructuring of stub classes is planned, so this may break in the future") protected LoggingClient(LoggingServiceV2Stub stub)
public static final LoggingClient create() throws IOException
IOException
public static final LoggingClient create(LoggingSettings settings) throws IOException
IOException
@BetaApi(value="A restructuring of stub classes is planned, so this may break in the future") public static final LoggingClient create(LoggingServiceV2Stub stub)
public final LoggingSettings getSettings()
@BetaApi(value="A restructuring of stub classes is planned, so this may break in the future") public LoggingServiceV2Stub getStub()
public final void deleteLog(com.google.logging.v2.LogName logName)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
loggingClient.deleteLog(logName);
}
logName
- Required. The resource name of the log to delete:
"projects/[PROJECT_ID]/logs/[LOG_ID]" "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" "folders/[FOLDER_ID]/logs/[LOG_ID]"
`[LOG_ID]` must be URL-encoded. For example, `"projects/my-project-id/logs/syslog"`, `"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"`. For more information about log names, see [LogEntry][google.logging.v2.LogEntry].
ApiException
- if the remote call failspublic final void deleteLog(String logName)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
loggingClient.deleteLog(logName.toString());
}
logName
- Required. The resource name of the log to delete:
"projects/[PROJECT_ID]/logs/[LOG_ID]" "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" "folders/[FOLDER_ID]/logs/[LOG_ID]"
`[LOG_ID]` must be URL-encoded. For example, `"projects/my-project-id/logs/syslog"`, `"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"`. For more information about log names, see [LogEntry][google.logging.v2.LogEntry].
ApiException
- if the remote call failspublic final void deleteLog(com.google.logging.v2.DeleteLogRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
DeleteLogRequest request = DeleteLogRequest.newBuilder()
.setLogName(logName.toString())
.build();
loggingClient.deleteLog(request);
}
request
- The request object containing all of the parameters for the API call.ApiException
- if the remote call failspublic final UnaryCallable<com.google.logging.v2.DeleteLogRequest,Empty> deleteLogCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
DeleteLogRequest request = DeleteLogRequest.newBuilder()
.setLogName(logName.toString())
.build();
ApiFuture<Void> future = loggingClient.deleteLogCallable().futureCall(request);
// Do something
future.get();
}
public final com.google.logging.v2.WriteLogEntriesResponse writeLogEntries(com.google.logging.v2.LogName logName, com.google.api.MonitoredResource resource, Map<String,String> labels, List<com.google.logging.v2.LogEntry> entries)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
MonitoredResource resource = MonitoredResource.newBuilder().build();
Map<String, String> labels = new HashMap<>();
List<LogEntry> entries = new ArrayList<>();
WriteLogEntriesResponse response = loggingClient.writeLogEntries(logName, resource, labels, entries);
}
logName
- Optional. A default log resource name that is assigned to all log entries in
`entries` that do not specify a value for `log_name`:
"projects/[PROJECT_ID]/logs/[LOG_ID]" "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" "folders/[FOLDER_ID]/logs/[LOG_ID]"
`[LOG_ID]` must be URL-encoded. For example:
"projects/my-project-id/logs/syslog" "organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"
The permission <code>logging.logEntries.create</code> is needed on each project, organization, billing account, or folder that is receiving new log entries, whether the resource is specified in <code>logName</code> or in an individual log entry.
resource
- Optional. A default monitored resource object that is assigned to all log
entries in `entries` that do not specify a value for `resource`. Example:
{ "type": "gce_instance", "labels": { "zone": "us-central1-a", "instance_id": "00000000000000000000" }}
See [LogEntry][google.logging.v2.LogEntry].
labels
- Optional. Default labels that are added to the `labels` field of all log entries
in `entries`. If a log entry already has a label with the same key as a label in this
parameter, then the log entry's label is not changed. See
[LogEntry][google.logging.v2.LogEntry].entries
- Required. The log entries to send to Logging. The order of log entries in this
list does not matter. Values supplied in this method's `log_name`, `resource`, and `labels`
fields are copied into those log entries in this list that do not include values for their
corresponding fields. For more information, see the [LogEntry][google.logging.v2.LogEntry]
type.
If the `timestamp` or `insert_id` fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the `entries.list` method.
Log entries with timestamps that are more than the [logs retention period](/logging/quota-policy) in the past or more than 24 hours in the future will not be available when calling `entries.list`. However, those log entries can still be exported with [LogSinks](/logging/docs/api/tasks/exporting-logs).
To improve throughput and to avoid exceeding the [quota limit](/logging/quota-policy) for calls to `entries.write`, you should try to include several log entries in this list, rather than calling this method for each individual log entry.
ApiException
- if the remote call failspublic final com.google.logging.v2.WriteLogEntriesResponse writeLogEntries(String logName, com.google.api.MonitoredResource resource, Map<String,String> labels, List<com.google.logging.v2.LogEntry> entries)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogName logName = ProjectLogName.of("[PROJECT]", "[LOG]");
MonitoredResource resource = MonitoredResource.newBuilder().build();
Map<String, String> labels = new HashMap<>();
List<LogEntry> entries = new ArrayList<>();
WriteLogEntriesResponse response = loggingClient.writeLogEntries(logName.toString(), resource, labels, entries);
}
logName
- Optional. A default log resource name that is assigned to all log entries in
`entries` that do not specify a value for `log_name`:
"projects/[PROJECT_ID]/logs/[LOG_ID]" "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" "folders/[FOLDER_ID]/logs/[LOG_ID]"
`[LOG_ID]` must be URL-encoded. For example:
"projects/my-project-id/logs/syslog" "organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"
The permission <code>logging.logEntries.create</code> is needed on each project, organization, billing account, or folder that is receiving new log entries, whether the resource is specified in <code>logName</code> or in an individual log entry.
resource
- Optional. A default monitored resource object that is assigned to all log
entries in `entries` that do not specify a value for `resource`. Example:
{ "type": "gce_instance", "labels": { "zone": "us-central1-a", "instance_id": "00000000000000000000" }}
See [LogEntry][google.logging.v2.LogEntry].
labels
- Optional. Default labels that are added to the `labels` field of all log entries
in `entries`. If a log entry already has a label with the same key as a label in this
parameter, then the log entry's label is not changed. See
[LogEntry][google.logging.v2.LogEntry].entries
- Required. The log entries to send to Logging. The order of log entries in this
list does not matter. Values supplied in this method's `log_name`, `resource`, and `labels`
fields are copied into those log entries in this list that do not include values for their
corresponding fields. For more information, see the [LogEntry][google.logging.v2.LogEntry]
type.
If the `timestamp` or `insert_id` fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the `entries.list` method.
Log entries with timestamps that are more than the [logs retention period](/logging/quota-policy) in the past or more than 24 hours in the future will not be available when calling `entries.list`. However, those log entries can still be exported with [LogSinks](/logging/docs/api/tasks/exporting-logs).
To improve throughput and to avoid exceeding the [quota limit](/logging/quota-policy) for calls to `entries.write`, you should try to include several log entries in this list, rather than calling this method for each individual log entry.
ApiException
- if the remote call failspublic final com.google.logging.v2.WriteLogEntriesResponse writeLogEntries(com.google.logging.v2.WriteLogEntriesRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<LogEntry> entries = new ArrayList<>();
WriteLogEntriesRequest request = WriteLogEntriesRequest.newBuilder()
.addAllEntries(entries)
.build();
WriteLogEntriesResponse response = loggingClient.writeLogEntries(request);
}
request
- The request object containing all of the parameters for the API call.ApiException
- if the remote call failspublic final UnaryCallable<com.google.logging.v2.WriteLogEntriesRequest,com.google.logging.v2.WriteLogEntriesResponse> writeLogEntriesCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<LogEntry> entries = new ArrayList<>();
WriteLogEntriesRequest request = WriteLogEntriesRequest.newBuilder()
.addAllEntries(entries)
.build();
ApiFuture<WriteLogEntriesResponse> future = loggingClient.writeLogEntriesCallable().futureCall(request);
// Do something
WriteLogEntriesResponse response = future.get();
}
public final LoggingClient.ListLogEntriesPagedResponse listLogEntries(List<String> resourceNames, String filter, String orderBy)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<String> formattedResourceNames = new ArrayList<>();
String filter = "";
String orderBy = "";
for (LogEntry element : loggingClient.listLogEntries(formattedResourceNames, filter, orderBy).iterateAll()) {
// doThingsWith(element);
}
}
resourceNames
- Required. Names of one or more parent resources from which to retrieve log
entries:
"projects/[PROJECT_ID]" "organizations/[ORGANIZATION_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]" "folders/[FOLDER_ID]"
Projects listed in the `project_ids` field are added to this list.
filter
- Optional. A filter that chooses which log entries to return. See [Advanced Logs
Filters](/logging/docs/view/advanced_filters). Only log entries that match the filter are
returned. An empty filter matches all log entries in the resources listed in
`resource_names`. Referencing a parent resource that is not listed in `resource_names` will
cause the filter to return no results. The maximum length of the filter is 20000
characters.orderBy
- Optional. How the results should be sorted. Presently, the only permitted values
are `"timestamp asc"` (default) and `"timestamp desc"`. The first option returns entries in
order of increasing values of `LogEntry.timestamp` (oldest first), and the second option
returns entries in order of decreasing timestamps (newest first). Entries with equal
timestamps are returned in order of their `insert_id` values.ApiException
- if the remote call failspublic final LoggingClient.ListLogEntriesPagedResponse listLogEntries(com.google.logging.v2.ListLogEntriesRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<ParentName> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(ParentName.toStringList(resourceNames))
.build();
for (LogEntry element : loggingClient.listLogEntries(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.ApiException
- if the remote call failspublic final UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,LoggingClient.ListLogEntriesPagedResponse> listLogEntriesPagedCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<ParentName> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(ParentName.toStringList(resourceNames))
.build();
ApiFuture<ListLogEntriesPagedResponse> future = loggingClient.listLogEntriesPagedCallable().futureCall(request);
// Do something
for (LogEntry element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,com.google.logging.v2.ListLogEntriesResponse> listLogEntriesCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<ParentName> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(ParentName.toStringList(resourceNames))
.build();
while (true) {
ListLogEntriesResponse response = loggingClient.listLogEntriesCallable().call(request);
for (LogEntry element : response.getEntriesList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final LoggingClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors(com.google.logging.v2.ListMonitoredResourceDescriptorsRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ListMonitoredResourceDescriptorsRequest request = ListMonitoredResourceDescriptorsRequest.newBuilder().build();
for (MonitoredResourceDescriptor element : loggingClient.listMonitoredResourceDescriptors(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.ApiException
- if the remote call failspublic final UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,LoggingClient.ListMonitoredResourceDescriptorsPagedResponse> listMonitoredResourceDescriptorsPagedCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ListMonitoredResourceDescriptorsRequest request = ListMonitoredResourceDescriptorsRequest.newBuilder().build();
ApiFuture<ListMonitoredResourceDescriptorsPagedResponse> future = loggingClient.listMonitoredResourceDescriptorsPagedCallable().futureCall(request);
// Do something
for (MonitoredResourceDescriptor element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,com.google.logging.v2.ListMonitoredResourceDescriptorsResponse> listMonitoredResourceDescriptorsCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ListMonitoredResourceDescriptorsRequest request = ListMonitoredResourceDescriptorsRequest.newBuilder().build();
while (true) {
ListMonitoredResourceDescriptorsResponse response = loggingClient.listMonitoredResourceDescriptorsCallable().call(request);
for (MonitoredResourceDescriptor element : response.getResourceDescriptorsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final LoggingClient.ListLogsPagedResponse listLogs(com.google.logging.v2.ParentName parent)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentName parent = ProjectName.of("[PROJECT]");
for (String element : loggingClient.listLogs(parent).iterateAll()) {
// doThingsWith(element);
}
}
parent
- Required. The resource name that owns the logs:
"projects/[PROJECT_ID]" "organizations/[ORGANIZATION_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]" "folders/[FOLDER_ID]"
ApiException
- if the remote call failspublic final LoggingClient.ListLogsPagedResponse listLogs(String parent)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentName parent = ProjectName.of("[PROJECT]");
for (String element : loggingClient.listLogs(parent.toString()).iterateAll()) {
// doThingsWith(element);
}
}
parent
- Required. The resource name that owns the logs:
"projects/[PROJECT_ID]" "organizations/[ORGANIZATION_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]" "folders/[FOLDER_ID]"
ApiException
- if the remote call failspublic final LoggingClient.ListLogsPagedResponse listLogs(com.google.logging.v2.ListLogsRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentName parent = ProjectName.of("[PROJECT]");
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParent(parent.toString())
.build();
for (String element : loggingClient.listLogs(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.ApiException
- if the remote call failspublic final UnaryCallable<com.google.logging.v2.ListLogsRequest,LoggingClient.ListLogsPagedResponse> listLogsPagedCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentName parent = ProjectName.of("[PROJECT]");
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParent(parent.toString())
.build();
ApiFuture<ListLogsPagedResponse> future = loggingClient.listLogsPagedCallable().futureCall(request);
// Do something
for (String element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final UnaryCallable<com.google.logging.v2.ListLogsRequest,com.google.logging.v2.ListLogsResponse> listLogsCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentName parent = ProjectName.of("[PROJECT]");
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParent(parent.toString())
.build();
while (true) {
ListLogsResponse response = loggingClient.listLogsCallable().call(request);
for (String element : response.getLogNamesList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final void close()
close
in interface AutoCloseable
public void shutdown()
shutdown
in interface BackgroundResource
public boolean isShutdown()
isShutdown
in interface BackgroundResource
public boolean isTerminated()
isTerminated
in interface BackgroundResource
public void shutdownNow()
shutdownNow
in interface BackgroundResource
public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
awaitTermination
in interface BackgroundResource
InterruptedException
Copyright © 2019 Google LLC. All rights reserved.