Class LogSink

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
com.google.logging.v2.LogSink
All Implemented Interfaces:
LogSinkOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

public final class LogSink extends com.google.protobuf.GeneratedMessageV3 implements LogSinkOrBuilder
 Describes a sink used to export log entries to one of the following
 destinations in any project: a Cloud Storage bucket, a BigQuery dataset, a
 Pub/Sub topic or a Cloud Logging log bucket. A logs filter controls which log
 entries are exported. The sink must be created within a project,
 organization, billing account, or folder.
 
Protobuf type google.logging.v2.LogSink
See Also:
  • Field Details

    • NAME_FIELD_NUMBER

      public static final int NAME_FIELD_NUMBER
      See Also:
    • DESTINATION_FIELD_NUMBER

      public static final int DESTINATION_FIELD_NUMBER
      See Also:
    • FILTER_FIELD_NUMBER

      public static final int FILTER_FIELD_NUMBER
      See Also:
    • DESCRIPTION_FIELD_NUMBER

      public static final int DESCRIPTION_FIELD_NUMBER
      See Also:
    • DISABLED_FIELD_NUMBER

      public static final int DISABLED_FIELD_NUMBER
      See Also:
    • EXCLUSIONS_FIELD_NUMBER

      public static final int EXCLUSIONS_FIELD_NUMBER
      See Also:
    • OUTPUT_VERSION_FORMAT_FIELD_NUMBER

      public static final int OUTPUT_VERSION_FORMAT_FIELD_NUMBER
      See Also:
    • WRITER_IDENTITY_FIELD_NUMBER

      public static final int WRITER_IDENTITY_FIELD_NUMBER
      See Also:
    • INCLUDE_CHILDREN_FIELD_NUMBER

      public static final int INCLUDE_CHILDREN_FIELD_NUMBER
      See Also:
    • BIGQUERY_OPTIONS_FIELD_NUMBER

      public static final int BIGQUERY_OPTIONS_FIELD_NUMBER
      See Also:
    • CREATE_TIME_FIELD_NUMBER

      public static final int CREATE_TIME_FIELD_NUMBER
      See Also:
    • UPDATE_TIME_FIELD_NUMBER

      public static final int UPDATE_TIME_FIELD_NUMBER
      See Also:
  • Method Details

    • newInstance

      protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
      Overrides:
      newInstance in class com.google.protobuf.GeneratedMessageV3
    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
    • getOptionsCase

      public LogSink.OptionsCase getOptionsCase()
      Specified by:
      getOptionsCase in interface LogSinkOrBuilder
    • getName

      public String getName()
       Required. The client-assigned sink identifier, unique within the project.
      
       For 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.
       First character has to be alphanumeric.
       
      string name = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getName in interface LogSinkOrBuilder
      Returns:
      The name.
    • getNameBytes

      public com.google.protobuf.ByteString getNameBytes()
       Required. The client-assigned sink identifier, unique within the project.
      
       For 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.
       First character has to be alphanumeric.
       
      string name = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getNameBytes in interface LogSinkOrBuilder
      Returns:
      The bytes for name.
    • getDestination

      public String getDestination()
       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](https://cloud.google.com/logging/docs/api/tasks/exporting-logs).
       
      string destination = 3 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
      Specified by:
      getDestination in interface LogSinkOrBuilder
      Returns:
      The destination.
    • getDestinationBytes

      public com.google.protobuf.ByteString getDestinationBytes()
       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](https://cloud.google.com/logging/docs/api/tasks/exporting-logs).
       
      string destination = 3 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
      Specified by:
      getDestinationBytes in interface LogSinkOrBuilder
      Returns:
      The bytes for destination.
    • getFilter

      public String getFilter()
       Optional. An [advanced logs
       filter](https://cloud.google.com/logging/docs/view/advanced-queries). 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`
       
      string filter = 5 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getFilter in interface LogSinkOrBuilder
      Returns:
      The filter.
    • getFilterBytes

      public com.google.protobuf.ByteString getFilterBytes()
       Optional. An [advanced logs
       filter](https://cloud.google.com/logging/docs/view/advanced-queries). 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`
       
      string filter = 5 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getFilterBytes in interface LogSinkOrBuilder
      Returns:
      The bytes for filter.
    • getDescription

      public String getDescription()
       Optional. A description of this sink.
      
       The maximum length of the description is 8000 characters.
       
      string description = 18 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDescription in interface LogSinkOrBuilder
      Returns:
      The description.
    • getDescriptionBytes

      public com.google.protobuf.ByteString getDescriptionBytes()
       Optional. A description of this sink.
      
       The maximum length of the description is 8000 characters.
       
      string description = 18 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDescriptionBytes in interface LogSinkOrBuilder
      Returns:
      The bytes for description.
    • getDisabled

      public boolean getDisabled()
       Optional. If set to true, then this sink is disabled and it does not export
       any log entries.
       
      bool disabled = 19 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDisabled in interface LogSinkOrBuilder
      Returns:
      The disabled.
    • getExclusionsList

      public List<LogExclusion> getExclusionsList()
       Optional. Log entries that match any of these exclusion filters will not be
       exported.
      
       If a log entry is matched by both `filter` and one of `exclusion_filters`
       it will not be exported.
       
      repeated .google.logging.v2.LogExclusion exclusions = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExclusionsList in interface LogSinkOrBuilder
    • getExclusionsOrBuilderList

      public List<? extends LogExclusionOrBuilder> getExclusionsOrBuilderList()
       Optional. Log entries that match any of these exclusion filters will not be
       exported.
      
       If a log entry is matched by both `filter` and one of `exclusion_filters`
       it will not be exported.
       
      repeated .google.logging.v2.LogExclusion exclusions = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExclusionsOrBuilderList in interface LogSinkOrBuilder
    • getExclusionsCount

      public int getExclusionsCount()
       Optional. Log entries that match any of these exclusion filters will not be
       exported.
      
       If a log entry is matched by both `filter` and one of `exclusion_filters`
       it will not be exported.
       
      repeated .google.logging.v2.LogExclusion exclusions = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExclusionsCount in interface LogSinkOrBuilder
    • getExclusions

      public LogExclusion getExclusions(int index)
       Optional. Log entries that match any of these exclusion filters will not be
       exported.
      
       If a log entry is matched by both `filter` and one of `exclusion_filters`
       it will not be exported.
       
      repeated .google.logging.v2.LogExclusion exclusions = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExclusions in interface LogSinkOrBuilder
    • getExclusionsOrBuilder

      public LogExclusionOrBuilder getExclusionsOrBuilder(int index)
       Optional. Log entries that match any of these exclusion filters will not be
       exported.
      
       If a log entry is matched by both `filter` and one of `exclusion_filters`
       it will not be exported.
       
      repeated .google.logging.v2.LogExclusion exclusions = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExclusionsOrBuilder in interface LogSinkOrBuilder
    • getOutputVersionFormatValue

      @Deprecated public int getOutputVersionFormatValue()
      Deprecated.
      google.logging.v2.LogSink.output_version_format is deprecated. See google/logging/v2/logging_config.proto;l=1000
       Deprecated. This field is unused.
       
      .google.logging.v2.LogSink.VersionFormat output_version_format = 6 [deprecated = true];
      Specified by:
      getOutputVersionFormatValue in interface LogSinkOrBuilder
      Returns:
      The enum numeric value on the wire for outputVersionFormat.
    • getOutputVersionFormat

      @Deprecated public LogSink.VersionFormat getOutputVersionFormat()
      Deprecated.
      google.logging.v2.LogSink.output_version_format is deprecated. See google/logging/v2/logging_config.proto;l=1000
       Deprecated. This field is unused.
       
      .google.logging.v2.LogSink.VersionFormat output_version_format = 6 [deprecated = true];
      Specified by:
      getOutputVersionFormat in interface LogSinkOrBuilder
      Returns:
      The outputVersionFormat.
    • getWriterIdentity

      public String getWriterIdentity()
       Output only. An IAM identity&mdash;a service account or group&mdash;under
       which Cloud Logging writes the exported log entries to the sink's
       destination. This field is either set by specifying
       `custom_writer_identity` or set automatically by
       [sinks.create][google.logging.v2.ConfigServiceV2.CreateSink] and
       [sinks.update][google.logging.v2.ConfigServiceV2.UpdateSink] 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](https://cloud.google.com/iam/docs/granting-roles-to-service-accounts#granting_access_to_a_service_account_for_a_resource).
       Consult the destination service's documentation to determine the
       appropriate IAM roles to assign to the identity.
      
       Sinks that have a destination that is a log bucket in the same project as
       the sink cannot have a writer_identity and no additional permissions are
       required.
       
      string writer_identity = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getWriterIdentity in interface LogSinkOrBuilder
      Returns:
      The writerIdentity.
    • getWriterIdentityBytes

      public com.google.protobuf.ByteString getWriterIdentityBytes()
       Output only. An IAM identity&mdash;a service account or group&mdash;under
       which Cloud Logging writes the exported log entries to the sink's
       destination. This field is either set by specifying
       `custom_writer_identity` or set automatically by
       [sinks.create][google.logging.v2.ConfigServiceV2.CreateSink] and
       [sinks.update][google.logging.v2.ConfigServiceV2.UpdateSink] 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](https://cloud.google.com/iam/docs/granting-roles-to-service-accounts#granting_access_to_a_service_account_for_a_resource).
       Consult the destination service's documentation to determine the
       appropriate IAM roles to assign to the identity.
      
       Sinks that have a destination that is a log bucket in the same project as
       the sink cannot have a writer_identity and no additional permissions are
       required.
       
      string writer_identity = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getWriterIdentityBytes in interface LogSinkOrBuilder
      Returns:
      The bytes for writerIdentity.
    • getIncludeChildren

      public boolean getIncludeChildren()
       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
       log entries 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
       
      bool include_children = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getIncludeChildren in interface LogSinkOrBuilder
      Returns:
      The includeChildren.
    • hasBigqueryOptions

      public boolean hasBigqueryOptions()
       Optional. Options that affect sinks exporting data to BigQuery.
       
      .google.logging.v2.BigQueryOptions bigquery_options = 12 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasBigqueryOptions in interface LogSinkOrBuilder
      Returns:
      Whether the bigqueryOptions field is set.
    • getBigqueryOptions

      public BigQueryOptions getBigqueryOptions()
       Optional. Options that affect sinks exporting data to BigQuery.
       
      .google.logging.v2.BigQueryOptions bigquery_options = 12 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getBigqueryOptions in interface LogSinkOrBuilder
      Returns:
      The bigqueryOptions.
    • getBigqueryOptionsOrBuilder

      public BigQueryOptionsOrBuilder getBigqueryOptionsOrBuilder()
       Optional. Options that affect sinks exporting data to BigQuery.
       
      .google.logging.v2.BigQueryOptions bigquery_options = 12 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getBigqueryOptionsOrBuilder in interface LogSinkOrBuilder
    • hasCreateTime

      public boolean hasCreateTime()
       Output only. The creation timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp create_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      hasCreateTime in interface LogSinkOrBuilder
      Returns:
      Whether the createTime field is set.
    • getCreateTime

      public com.google.protobuf.Timestamp getCreateTime()
       Output only. The creation timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp create_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getCreateTime in interface LogSinkOrBuilder
      Returns:
      The createTime.
    • getCreateTimeOrBuilder

      public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder()
       Output only. The creation timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp create_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getCreateTimeOrBuilder in interface LogSinkOrBuilder
    • hasUpdateTime

      public boolean hasUpdateTime()
       Output only. The last update timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      hasUpdateTime in interface LogSinkOrBuilder
      Returns:
      Whether the updateTime field is set.
    • getUpdateTime

      public com.google.protobuf.Timestamp getUpdateTime()
       Output only. The last update timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getUpdateTime in interface LogSinkOrBuilder
      Returns:
      The updateTime.
    • getUpdateTimeOrBuilder

      public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder()
       Output only. The last update timestamp of the sink.
      
       This field may not be present for older sinks.
       
      .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getUpdateTimeOrBuilder in interface LogSinkOrBuilder
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessageV3
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessageV3
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static LogSink parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static LogSink parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static LogSink parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static LogSink parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static LogSink parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static LogSink parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static LogSink parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public LogSink.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static LogSink.Builder newBuilder()
    • newBuilder

      public static LogSink.Builder newBuilder(LogSink prototype)
    • toBuilder

      public LogSink.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected LogSink.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
      Specified by:
      newBuilderForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstance

      public static LogSink getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<LogSink> parser()
    • getParserForType

      public com.google.protobuf.Parser<LogSink> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstanceForType

      public LogSink getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder