Class: Google::Apis::LoggingV2beta1::LogSink
- Inherits:
-
Object
- Object
- Google::Apis::LoggingV2beta1::LogSink
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/logging_v2beta1/classes.rb,
generated/google/apis/logging_v2beta1/representations.rb,
generated/google/apis/logging_v2beta1/representations.rb
Overview
Describes a sink used to export log entries to one of the following destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a Cloud Pub/Sub topic. A logs filter controls which log entries are exported. The sink must be created within a project, organization, billing account, or folder.
Instance Attribute Summary collapse
-
#destination ⇒ String
Required.
-
#end_time ⇒ String
Optional.
-
#filter ⇒ String
Optional.
-
#include_children ⇒ Boolean
(also: #include_children?)
Optional.
-
#name ⇒ String
Required.
-
#output_version_format ⇒ String
Optional.
-
#start_time ⇒ String
Optional.
-
#writer_identity ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ LogSink
constructor
A new instance of LogSink.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ LogSink
Returns a new instance of LogSink
1110 1111 1112 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1110 def initialize(**args) update!(**args) end |
Instance Attribute Details
#destination ⇒ String
Required. The export destination:
"storage.googleapis.com/[GCS_BUCKET]"
"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]"
"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]"
The sink's writer_identity, set when the sink is created, must have permission
to write to the destination or else the log entries are not exported. For more
information, see Exporting Logs With Sinks.
Corresponds to the JSON property destination
1091 1092 1093 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1091 def destination @destination end |
#end_time ⇒ String
Optional. The time at which this sink will stop exporting log entries. Log
entries are exported only if their timestamp is earlier than the end time. If
this field is not supplied, there is no end time. If both a start time and an
end time are provided, then the end time must be later than the start time.
Corresponds to the JSON property endTime
1108 1109 1110 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1108 def end_time @end_time end |
#filter ⇒ String
Optional. An advanced logs filter. The only exported log entries are those
that are in the resource owning the sink and that match the filter. The filter
must use the log entry format specified by the output_version_format parameter.
For example, in the v2 format:
logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR
Corresponds to the JSON property filter
1100 1101 1102 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1100 def filter @filter end |
#include_children ⇒ Boolean Also known as: include_children?
Optional. This field applies only to sinks owned by organizations and folders.
If the field is false, the default, only the logs owned by the sink's parent
resource are available for export. If the field is true, then logs from all
the projects, folders, and billing accounts contained in the sink's parent
resource are also available for export. Whether a particular log entry from
the children is exported depends on the sink's filter expression. For example,
if this field is true, then the filter resource.type=gce_instance would export
all Compute Engine VM instance log entries from all projects in the sink's
parent. To only export entries from certain child projects, filter on the
project part of the log name:
logName:("projects/test-project1/" OR "projects/test-project2/") AND
resource.type=gce_instance
Corresponds to the JSON property includeChildren
1079 1080 1081 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1079 def include_children @include_children end |
#name ⇒ String
Required. The client-assigned sink identifier, unique within the project.
Example: "my-syslog-errors-to-pubsub". Sink identifiers are limited to 100
characters and can include only the following characters: upper and lower-case
alphanumeric characters, underscores, hyphens, and periods.
Corresponds to the JSON property name
1063 1064 1065 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1063 def name @name end |
#output_version_format ⇒ String
Optional. The log entry format to use for this sink's exported log entries.
The v2 format is used by default. The v1 format is deprecated and should be
used only as part of a migration effort to v2. See Migration to the v2 API.
Corresponds to the JSON property outputVersionFormat
1055 1056 1057 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1055 def output_version_format @output_version_format end |
#start_time ⇒ String
Optional. The time at which this sink will begin exporting log entries. Log
entries are exported only if their timestamp is not earlier than the start
time. The default value of this field is the time the sink is created or
updated.
Corresponds to the JSON property startTime
1048 1049 1050 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1048 def start_time @start_time end |
#writer_identity ⇒ String
Output only. An IAM identity—a service account or group—under
which Stackdriver Logging writes the exported log entries to the sink's
destination. This field is set by sinks.create and sinks.update, based on the
setting of unique_writer_identity in those methods.Until you grant this
identity write-access to the destination, log entry exports from this sink
will fail. For more information, see Granting access for a resource. Consult
the destination service's documentation to determine the appropriate IAM roles
to assign to the identity.
Corresponds to the JSON property writerIdentity
1040 1041 1042 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1040 def writer_identity @writer_identity end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 |
# File 'generated/google/apis/logging_v2beta1/classes.rb', line 1115 def update!(**args) @writer_identity = args[:writer_identity] if args.key?(:writer_identity) @start_time = args[:start_time] if args.key?(:start_time) @output_version_format = args[:output_version_format] if args.key?(:output_version_format) @name = args[:name] if args.key?(:name) @include_children = args[:include_children] if args.key?(:include_children) @destination = args[:destination] if args.key?(:destination) @filter = args[:filter] if args.key?(:filter) @end_time = args[:end_time] if args.key?(:end_time) end |