Class: Google::Apis::DatastreamV1alpha1::QuotaFailureViolation
- Inherits:
-
Object
- Object
- Google::Apis::DatastreamV1alpha1::QuotaFailureViolation
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/datastream_v1alpha1/classes.rb,
lib/google/apis/datastream_v1alpha1/representations.rb,
lib/google/apis/datastream_v1alpha1/representations.rb
Overview
A message type used to describe a single quota violation. For example, a daily quota or a custom quota that was exceeded.
Instance Attribute Summary collapse
-
#api_service ⇒ String
The API Service from which the
QuotaFailure.Violationorginates. -
#description ⇒ String
A description of how the quota check failed.
-
#future_quota_value ⇒ Fixnum
The new quota value being rolled out at the time of the violation.
-
#quota_dimensions ⇒ Hash<String,String>
The dimensions of the violated quota.
-
#quota_id ⇒ String
The id of the violated quota.
-
#quota_metric ⇒ String
The metric of the violated quota.
-
#quota_value ⇒ Fixnum
The enforced quota value at the time of the
QuotaFailure. -
#subject ⇒ String
The subject on which the quota check failed.
Instance Method Summary collapse
-
#initialize(**args) ⇒ QuotaFailureViolation
constructor
A new instance of QuotaFailureViolation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ QuotaFailureViolation
Returns a new instance of QuotaFailureViolation.
1986 1987 1988 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1986 def initialize(**args) update!(**args) end |
Instance Attribute Details
#api_service ⇒ String
The API Service from which the QuotaFailure.Violation orginates. In some
cases, Quota issues originate from an API Service other than the one that was
called. In other words, a dependency of the called API Service could be the
cause of the QuotaFailure, and this field would have the dependency API
service name. For example, if the called API is Kubernetes Engine API (
container.googleapis.com), and a quota violation occurs in the Kubernetes
Engine API itself, this field would be "container.googleapis.com". On the
other hand, if the quota violation occurs when the Kubernetes Engine API
creates VMs in the Compute Engine API (compute.googleapis.com), this field
would be "compute.googleapis.com".
Corresponds to the JSON property apiService
1924 1925 1926 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1924 def api_service @api_service end |
#description ⇒ String
A description of how the quota check failed. Clients can use this description
to find more about the quota configuration in the service's public
documentation, or find the relevant quota limit to adjust through developer
console. For example: "Service disabled" or "Daily Limit for read operations
exceeded".
Corresponds to the JSON property description
1933 1934 1935 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1933 def description @description end |
#future_quota_value ⇒ Fixnum
The new quota value being rolled out at the time of the violation. At the
completion of the rollout, this value will be enforced in place of quota_value.
If no rollout is in progress at the time of the violation, this field is not
set. For example, if at the time of the violation a rollout is in progress
changing the number of CPUs quota from 10 to 20, 20 would be the value of this
field.
Corresponds to the JSON property futureQuotaValue
1943 1944 1945 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1943 def future_quota_value @future_quota_value end |
#quota_dimensions ⇒ Hash<String,String>
The dimensions of the violated quota. Every non-global quota is enforced on a
set of dimensions. While quota metric defines what to count, the dimensions
specify for what aspects the counter should be increased. For example, the
quota "CPUs per region per VM family" enforces a limit on the metric "compute.
googleapis.com/cpus_per_vm_family" on dimensions "region" and "vm_family". And
if the violation occurred in region "us-central1" and for VM family "n1", the
quota_dimensions would be, "region": "us-central1", "vm_family": "n1",
When a quota is enforced globally, the quota_dimensions would always be empty.
Corresponds to the JSON property quotaDimensions
1955 1956 1957 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1955 def quota_dimensions @quota_dimensions end |
#quota_id ⇒ String
The id of the violated quota. Also know as "limit name", this is the unique
identifier of a quota in the context of an API service. For example, "CPUS-PER-
VM-FAMILY-per-project-region".
Corresponds to the JSON property quotaId
1962 1963 1964 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1962 def quota_id @quota_id end |
#quota_metric ⇒ String
The metric of the violated quota. A quota metric is a named counter to measure
usage, such as API requests or CPUs. When an activity occurs in a service,
such as Virtual Machine allocation, one or more quota metrics may be affected.
For example, "compute.googleapis.com/cpus_per_vm_family", "storage.googleapis.
com/internet_egress_bandwidth".
Corresponds to the JSON property quotaMetric
1971 1972 1973 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1971 def quota_metric @quota_metric end |
#quota_value ⇒ Fixnum
The enforced quota value at the time of the QuotaFailure. For example, if
the enforced quota value at the time of the QuotaFailure on the number of
CPUs is "10", then the value of this field would reflect this quantity.
Corresponds to the JSON property quotaValue
1978 1979 1980 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1978 def quota_value @quota_value end |
#subject ⇒ String
The subject on which the quota check failed. For example, "clientip:" or "
project:".
Corresponds to the JSON property subject
1984 1985 1986 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1984 def subject @subject end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 |
# File 'lib/google/apis/datastream_v1alpha1/classes.rb', line 1991 def update!(**args) @api_service = args[:api_service] if args.key?(:api_service) @description = args[:description] if args.key?(:description) @future_quota_value = args[:future_quota_value] if args.key?(:future_quota_value) @quota_dimensions = args[:quota_dimensions] if args.key?(:quota_dimensions) @quota_id = args[:quota_id] if args.key?(:quota_id) @quota_metric = args[:quota_metric] if args.key?(:quota_metric) @quota_value = args[:quota_value] if args.key?(:quota_value) @subject = args[:subject] if args.key?(:subject) end |