Package servicecontrol
Overview ▹
Index ▹
Variables
var CheckError_Code_name = map[int32]string{
0: "ERROR_CODE_UNSPECIFIED",
5: "NOT_FOUND",
7: "PERMISSION_DENIED",
8: "RESOURCE_EXHAUSTED",
104: "SERVICE_NOT_ACTIVATED",
107: "BILLING_DISABLED",
108: "PROJECT_DELETED",
114: "PROJECT_INVALID",
109: "IP_ADDRESS_BLOCKED",
110: "REFERER_BLOCKED",
111: "CLIENT_APP_BLOCKED",
105: "API_KEY_INVALID",
112: "API_KEY_EXPIRED",
113: "API_KEY_NOT_FOUND",
300: "NAMESPACE_LOOKUP_UNAVAILABLE",
301: "SERVICE_STATUS_UNAVAILABLE",
302: "BILLING_STATUS_UNAVAILABLE",
}
var CheckError_Code_value = map[string]int32{
"ERROR_CODE_UNSPECIFIED": 0,
"NOT_FOUND": 5,
"PERMISSION_DENIED": 7,
"RESOURCE_EXHAUSTED": 8,
"SERVICE_NOT_ACTIVATED": 104,
"BILLING_DISABLED": 107,
"PROJECT_DELETED": 108,
"PROJECT_INVALID": 114,
"IP_ADDRESS_BLOCKED": 109,
"REFERER_BLOCKED": 110,
"CLIENT_APP_BLOCKED": 111,
"API_KEY_INVALID": 105,
"API_KEY_EXPIRED": 112,
"API_KEY_NOT_FOUND": 113,
"NAMESPACE_LOOKUP_UNAVAILABLE": 300,
"SERVICE_STATUS_UNAVAILABLE": 301,
"BILLING_STATUS_UNAVAILABLE": 302,
}
var Operation_Importance_name = map[int32]string{
0: "LOW",
1: "HIGH",
}
var Operation_Importance_value = map[string]int32{
"LOW": 0,
"HIGH": 1,
}
func RegisterServiceControllerServer ¶
func RegisterServiceControllerServer(s *grpc.Server, srv ServiceControllerServer)
type CheckError ¶
Defines the errors to be returned in [google.api.servicecontrol.v1.CheckResponse.check_errors][google.api.servicecontrol.v1.CheckResponse.check_errors].
type CheckError struct {
// The error code.
Code CheckError_Code `protobuf:"varint,1,opt,name=code,enum=google.api.servicecontrol.v1.CheckError_Code" json:"code,omitempty"`
// Free-form text providing details on the error cause of the error.
Detail string `protobuf:"bytes,2,opt,name=detail" json:"detail,omitempty"`
}
func (*CheckError) Descriptor ¶
func (*CheckError) Descriptor() ([]byte, []int)
func (*CheckError) GetCode ¶
func (m *CheckError) GetCode() CheckError_Code
func (*CheckError) GetDetail ¶
func (m *CheckError) GetDetail() string
func (*CheckError) ProtoMessage ¶
func (*CheckError) ProtoMessage()
func (*CheckError) Reset ¶
func (m *CheckError) Reset()
func (*CheckError) String ¶
func (m *CheckError) String() string
type CheckError_Code ¶
Error codes for Check responses.
type CheckError_Code int32
const (
// This is never used in `CheckResponse`.
CheckError_ERROR_CODE_UNSPECIFIED CheckError_Code = 0
// The consumer's project id was not found.
// Same as [google.rpc.Code.NOT_FOUND][].
CheckError_NOT_FOUND CheckError_Code = 5
// The consumer doesn't have access to the specified resource.
// Same as [google.rpc.Code.PERMISSION_DENIED][].
CheckError_PERMISSION_DENIED CheckError_Code = 7
// Quota check failed. Same as [google.rpc.Code.RESOURCE_EXHAUSTED][].
CheckError_RESOURCE_EXHAUSTED CheckError_Code = 8
// The consumer hasn't activated the service.
CheckError_SERVICE_NOT_ACTIVATED CheckError_Code = 104
// The consumer cannot access the service because billing is disabled.
CheckError_BILLING_DISABLED CheckError_Code = 107
// The consumer's project has been marked as deleted (soft deletion).
CheckError_PROJECT_DELETED CheckError_Code = 108
// The consumer's project number or id does not represent a valid project.
CheckError_PROJECT_INVALID CheckError_Code = 114
// The IP address of the consumer is invalid for the specific consumer
// project.
CheckError_IP_ADDRESS_BLOCKED CheckError_Code = 109
// The referer address of the consumer request is invalid for the specific
// consumer project.
CheckError_REFERER_BLOCKED CheckError_Code = 110
// The client application of the consumer request is invalid for the
// specific consumer project.
CheckError_CLIENT_APP_BLOCKED CheckError_Code = 111
// The consumer's API key is invalid.
CheckError_API_KEY_INVALID CheckError_Code = 105
// The consumer's API Key has expired.
CheckError_API_KEY_EXPIRED CheckError_Code = 112
// The consumer's API Key was not found in config record.
CheckError_API_KEY_NOT_FOUND CheckError_Code = 113
// The backend server for looking up project id/number is unavailable.
CheckError_NAMESPACE_LOOKUP_UNAVAILABLE CheckError_Code = 300
// The backend server for checking service status is unavailable.
CheckError_SERVICE_STATUS_UNAVAILABLE CheckError_Code = 301
// The backend server for checking billing status is unavailable.
CheckError_BILLING_STATUS_UNAVAILABLE CheckError_Code = 302
)
func (CheckError_Code) EnumDescriptor ¶
func (CheckError_Code) EnumDescriptor() ([]byte, []int)
func (CheckError_Code) String ¶
func (x CheckError_Code) String() string
type CheckRequest ¶
Request message for the Check method.
type CheckRequest struct {
// The service name as specified in its service configuration. For example,
// `"pubsub.googleapis.com"`.
//
// See [google.api.Service][google.api.Service] for the definition of a service name.
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName" json:"service_name,omitempty"`
// The operation to be checked.
Operation *Operation `protobuf:"bytes,2,opt,name=operation" json:"operation,omitempty"`
// Specifies which version of service configuration should be used to process
// the request.
//
// If unspecified or no matching version can be found, the
// latest one will be used.
ServiceConfigId string `protobuf:"bytes,4,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
}
func (*CheckRequest) Descriptor ¶
func (*CheckRequest) Descriptor() ([]byte, []int)
func (*CheckRequest) GetOperation ¶
func (m *CheckRequest) GetOperation() *Operation
func (*CheckRequest) GetServiceConfigId ¶
func (m *CheckRequest) GetServiceConfigId() string
func (*CheckRequest) GetServiceName ¶
func (m *CheckRequest) GetServiceName() string
func (*CheckRequest) ProtoMessage ¶
func (*CheckRequest) ProtoMessage()
func (*CheckRequest) Reset ¶
func (m *CheckRequest) Reset()
func (*CheckRequest) String ¶
func (m *CheckRequest) String() string
type CheckResponse ¶
Response message for the Check method.
type CheckResponse struct {
// The same operation_id value used in the CheckRequest.
// Used for logging and diagnostics purposes.
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
// Indicate the decision of the check.
//
// If no check errors are present, the service should process the operation.
// Otherwise the service should use the list of errors to determine the
// appropriate action.
CheckErrors []*CheckError `protobuf:"bytes,2,rep,name=check_errors,json=checkErrors" json:"check_errors,omitempty"`
// The actual config id used to process the request.
ServiceConfigId string `protobuf:"bytes,5,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
}
func (*CheckResponse) Descriptor ¶
func (*CheckResponse) Descriptor() ([]byte, []int)
func (*CheckResponse) GetCheckErrors ¶
func (m *CheckResponse) GetCheckErrors() []*CheckError
func (*CheckResponse) GetOperationId ¶
func (m *CheckResponse) GetOperationId() string
func (*CheckResponse) GetServiceConfigId ¶
func (m *CheckResponse) GetServiceConfigId() string
func (*CheckResponse) ProtoMessage ¶
func (*CheckResponse) ProtoMessage()
func (*CheckResponse) Reset ¶
func (m *CheckResponse) Reset()
func (*CheckResponse) String ¶
func (m *CheckResponse) String() string
type Distribution ¶
Distribution represents a frequency distribution of double-valued sample points. It contains the size of the population of sample points plus additional optional information:
- the arithmetic mean of the samples - the minimum and maximum of the samples - the sum-squared-deviation of the samples, used to compute variance - a histogram of the values of the sample points
type Distribution struct {
// The total number of samples in the distribution. Must be >= 0.
Count int64 `protobuf:"varint,1,opt,name=count" json:"count,omitempty"`
// The arithmetic mean of the samples in the distribution. If `count` is
// zero then this field must be zero.
Mean float64 `protobuf:"fixed64,2,opt,name=mean" json:"mean,omitempty"`
// The minimum of the population of values. Ignored if `count` is zero.
Minimum float64 `protobuf:"fixed64,3,opt,name=minimum" json:"minimum,omitempty"`
// The maximum of the population of values. Ignored if `count` is zero.
Maximum float64 `protobuf:"fixed64,4,opt,name=maximum" json:"maximum,omitempty"`
// The sum of squared deviations from the mean:
// Sum[i=1..count]((x_i - mean)^2)
// where each x_i is a sample values. If `count` is zero then this field
// must be zero, otherwise validation of the request fails.
SumOfSquaredDeviation float64 `protobuf:"fixed64,5,opt,name=sum_of_squared_deviation,json=sumOfSquaredDeviation" json:"sum_of_squared_deviation,omitempty"`
// The number of samples in each histogram bucket. `bucket_counts` are
// optional. If present, they must sum to the `count` value.
//
// The buckets are defined below in `bucket_option`. There are N buckets.
// `bucket_counts[0]` is the number of samples in the underflow bucket.
// `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
// in each of the finite buckets. And `bucket_counts[N] is the number
// of samples in the overflow bucket. See the comments of `bucket_option`
// below for more details.
//
// Any suffix of trailing zeros may be omitted.
BucketCounts []int64 `protobuf:"varint,6,rep,packed,name=bucket_counts,json=bucketCounts" json:"bucket_counts,omitempty"`
// Defines the buckets in the histogram. `bucket_option` and `bucket_counts`
// must be both set, or both unset.
//
// Buckets are numbered the the range of [0, N], with a total of N+1 buckets.
// There must be at least two buckets (a single-bucket histogram gives
// no information that isn't already provided by `count`).
//
// The first bucket is the underflow bucket which has a lower bound
// of -inf. The last bucket is the overflow bucket which has an
// upper bound of +inf. All other buckets (if any) are called "finite"
// buckets because they have finite lower and upper bounds. As described
// below, there are three ways to define the finite buckets.
//
// (1) Buckets with constant width.
// (2) Buckets with exponentially growing widths.
// (3) Buckets with arbitrary user-provided widths.
//
// In all cases, the buckets cover the entire real number line (-inf,
// +inf). Bucket upper bounds are exclusive and lower bounds are
// inclusive. The upper bound of the underflow bucket is equal to the
// lower bound of the smallest finite bucket; the lower bound of the
// overflow bucket is equal to the upper bound of the largest finite
// bucket.
//
// Types that are valid to be assigned to BucketOption:
// *Distribution_LinearBuckets_
// *Distribution_ExponentialBuckets_
// *Distribution_ExplicitBuckets_
BucketOption isDistribution_BucketOption `protobuf_oneof:"bucket_option"`
}
func (*Distribution) Descriptor ¶
func (*Distribution) Descriptor() ([]byte, []int)
func (*Distribution) GetBucketCounts ¶
func (m *Distribution) GetBucketCounts() []int64
func (*Distribution) GetBucketOption ¶
func (m *Distribution) GetBucketOption() isDistribution_BucketOption
func (*Distribution) GetCount ¶
func (m *Distribution) GetCount() int64
func (*Distribution) GetExplicitBuckets ¶
func (m *Distribution) GetExplicitBuckets() *Distribution_ExplicitBuckets
func (*Distribution) GetExponentialBuckets ¶
func (m *Distribution) GetExponentialBuckets() *Distribution_ExponentialBuckets
func (*Distribution) GetLinearBuckets ¶
func (m *Distribution) GetLinearBuckets() *Distribution_LinearBuckets
func (*Distribution) GetMaximum ¶
func (m *Distribution) GetMaximum() float64
func (*Distribution) GetMean ¶
func (m *Distribution) GetMean() float64
func (*Distribution) GetMinimum ¶
func (m *Distribution) GetMinimum() float64
func (*Distribution) GetSumOfSquaredDeviation ¶
func (m *Distribution) GetSumOfSquaredDeviation() float64
func (*Distribution) ProtoMessage ¶
func (*Distribution) ProtoMessage()
func (*Distribution) Reset ¶
func (m *Distribution) Reset()
func (*Distribution) String ¶
func (m *Distribution) String() string
func (*Distribution) XXX_OneofFuncs ¶
func (*Distribution) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type Distribution_ExplicitBuckets ¶
Describing buckets with arbitrary user-provided width.
type Distribution_ExplicitBuckets struct {
// 'bound' is a list of strictly increasing boundaries between
// buckets. Note that a list of length N-1 defines N buckets because
// of fenceposting. See comments on `bucket_options` for details.
//
// The i'th finite bucket covers the interval
// [bound[i-1], bound[i])
// where i ranges from 1 to bound_size() - 1. Note that there are no
// finite buckets at all if 'bound' only contains a single element; in
// that special case the single bound defines the boundary between the
// underflow and overflow buckets.
//
// bucket number lower bound upper bound
// i == 0 (underflow) -inf bound[i]
// 0 < i < bound_size() bound[i-1] bound[i]
// i == bound_size() (overflow) bound[i-1] +inf
Bounds []float64 `protobuf:"fixed64,1,rep,packed,name=bounds" json:"bounds,omitempty"`
}
func (*Distribution_ExplicitBuckets) Descriptor ¶
func (*Distribution_ExplicitBuckets) Descriptor() ([]byte, []int)
func (*Distribution_ExplicitBuckets) GetBounds ¶
func (m *Distribution_ExplicitBuckets) GetBounds() []float64
func (*Distribution_ExplicitBuckets) ProtoMessage ¶
func (*Distribution_ExplicitBuckets) ProtoMessage()
func (*Distribution_ExplicitBuckets) Reset ¶
func (m *Distribution_ExplicitBuckets) Reset()
func (*Distribution_ExplicitBuckets) String ¶
func (m *Distribution_ExplicitBuckets) String() string
type Distribution_ExplicitBuckets_ ¶
type Distribution_ExplicitBuckets_ struct {
ExplicitBuckets *Distribution_ExplicitBuckets `protobuf:"bytes,9,opt,name=explicit_buckets,json=explicitBuckets,oneof"`
}
type Distribution_ExponentialBuckets ¶
Describing buckets with exponentially growing width.
type Distribution_ExponentialBuckets struct {
// The number of finite buckets. With the underflow and overflow buckets,
// the total number of buckets is `num_finite_buckets` + 2.
// See comments on `bucket_options` for details.
NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets" json:"num_finite_buckets,omitempty"`
// The i'th exponential bucket covers the interval
// [scale * growth_factor^(i-1), scale * growth_factor^i)
// where i ranges from 1 to num_finite_buckets inclusive.
// Must be larger than 1.0.
GrowthFactor float64 `protobuf:"fixed64,2,opt,name=growth_factor,json=growthFactor" json:"growth_factor,omitempty"`
// The i'th exponential bucket covers the interval
// [scale * growth_factor^(i-1), scale * growth_factor^i)
// where i ranges from 1 to num_finite_buckets inclusive.
// Must be > 0.
Scale float64 `protobuf:"fixed64,3,opt,name=scale" json:"scale,omitempty"`
}
func (*Distribution_ExponentialBuckets) Descriptor ¶
func (*Distribution_ExponentialBuckets) Descriptor() ([]byte, []int)
func (*Distribution_ExponentialBuckets) GetGrowthFactor ¶
func (m *Distribution_ExponentialBuckets) GetGrowthFactor() float64
func (*Distribution_ExponentialBuckets) GetNumFiniteBuckets ¶
func (m *Distribution_ExponentialBuckets) GetNumFiniteBuckets() int32
func (*Distribution_ExponentialBuckets) GetScale ¶
func (m *Distribution_ExponentialBuckets) GetScale() float64
func (*Distribution_ExponentialBuckets) ProtoMessage ¶
func (*Distribution_ExponentialBuckets) ProtoMessage()
func (*Distribution_ExponentialBuckets) Reset ¶
func (m *Distribution_ExponentialBuckets) Reset()
func (*Distribution_ExponentialBuckets) String ¶
func (m *Distribution_ExponentialBuckets) String() string
type Distribution_ExponentialBuckets_ ¶
type Distribution_ExponentialBuckets_ struct {
ExponentialBuckets *Distribution_ExponentialBuckets `protobuf:"bytes,8,opt,name=exponential_buckets,json=exponentialBuckets,oneof"`
}
type Distribution_LinearBuckets ¶
Describing buckets with constant width.
type Distribution_LinearBuckets struct {
// The number of finite buckets. With the underflow and overflow buckets,
// the total number of buckets is `num_finite_buckets` + 2.
// See comments on `bucket_options` for details.
NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets" json:"num_finite_buckets,omitempty"`
// The i'th linear bucket covers the interval
// [offset + (i-1) * width, offset + i * width)
// where i ranges from 1 to num_finite_buckets, inclusive.
// Must be strictly positive.
Width float64 `protobuf:"fixed64,2,opt,name=width" json:"width,omitempty"`
// The i'th linear bucket covers the interval
// [offset + (i-1) * width, offset + i * width)
// where i ranges from 1 to num_finite_buckets, inclusive.
Offset float64 `protobuf:"fixed64,3,opt,name=offset" json:"offset,omitempty"`
}
func (*Distribution_LinearBuckets) Descriptor ¶
func (*Distribution_LinearBuckets) Descriptor() ([]byte, []int)
func (*Distribution_LinearBuckets) GetNumFiniteBuckets ¶
func (m *Distribution_LinearBuckets) GetNumFiniteBuckets() int32
func (*Distribution_LinearBuckets) GetOffset ¶
func (m *Distribution_LinearBuckets) GetOffset() float64
func (*Distribution_LinearBuckets) GetWidth ¶
func (m *Distribution_LinearBuckets) GetWidth() float64
func (*Distribution_LinearBuckets) ProtoMessage ¶
func (*Distribution_LinearBuckets) ProtoMessage()
func (*Distribution_LinearBuckets) Reset ¶
func (m *Distribution_LinearBuckets) Reset()
func (*Distribution_LinearBuckets) String ¶
func (m *Distribution_LinearBuckets) String() string
type Distribution_LinearBuckets_ ¶
type Distribution_LinearBuckets_ struct {
LinearBuckets *Distribution_LinearBuckets `protobuf:"bytes,7,opt,name=linear_buckets,json=linearBuckets,oneof"`
}
type LogEntry ¶
An individual log entry.
type LogEntry struct {
// Required. The log to which this log entry belongs. Examples: `"syslog"`,
// `"book_log"`.
Name string `protobuf:"bytes,10,opt,name=name" json:"name,omitempty"`
// The time the event described by the log entry occurred. If
// omitted, defaults to operation start time.
Timestamp *google_protobuf3.Timestamp `protobuf:"bytes,11,opt,name=timestamp" json:"timestamp,omitempty"`
// The severity of the log entry. The default value is
// `LogSeverity.DEFAULT`.
Severity google_logging_type.LogSeverity `protobuf:"varint,12,opt,name=severity,enum=google.logging.type.LogSeverity" json:"severity,omitempty"`
// A unique ID for the log entry used for deduplication. If omitted,
// the implementation will generate one based on operation_id.
InsertId string `protobuf:"bytes,4,opt,name=insert_id,json=insertId" json:"insert_id,omitempty"`
// A set of user-defined (key, value) data that provides additional
// information about the log entry.
Labels map[string]string `protobuf:"bytes,13,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// The log entry payload, which can be one of multiple types.
//
// Types that are valid to be assigned to Payload:
// *LogEntry_ProtoPayload
// *LogEntry_TextPayload
// *LogEntry_StructPayload
Payload isLogEntry_Payload `protobuf_oneof:"payload"`
}
func (*LogEntry) Descriptor ¶
func (*LogEntry) Descriptor() ([]byte, []int)
func (*LogEntry) GetInsertId ¶
func (m *LogEntry) GetInsertId() string
func (*LogEntry) GetLabels ¶
func (m *LogEntry) GetLabels() map[string]string
func (*LogEntry) GetName ¶
func (m *LogEntry) GetName() string
func (*LogEntry) GetPayload ¶
func (m *LogEntry) GetPayload() isLogEntry_Payload
func (*LogEntry) GetProtoPayload ¶
func (m *LogEntry) GetProtoPayload() *google_protobuf1.Any
func (*LogEntry) GetSeverity ¶
func (m *LogEntry) GetSeverity() google_logging_type.LogSeverity
func (*LogEntry) GetStructPayload ¶
func (m *LogEntry) GetStructPayload() *google_protobuf2.Struct
func (*LogEntry) GetTextPayload ¶
func (m *LogEntry) GetTextPayload() string
func (*LogEntry) GetTimestamp ¶
func (m *LogEntry) GetTimestamp() *google_protobuf3.Timestamp
func (*LogEntry) ProtoMessage ¶
func (*LogEntry) ProtoMessage()
func (*LogEntry) Reset ¶
func (m *LogEntry) Reset()
func (*LogEntry) String ¶
func (m *LogEntry) String() string
func (*LogEntry) XXX_OneofFuncs ¶
func (*LogEntry) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type LogEntry_ProtoPayload ¶
type LogEntry_ProtoPayload struct {
ProtoPayload *google_protobuf1.Any `protobuf:"bytes,2,opt,name=proto_payload,json=protoPayload,oneof"`
}
type LogEntry_StructPayload ¶
type LogEntry_StructPayload struct {
StructPayload *google_protobuf2.Struct `protobuf:"bytes,6,opt,name=struct_payload,json=structPayload,oneof"`
}
type LogEntry_TextPayload ¶
type LogEntry_TextPayload struct {
TextPayload string `protobuf:"bytes,3,opt,name=text_payload,json=textPayload,oneof"`
}
type MetricValue ¶
Represents a single metric value.
type MetricValue struct {
// The labels describing the metric value.
// See comments on [google.api.servicecontrol.v1.Operation.labels][google.api.servicecontrol.v1.Operation.labels] for
// the overriding relationship.
Labels map[string]string `protobuf:"bytes,1,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// The start of the time period over which this metric value's measurement
// applies. The time period has different semantics for different metric
// types (cumulative, delta, and gauge). See the metric definition
// documentation in the service configuration for details.
StartTime *google_protobuf3.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
// The end of the time period over which this metric value's measurement
// applies.
EndTime *google_protobuf3.Timestamp `protobuf:"bytes,3,opt,name=end_time,json=endTime" json:"end_time,omitempty"`
// The value. The type of value used in the request must
// agree with the metric definition in the service configuration, otherwise
// the MetricValue is rejected.
//
// Types that are valid to be assigned to Value:
// *MetricValue_BoolValue
// *MetricValue_Int64Value
// *MetricValue_DoubleValue
// *MetricValue_StringValue
// *MetricValue_DistributionValue
Value isMetricValue_Value `protobuf_oneof:"value"`
}
func (*MetricValue) Descriptor ¶
func (*MetricValue) Descriptor() ([]byte, []int)
func (*MetricValue) GetBoolValue ¶
func (m *MetricValue) GetBoolValue() bool
func (*MetricValue) GetDistributionValue ¶
func (m *MetricValue) GetDistributionValue() *Distribution
func (*MetricValue) GetDoubleValue ¶
func (m *MetricValue) GetDoubleValue() float64
func (*MetricValue) GetEndTime ¶
func (m *MetricValue) GetEndTime() *google_protobuf3.Timestamp
func (*MetricValue) GetInt64Value ¶
func (m *MetricValue) GetInt64Value() int64
func (*MetricValue) GetLabels ¶
func (m *MetricValue) GetLabels() map[string]string
func (*MetricValue) GetStartTime ¶
func (m *MetricValue) GetStartTime() *google_protobuf3.Timestamp
func (*MetricValue) GetStringValue ¶
func (m *MetricValue) GetStringValue() string
func (*MetricValue) GetValue ¶
func (m *MetricValue) GetValue() isMetricValue_Value
func (*MetricValue) ProtoMessage ¶
func (*MetricValue) ProtoMessage()
func (*MetricValue) Reset ¶
func (m *MetricValue) Reset()
func (*MetricValue) String ¶
func (m *MetricValue) String() string
func (*MetricValue) XXX_OneofFuncs ¶
func (*MetricValue) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type MetricValueSet ¶
Represents a set of metric values in the same metric. Each metric value in the set should have a unique combination of start time, end time, and label values.
type MetricValueSet struct {
// The metric name defined in the service configuration.
MetricName string `protobuf:"bytes,1,opt,name=metric_name,json=metricName" json:"metric_name,omitempty"`
// The values in this metric.
MetricValues []*MetricValue `protobuf:"bytes,2,rep,name=metric_values,json=metricValues" json:"metric_values,omitempty"`
}
func (*MetricValueSet) Descriptor ¶
func (*MetricValueSet) Descriptor() ([]byte, []int)
func (*MetricValueSet) GetMetricName ¶
func (m *MetricValueSet) GetMetricName() string
func (*MetricValueSet) GetMetricValues ¶
func (m *MetricValueSet) GetMetricValues() []*MetricValue
func (*MetricValueSet) ProtoMessage ¶
func (*MetricValueSet) ProtoMessage()
func (*MetricValueSet) Reset ¶
func (m *MetricValueSet) Reset()
func (*MetricValueSet) String ¶
func (m *MetricValueSet) String() string
type MetricValue_BoolValue ¶
type MetricValue_BoolValue struct {
BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,oneof"`
}
type MetricValue_DistributionValue ¶
type MetricValue_DistributionValue struct {
DistributionValue *Distribution `protobuf:"bytes,8,opt,name=distribution_value,json=distributionValue,oneof"`
}
type MetricValue_DoubleValue ¶
type MetricValue_DoubleValue struct {
DoubleValue float64 `protobuf:"fixed64,6,opt,name=double_value,json=doubleValue,oneof"`
}
type MetricValue_Int64Value ¶
type MetricValue_Int64Value struct {
Int64Value int64 `protobuf:"varint,5,opt,name=int64_value,json=int64Value,oneof"`
}
type MetricValue_StringValue ¶
type MetricValue_StringValue struct {
StringValue string `protobuf:"bytes,7,opt,name=string_value,json=stringValue,oneof"`
}
type Operation ¶
Represents information regarding an operation.
type Operation struct {
// Identity of the operation. This must be unique within the scope of the
// service that generated the operation. If the service calls
// Check() and Report() on the same operation, the two calls should carry
// the same id.
//
// UUID version 4 is recommended, though not required.
// In scenarios where an operation is computed from existing information
// and an idempotent id is desirable for deduplication purpose, UUID version 5
// is recommended. See RFC 4122 for details.
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
// Fully qualified name of the operation. Reserved for future use.
OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName" json:"operation_name,omitempty"`
// Identity of the consumer who is using the service.
// This field should be filled in for the operations initiated by a
// consumer, but not for service-initiated operations that are
// not related to a specific consumer.
//
// This can be in one of the following formats:
// project:<project_id>,
// project_number:<project_number>,
// api_key:<api_key>.
ConsumerId string `protobuf:"bytes,3,opt,name=consumer_id,json=consumerId" json:"consumer_id,omitempty"`
// Required. Start time of the operation.
StartTime *google_protobuf3.Timestamp `protobuf:"bytes,4,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
// End time of the operation.
// Required when the operation is used in [ServiceController.Report][google.api.servicecontrol.v1.ServiceController.Report],
// but optional when the operation is used in [ServiceController.Check][google.api.servicecontrol.v1.ServiceController.Check].
EndTime *google_protobuf3.Timestamp `protobuf:"bytes,5,opt,name=end_time,json=endTime" json:"end_time,omitempty"`
// Labels describing the operation. Only the following labels are allowed:
//
// - Labels describing monitored resources as defined in
// the service configuration.
// - Default labels of metric values. When specified, labels defined in the
// metric value override these default.
// - The following labels defined by Google Cloud Platform:
// - `cloud.googleapis.com/location` describing the location where the
// operation happened,
// - `servicecontrol.googleapis.com/user_agent` describing the user agent
// of the API request,
// - `servicecontrol.googleapis.com/service_agent` describing the service
// used to handle the API request (e.g. ESP),
// - `servicecontrol.googleapis.com/platform` describing the platform
// where the API is served (e.g. GAE, GCE, GKE).
Labels map[string]string `protobuf:"bytes,6,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// Represents information about this operation. Each MetricValueSet
// corresponds to a metric defined in the service configuration.
// The data type used in the MetricValueSet must agree with
// the data type specified in the metric definition.
//
// Within a single operation, it is not allowed to have more than one
// MetricValue instances that have the same metric names and identical
// label value combinations. If a request has such duplicated MetricValue
// instances, the entire request is rejected with
// an invalid argument error.
MetricValueSets []*MetricValueSet `protobuf:"bytes,7,rep,name=metric_value_sets,json=metricValueSets" json:"metric_value_sets,omitempty"`
// Represents information to be logged.
LogEntries []*LogEntry `protobuf:"bytes,8,rep,name=log_entries,json=logEntries" json:"log_entries,omitempty"`
// DO NOT USE. This is an experimental field.
Importance Operation_Importance `protobuf:"varint,11,opt,name=importance,enum=google.api.servicecontrol.v1.Operation_Importance" json:"importance,omitempty"`
}
func (*Operation) Descriptor ¶
func (*Operation) Descriptor() ([]byte, []int)
func (*Operation) GetConsumerId ¶
func (m *Operation) GetConsumerId() string
func (*Operation) GetEndTime ¶
func (m *Operation) GetEndTime() *google_protobuf3.Timestamp
func (*Operation) GetImportance ¶
func (m *Operation) GetImportance() Operation_Importance
func (*Operation) GetLabels ¶
func (m *Operation) GetLabels() map[string]string
func (*Operation) GetLogEntries ¶
func (m *Operation) GetLogEntries() []*LogEntry
func (*Operation) GetMetricValueSets ¶
func (m *Operation) GetMetricValueSets() []*MetricValueSet
func (*Operation) GetOperationId ¶
func (m *Operation) GetOperationId() string
func (*Operation) GetOperationName ¶
func (m *Operation) GetOperationName() string
func (*Operation) GetStartTime ¶
func (m *Operation) GetStartTime() *google_protobuf3.Timestamp
func (*Operation) ProtoMessage ¶
func (*Operation) ProtoMessage()
func (*Operation) Reset ¶
func (m *Operation) Reset()
func (*Operation) String ¶
func (m *Operation) String() string
type Operation_Importance ¶
Defines the importance of the data contained in the operation.
type Operation_Importance int32
const (
// The API implementation may cache and aggregate the data.
// The data may be lost when rare and unexpected system failures occur.
Operation_LOW Operation_Importance = 0
// The API implementation doesn't cache and aggregate the data.
// If the method returns successfully, it's guaranteed that the data has
// been persisted in durable storage.
Operation_HIGH Operation_Importance = 1
)
func (Operation_Importance) EnumDescriptor ¶
func (Operation_Importance) EnumDescriptor() ([]byte, []int)
func (Operation_Importance) String ¶
func (x Operation_Importance) String() string
type ReportRequest ¶
Request message for the Report method.
type ReportRequest struct {
// The service name as specified in its service configuration. For example,
// `"pubsub.googleapis.com"`.
//
// See [google.api.Service][google.api.Service] for the definition of a service name.
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName" json:"service_name,omitempty"`
// Operations to be reported.
//
// Typically the service should report one operation per request.
// Putting multiple operations into a single request is allowed, but should
// be used only when multiple operations are natually available at the time
// of the report.
//
// If multiple operations are in a single request, the total request size
// should be no larger than 1MB. See [ReportResponse.report_errors][google.api.servicecontrol.v1.ReportResponse.report_errors] for
// partial failure behavior.
Operations []*Operation `protobuf:"bytes,2,rep,name=operations" json:"operations,omitempty"`
// Specifies which version of service config should be used to process the
// request.
//
// If unspecified or no matching version can be found, the
// latest one will be used.
ServiceConfigId string `protobuf:"bytes,3,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
}
func (*ReportRequest) Descriptor ¶
func (*ReportRequest) Descriptor() ([]byte, []int)
func (*ReportRequest) GetOperations ¶
func (m *ReportRequest) GetOperations() []*Operation
func (*ReportRequest) GetServiceConfigId ¶
func (m *ReportRequest) GetServiceConfigId() string
func (*ReportRequest) GetServiceName ¶
func (m *ReportRequest) GetServiceName() string
func (*ReportRequest) ProtoMessage ¶
func (*ReportRequest) ProtoMessage()
func (*ReportRequest) Reset ¶
func (m *ReportRequest) Reset()
func (*ReportRequest) String ¶
func (m *ReportRequest) String() string
type ReportResponse ¶
Response message for the Report method.
type ReportResponse struct {
// Partial failures, one for each `Operation` in the request that failed
// processing. There are three possible combinations of the RPC status:
//
// 1. The combination of a successful RPC status and an empty `report_errors`
// list indicates a complete success where all `Operations` in the
// request are processed successfully.
// 2. The combination of a successful RPC status and a non-empty
// `report_errors` list indicates a partial success where some
// `Operations` in the request succeeded. Each
// `Operation` that failed processing has a corresponding item
// in this list.
// 3. A failed RPC status indicates a complete failure where none of the
// `Operations` in the request succeeded.
ReportErrors []*ReportResponse_ReportError `protobuf:"bytes,1,rep,name=report_errors,json=reportErrors" json:"report_errors,omitempty"`
// The actual config id used to process the request.
ServiceConfigId string `protobuf:"bytes,2,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
}
func (*ReportResponse) Descriptor ¶
func (*ReportResponse) Descriptor() ([]byte, []int)
func (*ReportResponse) GetReportErrors ¶
func (m *ReportResponse) GetReportErrors() []*ReportResponse_ReportError
func (*ReportResponse) GetServiceConfigId ¶
func (m *ReportResponse) GetServiceConfigId() string
func (*ReportResponse) ProtoMessage ¶
func (*ReportResponse) ProtoMessage()
func (*ReportResponse) Reset ¶
func (m *ReportResponse) Reset()
func (*ReportResponse) String ¶
func (m *ReportResponse) String() string
type ReportResponse_ReportError ¶
Represents the processing error of one `Operation` in the request.
type ReportResponse_ReportError struct {
// The [Operation.operation_id][google.api.servicecontrol.v1.Operation.operation_id] value from the request.
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
// Details of the error when processing the `Operation`.
Status *google_rpc.Status `protobuf:"bytes,2,opt,name=status" json:"status,omitempty"`
}
func (*ReportResponse_ReportError) Descriptor ¶
func (*ReportResponse_ReportError) Descriptor() ([]byte, []int)
func (*ReportResponse_ReportError) GetOperationId ¶
func (m *ReportResponse_ReportError) GetOperationId() string
func (*ReportResponse_ReportError) GetStatus ¶
func (m *ReportResponse_ReportError) GetStatus() *google_rpc.Status
func (*ReportResponse_ReportError) ProtoMessage ¶
func (*ReportResponse_ReportError) ProtoMessage()
func (*ReportResponse_ReportError) Reset ¶
func (m *ReportResponse_ReportError) Reset()
func (*ReportResponse_ReportError) String ¶
func (m *ReportResponse_ReportError) String() string
type ServiceControllerClient ¶
type ServiceControllerClient interface {
// Checks an operation with Google Service Control to decide whether
// the given operation should proceed. It should be called before the
// operation is executed.
//
// If feasible, the client should cache the check results and reuse them for
// up to 60s. In case of server errors, the client may rely on the cached
// results for longer time.
//
// This method requires the `servicemanagement.services.check` permission
// on the specified service. For more information, see
// [Google Cloud IAM](https://cloud.google.com/iam).
Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error)
// Reports operations to Google Service Control. It should be called
// after the operation is completed.
//
// If feasible, the client should aggregate reporting data for up to 5s to
// reduce API traffic. Limiting aggregation to 5s is to reduce data loss
// during client crashes. Clients should carefully choose the aggregation
// window to avoid data loss risk more than 0.01% for business and
// compliance reasons.
//
// This method requires the `servicemanagement.services.report` permission
// on the specified service. For more information, see
// [Google Cloud IAM](https://cloud.google.com/iam).
Report(ctx context.Context, in *ReportRequest, opts ...grpc.CallOption) (*ReportResponse, error)
}
func NewServiceControllerClient ¶
func NewServiceControllerClient(cc *grpc.ClientConn) ServiceControllerClient
type ServiceControllerServer ¶
type ServiceControllerServer interface {
// Checks an operation with Google Service Control to decide whether
// the given operation should proceed. It should be called before the
// operation is executed.
//
// If feasible, the client should cache the check results and reuse them for
// up to 60s. In case of server errors, the client may rely on the cached
// results for longer time.
//
// This method requires the `servicemanagement.services.check` permission
// on the specified service. For more information, see
// [Google Cloud IAM](https://cloud.google.com/iam).
Check(context.Context, *CheckRequest) (*CheckResponse, error)
// Reports operations to Google Service Control. It should be called
// after the operation is completed.
//
// If feasible, the client should aggregate reporting data for up to 5s to
// reduce API traffic. Limiting aggregation to 5s is to reduce data loss
// during client crashes. Clients should carefully choose the aggregation
// window to avoid data loss risk more than 0.01% for business and
// compliance reasons.
//
// This method requires the `servicemanagement.services.report` permission
// on the specified service. For more information, see
// [Google Cloud IAM](https://cloud.google.com/iam).
Report(context.Context, *ReportRequest) (*ReportResponse, error)
}
ActiveGo 1.8