Class: Google::Apis::LoggingV2::LogSink
- Inherits:
-
Object
- Object
- Google::Apis::LoggingV2::LogSink
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/logging_v2/classes.rb,
generated/google/apis/logging_v2/representations.rb,
generated/google/apis/logging_v2/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
-
#create_time ⇒ String
Output only.
-
#destination ⇒ String
Required.
-
#filter ⇒ String
Optional.
-
#include_children ⇒ Boolean
(also: #include_children?)
Optional.
-
#name ⇒ String
Required.
-
#output_version_format ⇒ String
Deprecated.
-
#update_time ⇒ String
Output only.
-
#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
1161 1162 1163 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1161 def initialize(**args) update!(**args) end |
Instance Attribute Details
#create_time ⇒ String
Output only. The creation timestamp of the sink.This field may not be present
for older sinks.
Corresponds to the JSON property createTime
1091 1092 1093 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1091 def create_time @create_time end |
#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
1102 1103 1104 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1102 def destination @destination 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. For
example:
logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR
Corresponds to the JSON property filter
1110 1111 1112 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1110 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
1126 1127 1128 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1126 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
1135 1136 1137 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1135 def name @name end |
#output_version_format ⇒ String
Deprecated. The log entry format to use for this sink's exported log entries.
The v2 format is used by default and cannot be changed.
Corresponds to the JSON property outputVersionFormat
1141 1142 1143 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1141 def output_version_format @output_version_format end |
#update_time ⇒ String
Output only. The last update timestamp of the sink.This field may not be
present for older sinks.
Corresponds to the JSON property updateTime
1147 1148 1149 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1147 def update_time @update_time end |
#writer_identity ⇒ String
Output only. An IAM identity—a service account or group—under
which Logging writes the exported log entries to the sink's destination. This
field is set by sinks.create and sinks.update based on the value 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
1159 1160 1161 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1159 def writer_identity @writer_identity end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1166 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @destination = args[:destination] if args.key?(:destination) @filter = args[:filter] if args.key?(:filter) @include_children = args[:include_children] if args.key?(:include_children) @name = args[:name] if args.key?(:name) @output_version_format = args[:output_version_format] if args.key?(:output_version_format) @update_time = args[:update_time] if args.key?(:update_time) @writer_identity = args[:writer_identity] if args.key?(:writer_identity) end |