Class: Google::Api::Distribution::BucketOptions
- Inherits:
-
Object
- Object
- Google::Api::Distribution::BucketOptions
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/api/distribution.rb
Overview
BucketOptions
describes the bucket boundaries used to create a histogram
for the distribution. The buckets can be in a linear sequence, an
exponential sequence, or each bucket can be specified explicitly.
BucketOptions
does not include the number of values in each bucket.
A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i > 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.
Defined Under Namespace
Classes: Explicit, Exponential, Linear
Instance Attribute Summary collapse
-
#explicit_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Explicit
The explicit buckets.
-
#exponential_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Exponential
The exponential buckets.
-
#linear_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Linear
The linear bucket.
Instance Attribute Details
#explicit_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Explicit
Returns The explicit buckets.
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'proto_docs/google/api/distribution.rb', line 124 class BucketOptions include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Specifies a linear sequence of buckets that all have the same width # (except overflow and underflow). Each bucket represents a constant # absolute uncertainty on the specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): offset + (width * i). # # Lower bound (1 <= i < N): offset + (width * (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] width # @return [::Float] # Must be greater than 0. # @!attribute [rw] offset # @return [::Float] # Lower bound of the first bucket. class Linear include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies an exponential sequence of buckets that have a width that is # proportional to the value of the lower bound. Each bucket represents a # constant relative uncertainty on a specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). # # Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] growth_factor # @return [::Float] # Must be greater than 1. # @!attribute [rw] scale # @return [::Float] # Must be greater than 0. class Exponential include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies a set of buckets with arbitrary widths. # # There are `size(bounds) + 1` (= N) buckets. Bucket `i` has the following # boundaries: # # Upper bound (0 <= i < N-1): bounds[i] # Lower bound (1 <= i < N); bounds[i - 1] # # The `bounds` field must contain at least one element. If `bounds` has # only one element, then there are no finite buckets, and that single # element is the common boundary of the overflow and underflow buckets. # @!attribute [rw] bounds # @return [::Array<::Float>] # The values must be monotonically increasing. class Explicit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end |
#exponential_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Exponential
Returns The exponential buckets.
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'proto_docs/google/api/distribution.rb', line 124 class BucketOptions include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Specifies a linear sequence of buckets that all have the same width # (except overflow and underflow). Each bucket represents a constant # absolute uncertainty on the specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): offset + (width * i). # # Lower bound (1 <= i < N): offset + (width * (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] width # @return [::Float] # Must be greater than 0. # @!attribute [rw] offset # @return [::Float] # Lower bound of the first bucket. class Linear include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies an exponential sequence of buckets that have a width that is # proportional to the value of the lower bound. Each bucket represents a # constant relative uncertainty on a specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). # # Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] growth_factor # @return [::Float] # Must be greater than 1. # @!attribute [rw] scale # @return [::Float] # Must be greater than 0. class Exponential include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies a set of buckets with arbitrary widths. # # There are `size(bounds) + 1` (= N) buckets. Bucket `i` has the following # boundaries: # # Upper bound (0 <= i < N-1): bounds[i] # Lower bound (1 <= i < N); bounds[i - 1] # # The `bounds` field must contain at least one element. If `bounds` has # only one element, then there are no finite buckets, and that single # element is the common boundary of the overflow and underflow buckets. # @!attribute [rw] bounds # @return [::Array<::Float>] # The values must be monotonically increasing. class Explicit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end |
#linear_buckets ⇒ ::Google::Api::Distribution::BucketOptions::Linear
Returns The linear bucket.
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'proto_docs/google/api/distribution.rb', line 124 class BucketOptions include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Specifies a linear sequence of buckets that all have the same width # (except overflow and underflow). Each bucket represents a constant # absolute uncertainty on the specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): offset + (width * i). # # Lower bound (1 <= i < N): offset + (width * (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] width # @return [::Float] # Must be greater than 0. # @!attribute [rw] offset # @return [::Float] # Lower bound of the first bucket. class Linear include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies an exponential sequence of buckets that have a width that is # proportional to the value of the lower bound. Each bucket represents a # constant relative uncertainty on a specific value in the bucket. # # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the # following boundaries: # # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). # # Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)). # @!attribute [rw] num_finite_buckets # @return [::Integer] # Must be greater than 0. # @!attribute [rw] growth_factor # @return [::Float] # Must be greater than 1. # @!attribute [rw] scale # @return [::Float] # Must be greater than 0. class Exponential include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Specifies a set of buckets with arbitrary widths. # # There are `size(bounds) + 1` (= N) buckets. Bucket `i` has the following # boundaries: # # Upper bound (0 <= i < N-1): bounds[i] # Lower bound (1 <= i < N); bounds[i - 1] # # The `bounds` field must contain at least one element. If `bounds` has # only one element, then there are no finite buckets, and that single # element is the common boundary of the overflow and underflow buckets. # @!attribute [rw] bounds # @return [::Array<::Float>] # The values must be monotonically increasing. class Explicit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end |