Class: Google::Apis::LoggingV2::Settings

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/logging_v2/classes.rb,
lib/google/apis/logging_v2/representations.rb,
lib/google/apis/logging_v2/representations.rb

Overview

Describes the settings associated with a project, folder, organization, or billing account.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Settings

Returns a new instance of Settings.



3752
3753
3754
# File 'lib/google/apis/logging_v2/classes.rb', line 3752

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#default_sink_configGoogle::Apis::LoggingV2::DefaultSinkConfig

Describes the custom _Default sink configuration that is used to override the built-in _Default sink configuration in newly created resource containers, such as projects or folders. Corresponds to the JSON property defaultSinkConfig



3695
3696
3697
# File 'lib/google/apis/logging_v2/classes.rb', line 3695

def default_sink_config
  @default_sink_config
end

#disable_default_sinkBoolean Also known as: disable_default_sink?

Optional. If set to true, the _Default sink in newly created projects and folders will created in a disabled state. This can be used to automatically disable log storage if there is already an aggregated sink configured in the hierarchy. The _Default sink can be re-enabled manually if needed. Corresponds to the JSON property disableDefaultSink

Returns:

  • (Boolean)


3703
3704
3705
# File 'lib/google/apis/logging_v2/classes.rb', line 3703

def disable_default_sink
  @disable_default_sink
end

#kms_key_nameString

Optional. The resource name for the configured Cloud KMS key.KMS key name format: "projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/ cryptoKeys/[KEY]" For example:"projects/my-project/locations/us-central1/ keyRings/my-ring/cryptoKeys/my-key"To enable CMEK, set this field to a valid kms_key_name for which the associated service account has the required roles/ cloudkms.cryptoKeyEncrypterDecrypter role assigned for the key.The Cloud KMS key used by the Log Router can be updated by changing the kms_key_name to a new valid key name.To disable CMEK for the Log Router, set this field to an empty string.See Enabling CMEK for Log Router (https://cloud.google.com/ logging/docs/routing/managed-encryption) for more information. Corresponds to the JSON property kmsKeyName

Returns:

  • (String)


3718
3719
3720
# File 'lib/google/apis/logging_v2/classes.rb', line 3718

def kms_key_name
  @kms_key_name
end

#kms_service_account_idString

Output only. The service account that will be used by the Log Router to access your Cloud KMS key.Before enabling CMEK, you must first assign the role roles/ cloudkms.cryptoKeyEncrypterDecrypter to the service account that will be used to access your Cloud KMS key. Use GetSettings to obtain the service account ID. See Enabling CMEK for Log Router (https://cloud.google.com/logging/docs/ routing/managed-encryption) for more information. Corresponds to the JSON property kmsServiceAccountId

Returns:

  • (String)


3728
3729
3730
# File 'lib/google/apis/logging_v2/classes.rb', line 3728

def 
  @kms_service_account_id
end

#logging_service_account_idString

Output only. The service account for the given resource container, such as project or folder. Log sinks use this service account as their writer_identity if no custom service account is provided in the request when calling the create sink method. Corresponds to the JSON property loggingServiceAccountId

Returns:

  • (String)


3736
3737
3738
# File 'lib/google/apis/logging_v2/classes.rb', line 3736

def 
  @logging_service_account_id
end

#nameString

Output only. The resource name of the settings. Corresponds to the JSON property name

Returns:

  • (String)


3741
3742
3743
# File 'lib/google/apis/logging_v2/classes.rb', line 3741

def name
  @name
end

#storage_locationString

Optional. The storage location for the _Default and _Required log buckets of newly created projects and folders, unless the storage location is explicitly provided.Example value: europe-west1.Note: this setting does not affect the location of resources where a location is explicitly provided when created, such as custom log buckets. Corresponds to the JSON property storageLocation

Returns:

  • (String)


3750
3751
3752
# File 'lib/google/apis/logging_v2/classes.rb', line 3750

def storage_location
  @storage_location
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3757
3758
3759
3760
3761
3762
3763
3764
3765
# File 'lib/google/apis/logging_v2/classes.rb', line 3757

def update!(**args)
  @default_sink_config = args[:default_sink_config] if args.key?(:default_sink_config)
  @disable_default_sink = args[:disable_default_sink] if args.key?(:disable_default_sink)
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
  @kms_service_account_id = args[:kms_service_account_id] if args.key?(:kms_service_account_id)
  @logging_service_account_id = args[:logging_service_account_id] if args.key?(:logging_service_account_id)
  @name = args[:name] if args.key?(:name)
  @storage_location = args[:storage_location] if args.key?(:storage_location)
end