Reference documentation and code samples for the Cloud Logging API class Google::Cloud::Logging::Sink.
Sink
Used to export log entries outside Stackdriver Logging. When you create a sink, new log entries are exported. Stackdriver Logging does not send previously-ingested log entries to the sink's destination.
A logs filter controls which log entries are exported.
Before creating the sink, ensure that you have granted the sink's unique writer identity permission to write logs to the destination. See Destination permissions.
You can retrieve an existing sink with Project#sink.
Inherits
- Object
Example
require "google/cloud/storage" storage = Google::Cloud::Storage.new bucket = storage.create_bucket "my-logs-bucket" # Grant owner permission to Stackdriver Logging service email = "cloud-logs@google.com" bucket.acl.add_owner "group-#{email}" require "google/cloud/logging" logging = Google::Cloud::Logging.new sink = logging.create_sink "my-sink", "storage.googleapis.com/#{bucket.id}"
Methods
#delete
def delete() -> Boolean
Permanently deletes the logs-based sink.
-
(Boolean) — Returns
true
if the sink was deleted.
require "google/cloud/logging" logging = Google::Cloud::Logging.new sink = logging.sink "severe_errors" sink.delete
#destination
def destination()
The export destination. See Properties of Sinks.
#destination=
def destination=(destination)
Updates the export destination. See Properties of Sinks.
#end_at
def end_at()
Deprecated. Time at which this sink will stop exporting log
entries. If this value is present, then log entries are exported only
if the log entry's timestamp is less than end_at
. Optional.
#end_at=
def end_at=(_new_end_at)
Deprecated. Sets the time at which this sink will stop exporting
log entries. If this value is present, then log entries are exported
only if the log entry's timestamp is less than end_at
. Optional.
#end_time
def end_time()
Deprecated. Time at which this sink will stop exporting log
entries. If this value is present, then log entries are exported only
if the log entry's timestamp is less than end_at
. Optional.
#end_time=
def end_time=(_new_end_at)
Deprecated. Sets the time at which this sink will stop exporting
log entries. If this value is present, then log entries are exported
only if the log entry's timestamp is less than end_at
. Optional.
#filter
def filter()
An advanced logs
filter
that defines the log entries to be exported. The filter must be
consistent with the log entry format designed by the version
parameter, regardless of the format of the log entry that was
originally written to Stackdriver Logging.
#filter=
def filter=(filter)
Updates the advanced logs
filter
that defines the log entries to be exported. The filter must be
consistent with the log entry format designed by the version
parameter, regardless of the format of the log entry that was
originally written to Stackdriver Logging.
#name
def name()
The client-assigned sink identifier. Sink identifiers are limited to
1000 characters and can include only the following characters: A-Z
,
a-z
, 0-9
, and the special characters _-.
.
#refresh!
def refresh!()
Reloads the logs-based sink with current data from the Logging service.
#reload!
def reload!()
Reloads the logs-based sink with current data from the Logging service.
#save
def save(unique_writer_identity: nil)
Updates the logs-based sink.
-
unique_writer_identity (Boolean) (defaults to: nil) — Whether the sink will have a
dedicated service account returned in the sink's
writer_identity
. Set this field to be true to export logs from one project to a different project. This field is ignored for non-project sinks (e.g. organization sinks) because those sinks are required to have dedicated service accounts. Optional.
require "google/cloud/logging" logging = Google::Cloud::Logging.new sink = logging.sink "severe_errors" sink.filter = "logName:syslog AND severity>=ERROR" sink.save
#start_at
def start_at()
Deprecated. The time at which this sink will begin exporting log
entries. If this value is present, then log entries are exported only
if start_at
is less than the log entry's timestamp. Optional.
#start_at=
def start_at=(_new_start_at)
Deprecated. Sets the time at which this sink will begin exporting
log entries. If this value is present, then log entries are exported
only if start_at
is less than the log entry's timestamp. Optional.
#start_time
def start_time()
Deprecated. The time at which this sink will begin exporting log
entries. If this value is present, then log entries are exported only
if start_at
is less than the log entry's timestamp. Optional.
#start_time=
def start_time=(_new_start_at)
Deprecated. Sets the time at which this sink will begin exporting
log entries. If this value is present, then log entries are exported
only if start_at
is less than the log entry's timestamp. Optional.
#unspecified?
def unspecified?() -> Boolean
Helper to determine if the sink's version is
VERSION_FORMAT_UNSPECIFIED
.
- (Boolean)
#v1?
def v1?() -> Boolean
Helper to determine if the sink's version is V1
.
- (Boolean)
#v2?
def v2?() -> Boolean
Helper to determine if the sink's version is V2
.
- (Boolean)
#version
def version()
Deprecated. The log entry version used when exporting log entries from this sink. This version does not have to correspond to the version of the log entry when it was written to Stackdriver Logging.
#version=
def version=(_version)
Deprecated. Updates the log entry version used when exporting log
entries from this sink. This version does not have to correspond to
the version of the log entry when it was written to Stackdriver
Logging. Accepted values are :VERSION_FORMAT_UNSPECIFIED
, :V2
, and
:V1
.
#writer_identity
def writer_identity()
An IAM identity (a service account or group) that will write exported log entries to the destination on behalf of Stackdriver Logging. You must grant this identity write-access to the destination. Consult the destination service's documentation to determine the exact role that must be granted.