@Generated(value="by GAPIC v0.0.5") @BetaApi public class LoggingClient extends Object implements com.google.api.gax.core.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()) {
LogNameOneof logName = LogNameOneof.from(LogName.create("[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.defaultBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
LoggingClient loggingClient =
LoggingClient.create(loggingSettings);
To customize the endpoint:
LoggingSettings loggingSettings =
LoggingSettings.defaultBuilder()
.setTransportProvider(LoggingSettings.defaultGrpcTransportProviderBuilder()
.setChannelProvider(LoggingSettings.defaultGrpcChannelProviderBuilder()
.setEndpoint(myEndpoint)
.build())
.build())
.build();
LoggingClient loggingClient =
LoggingClient.create(loggingSettings);
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.LogNameOneof logName)
Deletes all the log entries in a log.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.DeleteLogRequest,com.google.protobuf.Empty> |
deleteLogCallable()
Deletes all the log entries in a log.
|
LoggingSettings |
getSettings() |
LoggingServiceV2Stub |
getStub() |
boolean |
isShutdown() |
boolean |
isTerminated() |
PagedResponseWrappers.ListLogEntriesPagedResponse |
listLogEntries(List<String> resourceNames,
String filter,
String orderBy)
Lists log entries.
|
PagedResponseWrappers.ListLogEntriesPagedResponse |
listLogEntries(com.google.logging.v2.ListLogEntriesRequest request)
Lists log entries.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,com.google.logging.v2.ListLogEntriesResponse> |
listLogEntriesCallable()
Lists log entries.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,PagedResponseWrappers.ListLogEntriesPagedResponse> |
listLogEntriesPagedCallable()
Lists log entries.
|
PagedResponseWrappers.ListLogsPagedResponse |
listLogs(com.google.logging.v2.ListLogsRequest request)
Lists the logs in projects, organizations, folders, or billing accounts.
|
PagedResponseWrappers.ListLogsPagedResponse |
listLogs(com.google.logging.v2.ParentNameOneof parent)
Lists the logs in projects, organizations, folders, or billing accounts.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogsRequest,com.google.logging.v2.ListLogsResponse> |
listLogsCallable()
Lists the logs in projects, organizations, folders, or billing accounts.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogsRequest,PagedResponseWrappers.ListLogsPagedResponse> |
listLogsPagedCallable()
Lists the logs in projects, organizations, folders, or billing accounts.
|
PagedResponseWrappers.ListMonitoredResourceDescriptorsPagedResponse |
listMonitoredResourceDescriptors(com.google.logging.v2.ListMonitoredResourceDescriptorsRequest request)
Lists the descriptors for monitored resource types used by Stackdriver Logging.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,com.google.logging.v2.ListMonitoredResourceDescriptorsResponse> |
listMonitoredResourceDescriptorsCallable()
Lists the descriptors for monitored resource types used by Stackdriver Logging.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,PagedResponseWrappers.ListMonitoredResourceDescriptorsPagedResponse> |
listMonitoredResourceDescriptorsPagedCallable()
Lists the descriptors for monitored resource types used by Stackdriver Logging.
|
void |
shutdown() |
void |
shutdownNow() |
com.google.logging.v2.WriteLogEntriesResponse |
writeLogEntries(com.google.logging.v2.LogNameOneof logName,
com.google.api.MonitoredResource resource,
Map<String,String> labels,
List<com.google.logging.v2.LogEntry> entries)
Writes log entries to Stackdriver Logging.
|
com.google.logging.v2.WriteLogEntriesResponse |
writeLogEntries(com.google.logging.v2.WriteLogEntriesRequest request)
Writes log entries to Stackdriver Logging.
|
com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.WriteLogEntriesRequest,com.google.logging.v2.WriteLogEntriesResponse> |
writeLogEntriesCallable()
Writes log entries to Stackdriver Logging.
|
protected LoggingClient(LoggingSettings settings) throws IOException
IOException
protected LoggingClient(LoggingServiceV2Stub stub)
public static final LoggingClient create() throws IOException
IOException
public static final LoggingClient create(LoggingSettings settings) throws IOException
IOException
public static final LoggingClient create(LoggingServiceV2Stub stub)
public final LoggingSettings getSettings()
public LoggingServiceV2Stub getStub()
public final void deleteLog(com.google.logging.v2.LogNameOneof logName)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogNameOneof logName = LogNameOneof.from(LogName.create("[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].
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.DeleteLogRequest,com.google.protobuf.Empty> deleteLogCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogNameOneof logName = LogNameOneof.from(LogName.create("[PROJECT]", "[LOG]"));
DeleteLogRequest request = DeleteLogRequest.newBuilder()
.setLogNameWithLogNameOneof(logName)
.build();
ApiFuture<Void> future = loggingClient.deleteLogCallable().futureCall(request);
// Do something
future.get();
}
public final com.google.logging.v2.WriteLogEntriesResponse writeLogEntries(com.google.logging.v2.LogNameOneof logName, com.google.api.MonitoredResource resource, Map<String,String> labels, List<com.google.logging.v2.LogEntry> entries)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
LogNameOneof logName = LogNameOneof.from(LogName.create("[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"` or `"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity"`. For more information about log names, see [LogEntry][google.logging.v2.LogEntry].
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 write. Values supplied for the fields `log_name`,
`resource`, and `labels` in this `entries.write` request are inserted into those log
entries in this list that do not provide their own values.
Stackdriver Logging also creates and inserts values for `timestamp` and `insert_id` if the entries do not provide them. The created `insert_id` for the N'th entry in this list will be greater than earlier entries and less than later entries. Otherwise, the order of log entries in this list does not matter.
To improve throughput and to avoid exceeding the [quota limit](/logging/quota-policy) for calls to `entries.write`, you should write multiple log entries at once rather than calling this method for each individual log entry.
com.google.api.gax.rpc.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.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.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 PagedResponseWrappers.ListLogEntriesPagedResponse listLogEntries(List<String> resourceNames, String filter, String orderBy)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<String> resourceNames = new ArrayList<>();
String filter = "";
String orderBy = "";
for (LogEntry element : loggingClient.listLogEntries(resourceNames, 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.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PagedResponseWrappers.ListLogEntriesPagedResponse listLogEntries(com.google.logging.v2.ListLogEntriesRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<String> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(resourceNames)
.build();
for (LogEntry element : loggingClient.listLogEntries(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,PagedResponseWrappers.ListLogEntriesPagedResponse> listLogEntriesPagedCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<String> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(resourceNames)
.build();
ApiFuture<ListLogEntriesPagedResponse> future = loggingClient.listLogEntriesPagedCallable().futureCall(request);
// Do something
for (LogEntry element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogEntriesRequest,com.google.logging.v2.ListLogEntriesResponse> listLogEntriesCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
List<String> resourceNames = new ArrayList<>();
ListLogEntriesRequest request = ListLogEntriesRequest.newBuilder()
.addAllResourceNames(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 PagedResponseWrappers.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.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,PagedResponseWrappers.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 com.google.api.gax.rpc.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 PagedResponseWrappers.ListLogsPagedResponse listLogs(com.google.logging.v2.ParentNameOneof parent)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentNameOneof parent = ParentNameOneof.from(ProjectName.create("[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]"
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PagedResponseWrappers.ListLogsPagedResponse listLogs(com.google.logging.v2.ListLogsRequest request)
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentNameOneof parent = ParentNameOneof.from(ProjectName.create("[PROJECT]"));
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParentWithParentNameOneof(parent)
.build();
for (String element : loggingClient.listLogs(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogsRequest,PagedResponseWrappers.ListLogsPagedResponse> listLogsPagedCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentNameOneof parent = ParentNameOneof.from(ProjectName.create("[PROJECT]"));
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParentWithParentNameOneof(parent)
.build();
ApiFuture<ListLogsPagedResponse> future = loggingClient.listLogsPagedCallable().futureCall(request);
// Do something
for (String element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<com.google.logging.v2.ListLogsRequest,com.google.logging.v2.ListLogsResponse> listLogsCallable()
Sample code:
try (LoggingClient loggingClient = LoggingClient.create()) {
ParentNameOneof parent = ParentNameOneof.from(ProjectName.create("[PROJECT]"));
ListLogsRequest request = ListLogsRequest.newBuilder()
.setParentWithParentNameOneof(parent)
.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() throws Exception
close
in interface AutoCloseable
Exception
public void shutdown()
shutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isShutdown()
isShutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isTerminated()
isTerminated
in interface com.google.api.gax.core.BackgroundResource
public void shutdownNow()
shutdownNow
in interface com.google.api.gax.core.BackgroundResource
public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
awaitTermination
in interface com.google.api.gax.core.BackgroundResource
InterruptedException
Copyright © 2017 Google. All rights reserved.