Client for the LoggingService service.
Service for ingesting and querying logs.
Inherits
- Object
Methods
.configure
def self.configure() { |config| ... } -> Client::Configuration
Configure the LoggingService Client class.
See Configuration for a description of the configuration fields.
- (config) — Configure the Client client.
- config (Client::Configuration)
# Modify the configuration for all LoggingService clients ::Google::Cloud::Logging::V2::LoggingService::Client.configure do |config| config.timeout = 10.0 end
#configure
def configure() { |config| ... } -> Client::Configuration
Configure the LoggingService Client instance.
The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.
See Configuration for a description of the configuration fields.
- (config) — Configure the Client client.
- config (Client::Configuration)
#delete_log
def delete_log(request, options = nil) -> ::Google::Protobuf::Empty
def delete_log(log_name: nil) -> ::Google::Protobuf::Empty
Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted. Entries received after the delete operation with a timestamp before the operation will be deleted.
def delete_log(request, options = nil) -> ::Google::Protobuf::Empty
delete_log
via a request object, either of type
DeleteLogRequest or an equivalent Hash.
- request (::Google::Cloud::Logging::V2::DeleteLogRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def delete_log(log_name: nil) -> ::Google::Protobuf::Empty
delete_log
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
-
log_name (::String) — 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.
- (response, operation) — Access the result along with the RPC operation
- response (::Google::Protobuf::Empty)
- operation (::GRPC::ActiveCall::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Logging::V2::DeleteLogRequest.new # Call the delete_log method. result = client.delete_log request # The returned object is of type Google::Protobuf::Empty. p result
#initialize
def initialize() { |config| ... } -> Client
Create a new LoggingService client object.
- (config) — Configure the LoggingService client.
- config (Client::Configuration)
- (Client) — a new instance of Client
# Create a client using the default configuration client = ::Google::Cloud::Logging::V2::LoggingService::Client.new # Create a client using a custom configuration client = ::Google::Cloud::Logging::V2::LoggingService::Client.new do |config| config.timeout = 10.0 end
#list_log_entries
def list_log_entries(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>
def list_log_entries(resource_names: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>
Lists log entries. Use this method to retrieve log entries that originated from a project/folder/organization/billing account. For ways to export log entries, see Exporting Logs.
def list_log_entries(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>
list_log_entries
via a request object, either of type
Google::Cloud::Logging::V2::ListLogEntriesRequest or an equivalent Hash.
- request (::Google::Cloud::Logging::V2::ListLogEntriesRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_log_entries(resource_names: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>
list_log_entries
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
-
resource_names (::Array<::String>) — 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]"
May alternatively be one or more views projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID] organization/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID] billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID] folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]
Projects listed in the
project_ids
field are added to this list. -
filter (::String) — Optional. A filter that chooses which log entries to return. See Advanced
Logs Queries.
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 inresource_names
will cause the filter to return no results. The maximum length of the filter is 20000 characters. -
order_by (::String) — 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 ofLogEntry.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 theirinsert_id
values. -
page_size (::Integer) — Optional. The maximum number of results to return from this request.
Default is 50. If the value is negative or exceeds 1000,
the request is rejected. The presence of
next_page_token
in the response indicates that more results might be available. -
page_token (::String) — Optional. If present, then retrieve the next batch of results from the
preceding call to this method.
page_token
must be the value ofnext_page_token
from the previous response. The values of other method parameters should be identical to those in the previous call.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::PagedEnumerable<::Google::Cloud::Logging::V2::LogEntry>)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Logging::V2::ListLogEntriesRequest.new # Call the list_log_entries method. result = client.list_log_entries request # The returned object is of type Gapic::PagedEnumerable. You can # iterate over all elements by calling #each, and the enumerable # will lazily make API calls to fetch subsequent pages. Other # methods are also available for managing paging directly. result.each do |response| # Each element is of type ::Google::Cloud::Logging::V2::LogEntry. p response end
#list_logs
def list_logs(request, options = nil) -> ::Google::Cloud::Logging::V2::ListLogsResponse
def list_logs(parent: nil, page_size: nil, page_token: nil, resource_names: nil) -> ::Google::Cloud::Logging::V2::ListLogsResponse
Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.
def list_logs(request, options = nil) -> ::Google::Cloud::Logging::V2::ListLogsResponse
list_logs
via a request object, either of type
Google::Cloud::Logging::V2::ListLogsRequest or an equivalent Hash.
- request (::Google::Cloud::Logging::V2::ListLogsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_logs(parent: nil, page_size: nil, page_token: nil, resource_names: nil) -> ::Google::Cloud::Logging::V2::ListLogsResponse
list_logs
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
-
parent (::String) —
Required. The resource name that owns the logs:
"projects/[PROJECT_ID]" "organizations/[ORGANIZATION_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]" "folders/[FOLDER_ID]"
-
page_size (::Integer) — Optional. The maximum number of results to return from this request.
Non-positive values are ignored. The presence of
nextPageToken
in the response indicates that more results might be available. -
page_token (::String) — Optional. If present, then retrieve the next batch of results from the
preceding call to this method.
pageToken
must be the value ofnextPageToken
from the previous response. The values of other method parameters should be identical to those in the previous call. -
resource_names (::Array<::String>) — Optional. The resource name that owns the logs:
projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]
organization/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]
billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]
folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]
To support legacy queries, it could also be: "projects/[PROJECT_ID]" "organizations/[ORGANIZATION_ID]" "billingAccounts/[BILLING_ACCOUNT_ID]" "folders/[FOLDER_ID]"
- (response, operation) — Access the result along with the RPC operation
- response (::Google::Cloud::Logging::V2::ListLogsResponse)
- operation (::GRPC::ActiveCall::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Logging::V2::ListLogsRequest.new # Call the list_logs method. result = client.list_logs request # The returned object is of type Google::Cloud::Logging::V2::ListLogsResponse. p result
#list_monitored_resource_descriptors
def list_monitored_resource_descriptors(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>
def list_monitored_resource_descriptors(page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>
Lists the descriptors for monitored resource types used by Logging.
def list_monitored_resource_descriptors(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>
list_monitored_resource_descriptors
via a request object, either of type
Google::Cloud::Logging::V2::ListMonitoredResourceDescriptorsRequest or an equivalent Hash.
- request (::Google::Cloud::Logging::V2::ListMonitoredResourceDescriptorsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_monitored_resource_descriptors(page_size: nil, page_token: nil) -> ::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>
list_monitored_resource_descriptors
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
-
page_size (::Integer) — Optional. The maximum number of results to return from this request.
Non-positive values are ignored. The presence of
nextPageToken
in the response indicates that more results might be available. -
page_token (::String) — Optional. If present, then retrieve the next batch of results from the
preceding call to this method.
pageToken
must be the value ofnextPageToken
from the previous response. The values of other method parameters should be identical to those in the previous call.
- (response, operation) — Access the result along with the RPC operation
- response (::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>)
- operation (::GRPC::ActiveCall::Operation)
- (::Gapic::PagedEnumerable<::Google::Api::MonitoredResourceDescriptor>)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Logging::V2::ListMonitoredResourceDescriptorsRequest.new # Call the list_monitored_resource_descriptors method. result = client.list_monitored_resource_descriptors request # The returned object is of type Gapic::PagedEnumerable. You can # iterate over all elements by calling #each, and the enumerable # will lazily make API calls to fetch subsequent pages. Other # methods are also available for managing paging directly. result.each do |response| # Each element is of type ::Google::Api::MonitoredResourceDescriptor. p response end
#tail_log_entries
def tail_log_entries(request, options = nil) { |response, operation| ... } -> ::Enumerable<::Google::Cloud::Logging::V2::TailLogEntriesResponse>
Streaming read of log entries as they are ingested. Until the stream is terminated, it will continue reading logs.
- request (::Gapic::StreamInput, ::Enumerable<::Google::Cloud::Logging::V2::TailLogEntriesRequest, ::Hash>) — An enumerable of TailLogEntriesRequest instances.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
- (response, operation) — Access the result along with the RPC operation
- response (::Enumerable<::Google::Cloud::Logging::V2::TailLogEntriesResponse>)
- operation (::GRPC::ActiveCall::Operation)
- (::Enumerable<::Google::Cloud::Logging::V2::TailLogEntriesResponse>)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create an input stream input = Gapic::StreamInput.new # Call the tail_log_entries method to start streaming. output = client.tail_log_entries input # Send requests on the stream. For each request, pass in keyword # arguments to set fields. Be sure to close the stream when done. input << Google::Cloud::Logging::V2::TailLogEntriesRequest.new input << Google::Cloud::Logging::V2::TailLogEntriesRequest.new input.close # Handle streamed responses. These may be interleaved with inputs. # Each response is of type ::Google::Cloud::Logging::V2::TailLogEntriesResponse. output.each do |response| p response end
#write_log_entries
def write_log_entries(request, options = nil) -> ::Google::Cloud::Logging::V2::WriteLogEntriesResponse
def write_log_entries(log_name: nil, resource: nil, labels: nil, entries: nil, partial_success: nil, dry_run: nil) -> ::Google::Cloud::Logging::V2::WriteLogEntriesResponse
Writes log entries to Logging. This API method is the only way to send log entries to Logging. This method is used, directly or indirectly, by the Logging agent (fluentd) and all logging libraries configured to use Logging. A single request may contain log entries for a maximum of 1000 different resources (projects, organizations, billing accounts or folders)
def write_log_entries(request, options = nil) -> ::Google::Cloud::Logging::V2::WriteLogEntriesResponse
write_log_entries
via a request object, either of type
WriteLogEntriesRequest or an equivalent Hash.
- request (::Google::Cloud::Logging::V2::WriteLogEntriesRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
- options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def write_log_entries(log_name: nil, resource: nil, labels: nil, entries: nil, partial_success: nil, dry_run: nil) -> ::Google::Cloud::Logging::V2::WriteLogEntriesResponse
write_log_entries
via keyword arguments. Note that at
least one keyword argument is required. To specify no parameters, or to keep all
the default parameter values, pass an empty Hash as a request object (see above).
-
log_name (::String) — Optional. A default log resource name that is assigned to all log entries
in
entries
that do not specify a value forlog_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
logging.logEntries.create
is needed on each project, organization, billing account, or folder that is receiving new log entries, whether the resource is specified inlogName
or in an individual log entry. -
resource (::Google::Api::MonitoredResource, ::Hash) — Optional. A default monitored resource object that is assigned to all log
entries in
entries
that do not specify a value forresource
. Example:{ "type": "gce_instance", "labels": { "zone": "us-central1-a", "instance_id": "00000000000000000000" }}
See LogEntry.
-
labels (::Hash{::String => ::String}) — Optional. Default labels that are added to the
labels
field of all log entries inentries
. 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. -
entries (::Array<::Google::Cloud::Logging::V2::LogEntry, ::Hash>) — 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
, andlabels
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 type.If the
timestamp
orinsert_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 theentries.list
method.Log entries with timestamps that are more than the logs retention period 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.To improve throughput and to avoid exceeding the quota limit 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. -
partial_success (::Boolean) — Optional. Whether valid entries should be written even if some other
entries fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any
entry is not written, then the response status is the error associated
with one of the failed entries and the response includes error details
keyed by the entries' zero-based index in the
entries.write
method. - dry_run (::Boolean) — Optional. If true, the request should expect normal response, but the entries won't be persisted nor exported. Useful for checking whether the logging API endpoints are working properly before sending valuable data.
- (response, operation) — Access the result along with the RPC operation
- response (::Google::Cloud::Logging::V2::WriteLogEntriesResponse)
- operation (::GRPC::ActiveCall::Operation)
- (::Google::Cloud::Error) — if the RPC is aborted.
Basic example
require "google/cloud/logging/v2" # Create a client object. The client can be reused for multiple calls. client = Google::Cloud::Logging::V2::LoggingService::Client.new # Create a request. To set request fields, pass in keyword arguments. request = Google::Cloud::Logging::V2::WriteLogEntriesRequest.new # Call the write_log_entries method. result = client.write_log_entries request # The returned object is of type Google::Cloud::Logging::V2::WriteLogEntriesResponse. p result