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 more...
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
1159 1160 1161 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1159 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
1089 1090 1091 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1089 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
1100 1101 1102 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1100 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
1108 1109 1110 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1108 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
1124 1125 1126 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1124 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
1133 1134 1135 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1133 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
1139 1140 1141 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1139 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
1145 1146 1147 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1145 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
1157 1158 1159 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1157 def writer_identity @writer_identity end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 |
# File 'generated/google/apis/logging_v2/classes.rb', line 1164 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 |