Variables
CheckError_Code_name, CheckError_Code_value
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",
125: "CONSUMER_INVALID",
109: "IP_ADDRESS_BLOCKED",
110: "REFERER_BLOCKED",
111: "CLIENT_APP_BLOCKED",
122: "API_TARGET_BLOCKED",
105: "API_KEY_INVALID",
112: "API_KEY_EXPIRED",
113: "API_KEY_NOT_FOUND",
123: "INVALID_CREDENTIAL",
300: "NAMESPACE_LOOKUP_UNAVAILABLE",
301: "SERVICE_STATUS_UNAVAILABLE",
302: "BILLING_STATUS_UNAVAILABLE",
305: "CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE",
}
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,
"CONSUMER_INVALID": 125,
"IP_ADDRESS_BLOCKED": 109,
"REFERER_BLOCKED": 110,
"CLIENT_APP_BLOCKED": 111,
"API_TARGET_BLOCKED": 122,
"API_KEY_INVALID": 105,
"API_KEY_EXPIRED": 112,
"API_KEY_NOT_FOUND": 113,
"INVALID_CREDENTIAL": 123,
"NAMESPACE_LOOKUP_UNAVAILABLE": 300,
"SERVICE_STATUS_UNAVAILABLE": 301,
"BILLING_STATUS_UNAVAILABLE": 302,
"CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE": 305,
}
)
Enum value maps for CheckError_Code.
Operation_Importance_name, Operation_Importance_value
var (
Operation_Importance_name = map[int32]string{
0: "LOW",
1: "HIGH",
}
Operation_Importance_value = map[string]int32{
"LOW": 0,
"HIGH": 1,
}
)
Enum value maps for Operation_Importance.
QuotaOperation_QuotaMode_name, QuotaOperation_QuotaMode_value
var (
QuotaOperation_QuotaMode_name = map[int32]string{
0: "UNSPECIFIED",
1: "NORMAL",
2: "BEST_EFFORT",
3: "CHECK_ONLY",
4: "QUERY_ONLY",
5: "ADJUST_ONLY",
}
QuotaOperation_QuotaMode_value = map[string]int32{
"UNSPECIFIED": 0,
"NORMAL": 1,
"BEST_EFFORT": 2,
"CHECK_ONLY": 3,
"QUERY_ONLY": 4,
"ADJUST_ONLY": 5,
}
)
Enum value maps for QuotaOperation_QuotaMode.
QuotaError_Code_name, QuotaError_Code_value
var (
QuotaError_Code_name = map[int32]string{
0: "UNSPECIFIED",
8: "RESOURCE_EXHAUSTED",
107: "BILLING_NOT_ACTIVE",
108: "PROJECT_DELETED",
105: "API_KEY_INVALID",
112: "API_KEY_EXPIRED",
}
QuotaError_Code_value = map[string]int32{
"UNSPECIFIED": 0,
"RESOURCE_EXHAUSTED": 8,
"BILLING_NOT_ACTIVE": 107,
"PROJECT_DELETED": 108,
"API_KEY_INVALID": 105,
"API_KEY_EXPIRED": 112,
}
)
Enum value maps for QuotaError_Code.
CheckResponse_ConsumerInfo_ConsumerType_name, CheckResponse_ConsumerInfo_ConsumerType_value
var (
CheckResponse_ConsumerInfo_ConsumerType_name = map[int32]string{
0: "CONSUMER_TYPE_UNSPECIFIED",
1: "PROJECT",
2: "FOLDER",
3: "ORGANIZATION",
4: "SERVICE_SPECIFIC",
}
CheckResponse_ConsumerInfo_ConsumerType_value = map[string]int32{
"CONSUMER_TYPE_UNSPECIFIED": 0,
"PROJECT": 1,
"FOLDER": 2,
"ORGANIZATION": 3,
"SERVICE_SPECIFIC": 4,
}
)
Enum value maps for CheckResponse_ConsumerInfo_ConsumerType.
File_google_api_servicecontrol_v1_check_error_proto
var File_google_api_servicecontrol_v1_check_error_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_distribution_proto
var File_google_api_servicecontrol_v1_distribution_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_http_request_proto
var File_google_api_servicecontrol_v1_http_request_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_log_entry_proto
var File_google_api_servicecontrol_v1_log_entry_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_metric_value_proto
var File_google_api_servicecontrol_v1_metric_value_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_operation_proto
var File_google_api_servicecontrol_v1_operation_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_quota_controller_proto
var File_google_api_servicecontrol_v1_quota_controller_proto protoreflect.FileDescriptor
File_google_api_servicecontrol_v1_service_controller_proto
var File_google_api_servicecontrol_v1_service_controller_proto protoreflect.FileDescriptor
Functions
func RegisterQuotaControllerServer
func RegisterQuotaControllerServer(s *grpc.Server, srv QuotaControllerServer)
func RegisterServiceControllerServer
func RegisterServiceControllerServer(s *grpc.Server, srv ServiceControllerServer)
AllocateQuotaRequest
type AllocateQuotaRequest struct {
// Name of the service as specified in the 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,proto3" json:"service_name,omitempty"`
// Operation that describes the quota allocation.
AllocateOperation *QuotaOperation `protobuf:"bytes,2,opt,name=allocate_operation,json=allocateOperation,proto3" json:"allocate_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,proto3" json:"service_config_id,omitempty"`
// contains filtered or unexported fields
}
Request message for the AllocateQuota method.
func (*AllocateQuotaRequest) Descriptor
func (*AllocateQuotaRequest) Descriptor() ([]byte, []int)
Deprecated: Use AllocateQuotaRequest.ProtoReflect.Descriptor instead.
func (*AllocateQuotaRequest) GetAllocateOperation
func (x *AllocateQuotaRequest) GetAllocateOperation() *QuotaOperation
func (*AllocateQuotaRequest) GetServiceConfigId
func (x *AllocateQuotaRequest) GetServiceConfigId() string
func (*AllocateQuotaRequest) GetServiceName
func (x *AllocateQuotaRequest) GetServiceName() string
func (*AllocateQuotaRequest) ProtoMessage
func (*AllocateQuotaRequest) ProtoMessage()
func (*AllocateQuotaRequest) ProtoReflect
func (x *AllocateQuotaRequest) ProtoReflect() protoreflect.Message
func (*AllocateQuotaRequest) Reset
func (x *AllocateQuotaRequest) Reset()
func (*AllocateQuotaRequest) String
func (x *AllocateQuotaRequest) String() string
AllocateQuotaResponse
type AllocateQuotaResponse struct {
// The same operation_id value used in the AllocateQuotaRequest. Used for
// logging and diagnostics purposes.
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"`
// Indicates the decision of the allocate.
AllocateErrors []*QuotaError `protobuf:"bytes,2,rep,name=allocate_errors,json=allocateErrors,proto3" json:"allocate_errors,omitempty"`
// Quota metrics to indicate the result of allocation. Depending on the
// request, one or more of the following metrics will be included:
//
// 1. Per quota group or per quota metric incremental usage will be specified
// using the following delta metric :
//
// "serviceruntime.googleapis.com/api/consumer/quota_used_count"
//
// 2. The quota limit reached condition will be specified using the following
// boolean metric :
//
// "serviceruntime.googleapis.com/quota/exceeded"
QuotaMetrics []*MetricValueSet `protobuf:"bytes,3,rep,name=quota_metrics,json=quotaMetrics,proto3" json:"quota_metrics,omitempty"`
// ID of the actual config used to process the request.
ServiceConfigId string `protobuf:"bytes,4,opt,name=service_config_id,json=serviceConfigId,proto3" json:"service_config_id,omitempty"`
// contains filtered or unexported fields
}
Response message for the AllocateQuota method.
func (*AllocateQuotaResponse) Descriptor
func (*AllocateQuotaResponse) Descriptor() ([]byte, []int)
Deprecated: Use AllocateQuotaResponse.ProtoReflect.Descriptor instead.
func (*AllocateQuotaResponse) GetAllocateErrors
func (x *AllocateQuotaResponse) GetAllocateErrors() []*QuotaError
func (*AllocateQuotaResponse) GetOperationId
func (x *AllocateQuotaResponse) GetOperationId() string
func (*AllocateQuotaResponse) GetQuotaMetrics
func (x *AllocateQuotaResponse) GetQuotaMetrics() []*MetricValueSet
func (*AllocateQuotaResponse) GetServiceConfigId
func (x *AllocateQuotaResponse) GetServiceConfigId() string
func (*AllocateQuotaResponse) ProtoMessage
func (*AllocateQuotaResponse) ProtoMessage()
func (*AllocateQuotaResponse) ProtoReflect
func (x *AllocateQuotaResponse) ProtoReflect() protoreflect.Message
func (*AllocateQuotaResponse) Reset
func (x *AllocateQuotaResponse) Reset()
func (*AllocateQuotaResponse) String
func (x *AllocateQuotaResponse) String() string
CheckError
type CheckError struct {
// The error code.
Code CheckError_Code `protobuf:"varint,1,opt,name=code,proto3,enum=google.api.servicecontrol.v1.CheckError_Code" json:"code,omitempty"`
// Subject to whom this error applies. See the specific code enum for more
// details on this field. For example:
//
// - "project:
Defines the errors to be returned in [google.api.servicecontrol.v1.CheckResponse.check_errors][google.api.servicecontrol.v1.CheckResponse.check_errors].
func (*CheckError) Descriptor
func (*CheckError) Descriptor() ([]byte, []int)
Deprecated: Use CheckError.ProtoReflect.Descriptor instead.
func (*CheckError) GetCode
func (x *CheckError) GetCode() CheckError_Code
func (*CheckError) GetDetail
func (x *CheckError) GetDetail() string
func (*CheckError) GetStatus
func (x *CheckError) GetStatus() *status.Status
func (*CheckError) GetSubject
func (x *CheckError) GetSubject() string
func (*CheckError) ProtoMessage
func (*CheckError) ProtoMessage()
func (*CheckError) ProtoReflect
func (x *CheckError) ProtoReflect() protoreflect.Message
func (*CheckError) Reset
func (x *CheckError) Reset()
func (*CheckError) String
func (x *CheckError) String() string
CheckError_Code
type CheckError_Code int32
Error codes for Check responses.
CheckError_ERROR_CODE_UNSPECIFIED, CheckError_NOT_FOUND, CheckError_PERMISSION_DENIED, CheckError_RESOURCE_EXHAUSTED, CheckError_SERVICE_NOT_ACTIVATED, CheckError_BILLING_DISABLED, CheckError_PROJECT_DELETED, CheckError_PROJECT_INVALID, CheckError_CONSUMER_INVALID, CheckError_IP_ADDRESS_BLOCKED, CheckError_REFERER_BLOCKED, CheckError_CLIENT_APP_BLOCKED, CheckError_API_TARGET_BLOCKED, CheckError_API_KEY_INVALID, CheckError_API_KEY_EXPIRED, CheckError_API_KEY_NOT_FOUND, CheckError_INVALID_CREDENTIAL, CheckError_NAMESPACE_LOOKUP_UNAVAILABLE, CheckError_SERVICE_STATUS_UNAVAILABLE, CheckError_BILLING_STATUS_UNAVAILABLE, CheckError_CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE
const (
// This is never used in `CheckResponse`.
CheckError_ERROR_CODE_UNSPECIFIED CheckError_Code = 0
// The consumer's project id, network container, or resource container was
// not found. Same as [google.rpc.Code.NOT_FOUND][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][google.rpc.Code.PERMISSION_DENIED].
CheckError_PERMISSION_DENIED CheckError_Code = 7
// Quota check failed. Same as [google.rpc.Code.RESOURCE_EXHAUSTED][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 input consumer info does not represent a valid consumer folder or
// organization.
CheckError_CONSUMER_INVALID CheckError_Code = 125
// 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 API targeted by this request is invalid for the specified consumer
// project.
CheckError_API_TARGET_BLOCKED CheckError_Code = 122
// 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 credential in the request can not be verified.
CheckError_INVALID_CREDENTIAL CheckError_Code = 123
// 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
// Cloud Resource Manager backend server is unavailable.
CheckError_CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE CheckError_Code = 305
)
func (CheckError_Code) Descriptor
func (CheckError_Code) Descriptor() protoreflect.EnumDescriptor
func (CheckError_Code) Enum
func (x CheckError_Code) Enum() *CheckError_Code
func (CheckError_Code) EnumDescriptor
func (CheckError_Code) EnumDescriptor() ([]byte, []int)
Deprecated: Use CheckError_Code.Descriptor instead.
func (CheckError_Code) Number
func (x CheckError_Code) Number() protoreflect.EnumNumber
func (CheckError_Code) String
func (x CheckError_Code) String() string
func (CheckError_Code) Type
func (CheckError_Code) Type() protoreflect.EnumType
CheckRequest
type CheckRequest struct {
// The service name as specified in its service configuration. For example,
// `"pubsub.googleapis.com"`.
//
// See
// [google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)
// for the definition of a service name.
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
// The operation to be checked.
Operation *Operation `protobuf:"bytes,2,opt,name=operation,proto3" 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,proto3" json:"service_config_id,omitempty"`
// contains filtered or unexported fields
}
Request message for the Check method.
func (*CheckRequest) Descriptor
func (*CheckRequest) Descriptor() ([]byte, []int)
Deprecated: Use CheckRequest.ProtoReflect.Descriptor instead.
func (*CheckRequest) GetOperation
func (x *CheckRequest) GetOperation() *Operation
func (*CheckRequest) GetServiceConfigId
func (x *CheckRequest) GetServiceConfigId() string
func (*CheckRequest) GetServiceName
func (x *CheckRequest) GetServiceName() string
func (*CheckRequest) ProtoMessage
func (*CheckRequest) ProtoMessage()
func (*CheckRequest) ProtoReflect
func (x *CheckRequest) ProtoReflect() protoreflect.Message
func (*CheckRequest) Reset
func (x *CheckRequest) Reset()
func (*CheckRequest) String
func (x *CheckRequest) String() string
CheckResponse
type CheckResponse struct {
// The same operation_id value used in the
// [CheckRequest][google.api.servicecontrol.v1.CheckRequest]. Used for logging
// and diagnostics purposes.
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3" 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,proto3" 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,proto3" json:"service_config_id,omitempty"`
// The current service rollout id used to process the request.
ServiceRolloutId string `protobuf:"bytes,11,opt,name=service_rollout_id,json=serviceRolloutId,proto3" json:"service_rollout_id,omitempty"`
// Feedback data returned from the server during processing a Check request.
CheckInfo *CheckResponse_CheckInfo `protobuf:"bytes,6,opt,name=check_info,json=checkInfo,proto3" json:"check_info,omitempty"`
// contains filtered or unexported fields
}
Response message for the Check method.
func (*CheckResponse) Descriptor
func (*CheckResponse) Descriptor() ([]byte, []int)
Deprecated: Use CheckResponse.ProtoReflect.Descriptor instead.
func (*CheckResponse) GetCheckErrors
func (x *CheckResponse) GetCheckErrors() []*CheckError
func (*CheckResponse) GetCheckInfo
func (x *CheckResponse) GetCheckInfo() *CheckResponse_CheckInfo
func (*CheckResponse) GetOperationId
func (x *CheckResponse) GetOperationId() string
func (*CheckResponse) GetServiceConfigId
func (x *CheckResponse) GetServiceConfigId() string
func (*CheckResponse) GetServiceRolloutId
func (x *CheckResponse) GetServiceRolloutId() string
func (*CheckResponse) ProtoMessage
func (*CheckResponse) ProtoMessage()
func (*CheckResponse) ProtoReflect
func (x *CheckResponse) ProtoReflect() protoreflect.Message
func (*CheckResponse) Reset
func (x *CheckResponse) Reset()
func (*CheckResponse) String
func (x *CheckResponse) String() string
CheckResponse_CheckInfo
type CheckResponse_CheckInfo struct {
// A list of fields and label keys that are ignored by the server.
// The client doesn't need to send them for following requests to improve
// performance and allow better aggregation.
UnusedArguments []string `protobuf:"bytes,1,rep,name=unused_arguments,json=unusedArguments,proto3" json:"unused_arguments,omitempty"`
// Consumer info of this check.
ConsumerInfo *CheckResponse_ConsumerInfo `protobuf:"bytes,2,opt,name=consumer_info,json=consumerInfo,proto3" json:"consumer_info,omitempty"`
// The unique id of the api key in the format of "apikey:
Contains additional information about the check operation.
func (*CheckResponse_CheckInfo) Descriptor
func (*CheckResponse_CheckInfo) Descriptor() ([]byte, []int)
Deprecated: Use CheckResponse_CheckInfo.ProtoReflect.Descriptor instead.
func (*CheckResponse_CheckInfo) GetApiKeyUid
func (x *CheckResponse_CheckInfo) GetApiKeyUid() string
func (*CheckResponse_CheckInfo) GetConsumerInfo
func (x *CheckResponse_CheckInfo) GetConsumerInfo() *CheckResponse_ConsumerInfo
func (*CheckResponse_CheckInfo) GetUnusedArguments
func (x *CheckResponse_CheckInfo) GetUnusedArguments() []string
func (*CheckResponse_CheckInfo) ProtoMessage
func (*CheckResponse_CheckInfo) ProtoMessage()
func (*CheckResponse_CheckInfo) ProtoReflect
func (x *CheckResponse_CheckInfo) ProtoReflect() protoreflect.Message
func (*CheckResponse_CheckInfo) Reset
func (x *CheckResponse_CheckInfo) Reset()
func (*CheckResponse_CheckInfo) String
func (x *CheckResponse_CheckInfo) String() string
CheckResponse_ConsumerInfo
type CheckResponse_ConsumerInfo struct {
// The Google cloud project number, e.g. 1234567890. A value of 0 indicates
// no project number is found.
//
// NOTE: This field is deprecated after we support flexible consumer
// id. New code should not depend on this field anymore.
ProjectNumber int64 `protobuf:"varint,1,opt,name=project_number,json=projectNumber,proto3" json:"project_number,omitempty"`
// The type of the consumer which should have been defined in
// [Google Resource Manager](https://cloud.google.com/resource-manager/).
Type CheckResponse_ConsumerInfo_ConsumerType `protobuf:"varint,2,opt,name=type,proto3,enum=google.api.servicecontrol.v1.CheckResponse_ConsumerInfo_ConsumerType" json:"type,omitempty"`
// The consumer identity number, can be Google cloud project number, folder
// number or organization number e.g. 1234567890. A value of 0 indicates no
// consumer number is found.
ConsumerNumber int64 `protobuf:"varint,3,opt,name=consumer_number,json=consumerNumber,proto3" json:"consumer_number,omitempty"`
// contains filtered or unexported fields
}
ConsumerInfo
provides information about the consumer.
func (*CheckResponse_ConsumerInfo) Descriptor
func (*CheckResponse_ConsumerInfo) Descriptor() ([]byte, []int)
Deprecated: Use CheckResponse_ConsumerInfo.ProtoReflect.Descriptor instead.
func (*CheckResponse_ConsumerInfo) GetConsumerNumber
func (x *CheckResponse_ConsumerInfo) GetConsumerNumber() int64
func (*CheckResponse_ConsumerInfo) GetProjectNumber
func (x *CheckResponse_ConsumerInfo) GetProjectNumber() int64
func (*CheckResponse_ConsumerInfo) GetType
func (x *CheckResponse_ConsumerInfo) GetType() CheckResponse_ConsumerInfo_ConsumerType
func (*CheckResponse_ConsumerInfo) ProtoMessage
func (*CheckResponse_ConsumerInfo) ProtoMessage()
func (*CheckResponse_ConsumerInfo) ProtoReflect
func (x *CheckResponse_ConsumerInfo) ProtoReflect() protoreflect.Message
func (*CheckResponse_ConsumerInfo) Reset
func (x *CheckResponse_ConsumerInfo) Reset()
func (*CheckResponse_ConsumerInfo) String
func (x *CheckResponse_ConsumerInfo) String() string
CheckResponse_ConsumerInfo_ConsumerType
type CheckResponse_ConsumerInfo_ConsumerType int32
The type of the consumer as defined in Google Resource Manager.
CheckResponse_ConsumerInfo_CONSUMER_TYPE_UNSPECIFIED, CheckResponse_ConsumerInfo_PROJECT, CheckResponse_ConsumerInfo_FOLDER, CheckResponse_ConsumerInfo_ORGANIZATION, CheckResponse_ConsumerInfo_SERVICE_SPECIFIC
const (
// This is never used.
CheckResponse_ConsumerInfo_CONSUMER_TYPE_UNSPECIFIED CheckResponse_ConsumerInfo_ConsumerType = 0
// The consumer is a Google Cloud Project.
CheckResponse_ConsumerInfo_PROJECT CheckResponse_ConsumerInfo_ConsumerType = 1
// The consumer is a Google Cloud Folder.
CheckResponse_ConsumerInfo_FOLDER CheckResponse_ConsumerInfo_ConsumerType = 2
// The consumer is a Google Cloud Organization.
CheckResponse_ConsumerInfo_ORGANIZATION CheckResponse_ConsumerInfo_ConsumerType = 3
// Service-specific resource container which is defined by the service
// producer to offer their users the ability to manage service control
// functionalities at a finer level of granularity than the PROJECT.
CheckResponse_ConsumerInfo_SERVICE_SPECIFIC CheckResponse_ConsumerInfo_ConsumerType = 4
)
func (CheckResponse_ConsumerInfo_ConsumerType) Descriptor
func (CheckResponse_ConsumerInfo_ConsumerType) Descriptor() protoreflect.EnumDescriptor
func (CheckResponse_ConsumerInfo_ConsumerType) Enum
func (CheckResponse_ConsumerInfo_ConsumerType) EnumDescriptor
func (CheckResponse_ConsumerInfo_ConsumerType) EnumDescriptor() ([]byte, []int)
Deprecated: Use CheckResponse_ConsumerInfo_ConsumerType.Descriptor instead.
func (CheckResponse_ConsumerInfo_ConsumerType) Number
func (x CheckResponse_ConsumerInfo_ConsumerType) Number() protoreflect.EnumNumber
func (CheckResponse_ConsumerInfo_ConsumerType) String
func (x CheckResponse_ConsumerInfo_ConsumerType) String() string
func (CheckResponse_ConsumerInfo_ConsumerType) Type
func (CheckResponse_ConsumerInfo_ConsumerType) Type() protoreflect.EnumType
Distribution
type Distribution struct {
// The total number of samples in the distribution. Must be >= 0.
Count int64 `protobuf:"varint,1,opt,name=count,proto3" 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,proto3" json:"mean,omitempty"`
// The minimum of the population of values. Ignored if `count` is zero.
Minimum float64 `protobuf:"fixed64,3,opt,name=minimum,proto3" json:"minimum,omitempty"`
// The maximum of the population of values. Ignored if `count` is zero.
Maximum float64 `protobuf:"fixed64,4,opt,name=maximum,proto3" 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,proto3" 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,proto3" 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 in 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 assignable to BucketOption:
//
// *Distribution_LinearBuckets_
// *Distribution_ExponentialBuckets_
// *Distribution_ExplicitBuckets_
BucketOption isDistribution_BucketOption `protobuf_oneof:"bucket_option"`
// Example points. Must be in increasing order of `value` field.
Exemplars []*distribution.Distribution_Exemplar `protobuf:"bytes,10,rep,name=exemplars,proto3" json:"exemplars,omitempty"`
// contains filtered or unexported fields
}
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
func (*Distribution) Descriptor
func (*Distribution) Descriptor() ([]byte, []int)
Deprecated: Use Distribution.ProtoReflect.Descriptor instead.
func (*Distribution) GetBucketCounts
func (x *Distribution) GetBucketCounts() []int64
func (*Distribution) GetBucketOption
func (m *Distribution) GetBucketOption() isDistribution_BucketOption
func (*Distribution) GetCount
func (x *Distribution) GetCount() int64
func (*Distribution) GetExemplars
func (x *Distribution) GetExemplars() []*distribution.Distribution_Exemplar
func (*Distribution) GetExplicitBuckets
func (x *Distribution) GetExplicitBuckets() *Distribution_ExplicitBuckets
func (*Distribution) GetExponentialBuckets
func (x *Distribution) GetExponentialBuckets() *Distribution_ExponentialBuckets
func (*Distribution) GetLinearBuckets
func (x *Distribution) GetLinearBuckets() *Distribution_LinearBuckets
func (*Distribution) GetMaximum
func (x *Distribution) GetMaximum() float64
func (*Distribution) GetMean
func (x *Distribution) GetMean() float64
func (*Distribution) GetMinimum
func (x *Distribution) GetMinimum() float64
func (*Distribution) GetSumOfSquaredDeviation
func (x *Distribution) GetSumOfSquaredDeviation() float64
func (*Distribution) ProtoMessage
func (*Distribution) ProtoMessage()
func (*Distribution) ProtoReflect
func (x *Distribution) ProtoReflect() protoreflect.Message
func (*Distribution) Reset
func (x *Distribution) Reset()
func (*Distribution) String
func (x *Distribution) String() string
Distribution_ExplicitBuckets
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,proto3" json:"bounds,omitempty"`
// contains filtered or unexported fields
}
Describing buckets with arbitrary user-provided width.
func (*Distribution_ExplicitBuckets) Descriptor
func (*Distribution_ExplicitBuckets) Descriptor() ([]byte, []int)
Deprecated: Use Distribution_ExplicitBuckets.ProtoReflect.Descriptor instead.
func (*Distribution_ExplicitBuckets) GetBounds
func (x *Distribution_ExplicitBuckets) GetBounds() []float64
func (*Distribution_ExplicitBuckets) ProtoMessage
func (*Distribution_ExplicitBuckets) ProtoMessage()
func (*Distribution_ExplicitBuckets) ProtoReflect
func (x *Distribution_ExplicitBuckets) ProtoReflect() protoreflect.Message
func (*Distribution_ExplicitBuckets) Reset
func (x *Distribution_ExplicitBuckets) Reset()
func (*Distribution_ExplicitBuckets) String
func (x *Distribution_ExplicitBuckets) String() string
Distribution_ExplicitBuckets_
type Distribution_ExplicitBuckets_ struct {
// Buckets with arbitrary user-provided width.
ExplicitBuckets *Distribution_ExplicitBuckets `protobuf:"bytes,9,opt,name=explicit_buckets,json=explicitBuckets,proto3,oneof"`
}
Distribution_ExponentialBuckets
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,proto3" 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,proto3" 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,proto3" json:"scale,omitempty"`
// contains filtered or unexported fields
}
Describing buckets with exponentially growing width.
func (*Distribution_ExponentialBuckets) Descriptor
func (*Distribution_ExponentialBuckets) Descriptor() ([]byte, []int)
Deprecated: Use Distribution_ExponentialBuckets.ProtoReflect.Descriptor instead.
func (*Distribution_ExponentialBuckets) GetGrowthFactor
func (x *Distribution_ExponentialBuckets) GetGrowthFactor() float64
func (*Distribution_ExponentialBuckets) GetNumFiniteBuckets
func (x *Distribution_ExponentialBuckets) GetNumFiniteBuckets() int32
func (*Distribution_ExponentialBuckets) GetScale
func (x *Distribution_ExponentialBuckets) GetScale() float64
func (*Distribution_ExponentialBuckets) ProtoMessage
func (*Distribution_ExponentialBuckets) ProtoMessage()
func (*Distribution_ExponentialBuckets) ProtoReflect
func (x *Distribution_ExponentialBuckets) ProtoReflect() protoreflect.Message
func (*Distribution_ExponentialBuckets) Reset
func (x *Distribution_ExponentialBuckets) Reset()
func (*Distribution_ExponentialBuckets) String
func (x *Distribution_ExponentialBuckets) String() string
Distribution_ExponentialBuckets_
type Distribution_ExponentialBuckets_ struct {
// Buckets with exponentially growing width.
ExponentialBuckets *Distribution_ExponentialBuckets `protobuf:"bytes,8,opt,name=exponential_buckets,json=exponentialBuckets,proto3,oneof"`
}
Distribution_LinearBuckets
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,proto3" 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,proto3" 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,proto3" json:"offset,omitempty"`
// contains filtered or unexported fields
}
Describing buckets with constant width.
func (*Distribution_LinearBuckets) Descriptor
func (*Distribution_LinearBuckets) Descriptor() ([]byte, []int)
Deprecated: Use Distribution_LinearBuckets.ProtoReflect.Descriptor instead.
func (*Distribution_LinearBuckets) GetNumFiniteBuckets
func (x *Distribution_LinearBuckets) GetNumFiniteBuckets() int32
func (*Distribution_LinearBuckets) GetOffset
func (x *Distribution_LinearBuckets) GetOffset() float64
func (*Distribution_LinearBuckets) GetWidth
func (x *Distribution_LinearBuckets) GetWidth() float64
func (*Distribution_LinearBuckets) ProtoMessage
func (*Distribution_LinearBuckets) ProtoMessage()
func (*Distribution_LinearBuckets) ProtoReflect
func (x *Distribution_LinearBuckets) ProtoReflect() protoreflect.Message
func (*Distribution_LinearBuckets) Reset
func (x *Distribution_LinearBuckets) Reset()
func (*Distribution_LinearBuckets) String
func (x *Distribution_LinearBuckets) String() string
Distribution_LinearBuckets_
type Distribution_LinearBuckets_ struct {
// Buckets with constant width.
LinearBuckets *Distribution_LinearBuckets `protobuf:"bytes,7,opt,name=linear_buckets,json=linearBuckets,proto3,oneof"`
}
HttpRequest
type HttpRequest struct {
// The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`.
RequestMethod string `protobuf:"bytes,1,opt,name=request_method,json=requestMethod,proto3" json:"request_method,omitempty"`
// The scheme (http, https), the host name, the path, and the query
// portion of the URL that was requested.
// Example: `"http://example.com/some/info?color=red"`.
RequestUrl string `protobuf:"bytes,2,opt,name=request_url,json=requestUrl,proto3" json:"request_url,omitempty"`
// The size of the HTTP request message in bytes, including the request
// headers and the request body.
RequestSize int64 `protobuf:"varint,3,opt,name=request_size,json=requestSize,proto3" json:"request_size,omitempty"`
// The response code indicating the status of the response.
// Examples: 200, 404.
Status int32 `protobuf:"varint,4,opt,name=status,proto3" json:"status,omitempty"`
// The size of the HTTP response message sent back to the client, in bytes,
// including the response headers and the response body.
ResponseSize int64 `protobuf:"varint,5,opt,name=response_size,json=responseSize,proto3" json:"response_size,omitempty"`
// The user agent sent by the client. Example:
// `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET
// CLR 1.0.3705)"`.
UserAgent string `protobuf:"bytes,6,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
// The IP address (IPv4 or IPv6) of the client that issued the HTTP
// request. Examples: `"192.168.1.1"`, `"FE80::0202:B3FF:FE1E:8329"`.
RemoteIp string `protobuf:"bytes,7,opt,name=remote_ip,json=remoteIp,proto3" json:"remote_ip,omitempty"`
// The IP address (IPv4 or IPv6) of the origin server that the request was
// sent to.
ServerIp string `protobuf:"bytes,13,opt,name=server_ip,json=serverIp,proto3" json:"server_ip,omitempty"`
// The referer URL of the request, as defined in
// [HTTP/1.1 Header Field
// Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
Referer string `protobuf:"bytes,8,opt,name=referer,proto3" json:"referer,omitempty"`
// The request processing latency on the server, from the time the request was
// received until the response was sent.
Latency *durationpb.Duration `protobuf:"bytes,14,opt,name=latency,proto3" json:"latency,omitempty"`
// Whether or not a cache lookup was attempted.
CacheLookup bool `protobuf:"varint,11,opt,name=cache_lookup,json=cacheLookup,proto3" json:"cache_lookup,omitempty"`
// Whether or not an entity was served from cache
// (with or without validation).
CacheHit bool `protobuf:"varint,9,opt,name=cache_hit,json=cacheHit,proto3" json:"cache_hit,omitempty"`
// Whether or not the response was validated with the origin server before
// being served from cache. This field is only meaningful if `cache_hit` is
// True.
CacheValidatedWithOriginServer bool `protobuf:"varint,10,opt,name=cache_validated_with_origin_server,json=cacheValidatedWithOriginServer,proto3" json:"cache_validated_with_origin_server,omitempty"`
// The number of HTTP response bytes inserted into cache. Set only when a
// cache fill was attempted.
CacheFillBytes int64 `protobuf:"varint,12,opt,name=cache_fill_bytes,json=cacheFillBytes,proto3" json:"cache_fill_bytes,omitempty"`
// Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket"
Protocol string `protobuf:"bytes,15,opt,name=protocol,proto3" json:"protocol,omitempty"`
// contains filtered or unexported fields
}
A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message.
func (*HttpRequest) Descriptor
func (*HttpRequest) Descriptor() ([]byte, []int)
Deprecated: Use HttpRequest.ProtoReflect.Descriptor instead.
func (*HttpRequest) GetCacheFillBytes
func (x *HttpRequest) GetCacheFillBytes() int64
func (*HttpRequest) GetCacheHit
func (x *HttpRequest) GetCacheHit() bool
func (*HttpRequest) GetCacheLookup
func (x *HttpRequest) GetCacheLookup() bool
func (*HttpRequest) GetCacheValidatedWithOriginServer
func (x *HttpRequest) GetCacheValidatedWithOriginServer() bool
func (*HttpRequest) GetLatency
func (x *HttpRequest) GetLatency() *durationpb.Duration
func (*HttpRequest) GetProtocol
func (x *HttpRequest) GetProtocol() string
func (*HttpRequest) GetReferer
func (x *HttpRequest) GetReferer() string
func (*HttpRequest) GetRemoteIp
func (x *HttpRequest) GetRemoteIp() string
func (*HttpRequest) GetRequestMethod
func (x *HttpRequest) GetRequestMethod() string
func (*HttpRequest) GetRequestSize
func (x *HttpRequest) GetRequestSize() int64
func (*HttpRequest) GetRequestUrl
func (x *HttpRequest) GetRequestUrl() string
func (*HttpRequest) GetResponseSize
func (x *HttpRequest) GetResponseSize() int64
func (*HttpRequest) GetServerIp
func (x *HttpRequest) GetServerIp() string
func (*HttpRequest) GetStatus
func (x *HttpRequest) GetStatus() int32
func (*HttpRequest) GetUserAgent
func (x *HttpRequest) GetUserAgent() string
func (*HttpRequest) ProtoMessage
func (*HttpRequest) ProtoMessage()
func (*HttpRequest) ProtoReflect
func (x *HttpRequest) ProtoReflect() protoreflect.Message
func (*HttpRequest) Reset
func (x *HttpRequest) Reset()
func (*HttpRequest) String
func (x *HttpRequest) String() string
LogEntry
type LogEntry struct {
// Required. The log to which this log entry belongs. Examples: `"syslog"`,
// `"book_log"`.
Name string `protobuf:"bytes,10,opt,name=name,proto3" json:"name,omitempty"`
// The time the event described by the log entry occurred. If
// omitted, defaults to operation start time.
Timestamp *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
// The severity of the log entry. The default value is
// `LogSeverity.DEFAULT`.
Severity _type.LogSeverity `protobuf:"varint,12,opt,name=severity,proto3,enum=google.logging.type.LogSeverity" json:"severity,omitempty"`
// Optional. Information about the HTTP request associated with this
// log entry, if applicable.
HttpRequest *HttpRequest `protobuf:"bytes,14,opt,name=http_request,json=httpRequest,proto3" json:"http_request,omitempty"`
// Optional. Resource name of the trace associated with the log entry, if any.
// If this field contains a relative resource name, you can assume the name is
// relative to `//tracing.googleapis.com`. Example:
// `projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824`
Trace string `protobuf:"bytes,15,opt,name=trace,proto3" json:"trace,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,proto3" 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,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// The log entry payload, which can be one of multiple types.
//
// Types that are assignable to Payload:
//
// *LogEntry_ProtoPayload
// *LogEntry_TextPayload
// *LogEntry_StructPayload
Payload isLogEntry_Payload `protobuf_oneof:"payload"`
// Optional. Information about an operation associated with the log entry, if
// applicable.
Operation *LogEntryOperation `protobuf:"bytes,16,opt,name=operation,proto3" json:"operation,omitempty"`
// Optional. Source code location information associated with the log entry,
// if any.
SourceLocation *LogEntrySourceLocation `protobuf:"bytes,17,opt,name=source_location,json=sourceLocation,proto3" json:"source_location,omitempty"`
// contains filtered or unexported fields
}
An individual log entry.
func (*LogEntry) Descriptor
Deprecated: Use LogEntry.ProtoReflect.Descriptor instead.
func (*LogEntry) GetHttpRequest
func (x *LogEntry) GetHttpRequest() *HttpRequest
func (*LogEntry) GetInsertId
func (*LogEntry) GetLabels
func (*LogEntry) GetName
func (*LogEntry) GetOperation
func (x *LogEntry) GetOperation() *LogEntryOperation
func (*LogEntry) GetPayload
func (m *LogEntry) GetPayload() isLogEntry_Payload
func (*LogEntry) GetProtoPayload
func (*LogEntry) GetSeverity
func (x *LogEntry) GetSeverity() _type.LogSeverity
func (*LogEntry) GetSourceLocation
func (x *LogEntry) GetSourceLocation() *LogEntrySourceLocation
func (*LogEntry) GetStructPayload
func (*LogEntry) GetTextPayload
func (*LogEntry) GetTimestamp
func (x *LogEntry) GetTimestamp() *timestamppb.Timestamp
func (*LogEntry) GetTrace
func (*LogEntry) ProtoMessage
func (*LogEntry) ProtoMessage()
func (*LogEntry) ProtoReflect
func (x *LogEntry) ProtoReflect() protoreflect.Message
func (*LogEntry) Reset
func (x *LogEntry) Reset()
func (*LogEntry) String
LogEntryOperation
type LogEntryOperation struct {
// Optional. An arbitrary operation identifier. Log entries with the
// same identifier are assumed to be part of the same operation.
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// Optional. An arbitrary producer identifier. The combination of
// `id` and `producer` must be globally unique. Examples for `producer`:
// `"MyDivision.MyBigCompany.com"`, `"github.com/MyProject/MyApplication"`.
Producer string `protobuf:"bytes,2,opt,name=producer,proto3" json:"producer,omitempty"`
// Optional. Set this to True if this is the first log entry in the operation.
First bool `protobuf:"varint,3,opt,name=first,proto3" json:"first,omitempty"`
// Optional. Set this to True if this is the last log entry in the operation.
Last bool `protobuf:"varint,4,opt,name=last,proto3" json:"last,omitempty"`
// contains filtered or unexported fields
}
Additional information about a potentially long-running operation with which a log entry is associated.
func (*LogEntryOperation) Descriptor
func (*LogEntryOperation) Descriptor() ([]byte, []int)
Deprecated: Use LogEntryOperation.ProtoReflect.Descriptor instead.
func (*LogEntryOperation) GetFirst
func (x *LogEntryOperation) GetFirst() bool
func (*LogEntryOperation) GetId
func (x *LogEntryOperation) GetId() string
func (*LogEntryOperation) GetLast
func (x *LogEntryOperation) GetLast() bool
func (*LogEntryOperation) GetProducer
func (x *LogEntryOperation) GetProducer() string
func (*LogEntryOperation) ProtoMessage
func (*LogEntryOperation) ProtoMessage()
func (*LogEntryOperation) ProtoReflect
func (x *LogEntryOperation) ProtoReflect() protoreflect.Message
func (*LogEntryOperation) Reset
func (x *LogEntryOperation) Reset()
func (*LogEntryOperation) String
func (x *LogEntryOperation) String() string
LogEntrySourceLocation
type LogEntrySourceLocation struct {
// Optional. Source file name. Depending on the runtime environment, this
// might be a simple name or a fully-qualified name.
File string `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"`
// Optional. Line within the source file. 1-based; 0 indicates no line number
// available.
Line int64 `protobuf:"varint,2,opt,name=line,proto3" json:"line,omitempty"`
// Optional. Human-readable name of the function or method being invoked, with
// optional context such as the class or package name. This information may be
// used in contexts such as the logs viewer, where a file and line number are
// less meaningful. The format can vary by language. For example:
// `qual.if.ied.Class.method` (Java), `dir/package.func` (Go), `function`
// (Python).
Function string `protobuf:"bytes,3,opt,name=function,proto3" json:"function,omitempty"`
// contains filtered or unexported fields
}
Additional information about the source code location that produced the log entry.
func (*LogEntrySourceLocation) Descriptor
func (*LogEntrySourceLocation) Descriptor() ([]byte, []int)
Deprecated: Use LogEntrySourceLocation.ProtoReflect.Descriptor instead.
func (*LogEntrySourceLocation) GetFile
func (x *LogEntrySourceLocation) GetFile() string
func (*LogEntrySourceLocation) GetFunction
func (x *LogEntrySourceLocation) GetFunction() string
func (*LogEntrySourceLocation) GetLine
func (x *LogEntrySourceLocation) GetLine() int64
func (*LogEntrySourceLocation) ProtoMessage
func (*LogEntrySourceLocation) ProtoMessage()
func (*LogEntrySourceLocation) ProtoReflect
func (x *LogEntrySourceLocation) ProtoReflect() protoreflect.Message
func (*LogEntrySourceLocation) Reset
func (x *LogEntrySourceLocation) Reset()
func (*LogEntrySourceLocation) String
func (x *LogEntrySourceLocation) String() string
LogEntry_ProtoPayload
type LogEntry_ProtoPayload struct {
// The log entry payload, represented as a protocol buffer that is
// expressed as a JSON object. The only accepted type currently is
// [AuditLog][google.cloud.audit.AuditLog].
ProtoPayload *anypb.Any `protobuf:"bytes,2,opt,name=proto_payload,json=protoPayload,proto3,oneof"`
}
LogEntry_StructPayload
type LogEntry_StructPayload struct {
// The log entry payload, represented as a structure that
// is expressed as a JSON object.
StructPayload *structpb.Struct `protobuf:"bytes,6,opt,name=struct_payload,json=structPayload,proto3,oneof"`
}
LogEntry_TextPayload
type LogEntry_TextPayload struct {
// The log entry payload, represented as a Unicode string (UTF-8).
TextPayload string `protobuf:"bytes,3,opt,name=text_payload,json=textPayload,proto3,oneof"`
}
MetricValue
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.
// Note that this map must not contain monitored resource labels.
Labels map[string]string `protobuf:"bytes,1,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// 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. If not specified,
// [google.api.servicecontrol.v1.Operation.start_time][google.api.servicecontrol.v1.Operation.start_time] will be used.
StartTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
// The end of the time period over which this metric value's measurement
// applies. If not specified,
// [google.api.servicecontrol.v1.Operation.end_time][google.api.servicecontrol.v1.Operation.end_time] will be used.
EndTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=end_time,json=endTime,proto3" 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 assignable to Value:
//
// *MetricValue_BoolValue
// *MetricValue_Int64Value
// *MetricValue_DoubleValue
// *MetricValue_StringValue
// *MetricValue_DistributionValue
Value isMetricValue_Value `protobuf_oneof:"value"`
// contains filtered or unexported fields
}
Represents a single metric value.
func (*MetricValue) Descriptor
func (*MetricValue) Descriptor() ([]byte, []int)
Deprecated: Use MetricValue.ProtoReflect.Descriptor instead.
func (*MetricValue) GetBoolValue
func (x *MetricValue) GetBoolValue() bool
func (*MetricValue) GetDistributionValue
func (x *MetricValue) GetDistributionValue() *Distribution
func (*MetricValue) GetDoubleValue
func (x *MetricValue) GetDoubleValue() float64
func (*MetricValue) GetEndTime
func (x *MetricValue) GetEndTime() *timestamppb.Timestamp
func (*MetricValue) GetInt64Value
func (x *MetricValue) GetInt64Value() int64
func (*MetricValue) GetLabels
func (x *MetricValue) GetLabels() map[string]string
func (*MetricValue) GetStartTime
func (x *MetricValue) GetStartTime() *timestamppb.Timestamp
func (*MetricValue) GetStringValue
func (x *MetricValue) GetStringValue() string
func (*MetricValue) GetValue
func (m *MetricValue) GetValue() isMetricValue_Value
func (*MetricValue) ProtoMessage
func (*MetricValue) ProtoMessage()
func (*MetricValue) ProtoReflect
func (x *MetricValue) ProtoReflect() protoreflect.Message
func (*MetricValue) Reset
func (x *MetricValue) Reset()
func (*MetricValue) String
func (x *MetricValue) String() string
MetricValueSet
type MetricValueSet struct {
// The metric name defined in the service configuration.
MetricName string `protobuf:"bytes,1,opt,name=metric_name,json=metricName,proto3" json:"metric_name,omitempty"`
// The values in this metric.
MetricValues []*MetricValue `protobuf:"bytes,2,rep,name=metric_values,json=metricValues,proto3" json:"metric_values,omitempty"`
// contains filtered or unexported fields
}
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.
func (*MetricValueSet) Descriptor
func (*MetricValueSet) Descriptor() ([]byte, []int)
Deprecated: Use MetricValueSet.ProtoReflect.Descriptor instead.
func (*MetricValueSet) GetMetricName
func (x *MetricValueSet) GetMetricName() string
func (*MetricValueSet) GetMetricValues
func (x *MetricValueSet) GetMetricValues() []*MetricValue
func (*MetricValueSet) ProtoMessage
func (*MetricValueSet) ProtoMessage()
func (*MetricValueSet) ProtoReflect
func (x *MetricValueSet) ProtoReflect() protoreflect.Message
func (*MetricValueSet) Reset
func (x *MetricValueSet) Reset()
func (*MetricValueSet) String
func (x *MetricValueSet) String() string
MetricValue_BoolValue
type MetricValue_BoolValue struct {
// A boolean value.
BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,proto3,oneof"`
}
MetricValue_DistributionValue
type MetricValue_DistributionValue struct {
// A distribution value.
DistributionValue *Distribution `protobuf:"bytes,8,opt,name=distribution_value,json=distributionValue,proto3,oneof"`
}
MetricValue_DoubleValue
type MetricValue_DoubleValue struct {
// A double precision floating point value.
DoubleValue float64 `protobuf:"fixed64,6,opt,name=double_value,json=doubleValue,proto3,oneof"`
}
MetricValue_Int64Value
type MetricValue_Int64Value struct {
// A signed 64-bit integer value.
Int64Value int64 `protobuf:"varint,5,opt,name=int64_value,json=int64Value,proto3,oneof"`
}
MetricValue_StringValue
type MetricValue_StringValue struct {
// A text string value.
StringValue string `protobuf:"bytes,7,opt,name=string_value,json=stringValue,proto3,oneof"`
}
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,proto3" 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,proto3" 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,
// - projects/PROJECT_ID or PROJECT_NUMBER,
// - folders/FOLDER_NUMBER,
// - organizations/ORGANIZATION_NUMBER,
// - api`_`key:API_KEY.
ConsumerId string `protobuf:"bytes,3,opt,name=consumer_id,json=consumerId,proto3" json:"consumer_id,omitempty"`
// Required. Start time of the operation.
StartTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=start_time,json=startTime,proto3" 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 *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=end_time,json=endTime,proto3" 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, such as App Engine, Compute Engine, or
// Kubernetes Engine.
Labels map[string]string `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// 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,proto3" json:"metric_value_sets,omitempty"`
// Represents information to be logged.
LogEntries []*LogEntry `protobuf:"bytes,8,rep,name=log_entries,json=logEntries,proto3" json:"log_entries,omitempty"`
// DO NOT USE. This is an experimental field.
Importance Operation_Importance `protobuf:"varint,11,opt,name=importance,proto3,enum=google.api.servicecontrol.v1.Operation_Importance" json:"importance,omitempty"`
// Unimplemented.
Extensions []*anypb.Any `protobuf:"bytes,16,rep,name=extensions,proto3" json:"extensions,omitempty"`
// contains filtered or unexported fields
}
Represents information regarding an operation.
func (*Operation) Descriptor
Deprecated: Use Operation.ProtoReflect.Descriptor instead.
func (*Operation) GetConsumerId
func (*Operation) GetEndTime
func (x *Operation) GetEndTime() *timestamppb.Timestamp
func (*Operation) GetExtensions
func (*Operation) GetImportance
func (x *Operation) GetImportance() Operation_Importance
func (*Operation) GetLabels
func (*Operation) GetLogEntries
func (*Operation) GetMetricValueSets
func (x *Operation) GetMetricValueSets() []*MetricValueSet
func (*Operation) GetOperationId
func (*Operation) GetOperationName
func (*Operation) GetStartTime
func (x *Operation) GetStartTime() *timestamppb.Timestamp
func (*Operation) ProtoMessage
func (*Operation) ProtoMessage()
func (*Operation) ProtoReflect
func (x *Operation) ProtoReflect() protoreflect.Message
func (*Operation) Reset
func (x *Operation) Reset()
func (*Operation) String
Operation_Importance
type Operation_Importance int32
Defines the importance of the data contained in the operation.
Operation_LOW, Operation_HIGH
const (
// Allows data caching, batching, and aggregation. It provides
// higher performance with higher data loss risk.
Operation_LOW Operation_Importance = 0
// Disables data aggregation to minimize data loss. It is for operations
// that contains significant monetary value or audit trail. This feature
// only applies to the client libraries.
Operation_HIGH Operation_Importance = 1
)
func (Operation_Importance) Descriptor
func (Operation_Importance) Descriptor() protoreflect.EnumDescriptor
func (Operation_Importance) Enum
func (x Operation_Importance) Enum() *Operation_Importance
func (Operation_Importance) EnumDescriptor
func (Operation_Importance) EnumDescriptor() ([]byte, []int)
Deprecated: Use Operation_Importance.Descriptor instead.
func (Operation_Importance) Number
func (x Operation_Importance) Number() protoreflect.EnumNumber
func (Operation_Importance) String
func (x Operation_Importance) String() string
func (Operation_Importance) Type
func (Operation_Importance) Type() protoreflect.EnumType
QuotaControllerClient
type QuotaControllerClient interface {
// Attempts to allocate quota for the specified consumer. It should be called
// before the operation is executed.
//
// This method requires the `servicemanagement.services.quota`
// permission on the specified service. For more information, see
// [Cloud IAM](https://cloud.google.com/iam).
//
// **NOTE:** The client **must** fail-open on server errors `INTERNAL`,
// `UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system
// reliability, the server may inject these errors to prohibit any hard
// dependency on the quota functionality.
AllocateQuota(ctx context.Context, in *AllocateQuotaRequest, opts ...grpc.CallOption) (*AllocateQuotaResponse, error)
}
QuotaControllerClient is the client API for QuotaController service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewQuotaControllerClient
func NewQuotaControllerClient(cc grpc.ClientConnInterface) QuotaControllerClient
QuotaControllerServer
type QuotaControllerServer interface {
// Attempts to allocate quota for the specified consumer. It should be called
// before the operation is executed.
//
// This method requires the `servicemanagement.services.quota`
// permission on the specified service. For more information, see
// [Cloud IAM](https://cloud.google.com/iam).
//
// **NOTE:** The client **must** fail-open on server errors `INTERNAL`,
// `UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system
// reliability, the server may inject these errors to prohibit any hard
// dependency on the quota functionality.
AllocateQuota(context.Context, *AllocateQuotaRequest) (*AllocateQuotaResponse, error)
}
QuotaControllerServer is the server API for QuotaController service.
QuotaError
type QuotaError struct {
// Error code.
Code QuotaError_Code `protobuf:"varint,1,opt,name=code,proto3,enum=google.api.servicecontrol.v1.QuotaError_Code" json:"code,omitempty"`
// Subject to whom this error applies. See the specific enum for more details
// on this field. For example, "clientip:
Represents error information for [QuotaOperation][google.api.servicecontrol.v1.QuotaOperation].
func (*QuotaError) Descriptor
func (*QuotaError) Descriptor() ([]byte, []int)
Deprecated: Use QuotaError.ProtoReflect.Descriptor instead.
func (*QuotaError) GetCode
func (x *QuotaError) GetCode() QuotaError_Code
func (*QuotaError) GetDescription
func (x *QuotaError) GetDescription() string
func (*QuotaError) GetStatus
func (x *QuotaError) GetStatus() *status.Status
func (*QuotaError) GetSubject
func (x *QuotaError) GetSubject() string
func (*QuotaError) ProtoMessage
func (*QuotaError) ProtoMessage()
func (*QuotaError) ProtoReflect
func (x *QuotaError) ProtoReflect() protoreflect.Message
func (*QuotaError) Reset
func (x *QuotaError) Reset()
func (*QuotaError) String
func (x *QuotaError) String() string
QuotaError_Code
type QuotaError_Code int32
Error codes related to project config validations are deprecated since the quota controller methods do not perform these validations. Instead services have to call the Check method, without quota_properties field, to perform these validations before calling the quota controller methods. These methods check only for project deletion to be wipe out compliant.
QuotaError_UNSPECIFIED, QuotaError_RESOURCE_EXHAUSTED, QuotaError_BILLING_NOT_ACTIVE, QuotaError_PROJECT_DELETED, QuotaError_API_KEY_INVALID, QuotaError_API_KEY_EXPIRED
const (
// This is never used.
QuotaError_UNSPECIFIED QuotaError_Code = 0
// Quota allocation failed.
// Same as [google.rpc.Code.RESOURCE_EXHAUSTED][google.rpc.Code.RESOURCE_EXHAUSTED].
QuotaError_RESOURCE_EXHAUSTED QuotaError_Code = 8
// Consumer cannot access the service because the service requires active
// billing.
QuotaError_BILLING_NOT_ACTIVE QuotaError_Code = 107
// Consumer's project has been marked as deleted (soft deletion).
QuotaError_PROJECT_DELETED QuotaError_Code = 108
// Specified API key is invalid.
QuotaError_API_KEY_INVALID QuotaError_Code = 105
// Specified API Key has expired.
QuotaError_API_KEY_EXPIRED QuotaError_Code = 112
)
func (QuotaError_Code) Descriptor
func (QuotaError_Code) Descriptor() protoreflect.EnumDescriptor
func (QuotaError_Code) Enum
func (x QuotaError_Code) Enum() *QuotaError_Code
func (QuotaError_Code) EnumDescriptor
func (QuotaError_Code) EnumDescriptor() ([]byte, []int)
Deprecated: Use QuotaError_Code.Descriptor instead.
func (QuotaError_Code) Number
func (x QuotaError_Code) Number() protoreflect.EnumNumber
func (QuotaError_Code) String
func (x QuotaError_Code) String() string
func (QuotaError_Code) Type
func (QuotaError_Code) Type() protoreflect.EnumType
QuotaOperation
type QuotaOperation struct {
// Identity of the operation. This is expected to be unique within the scope
// of the service that generated the operation, and guarantees idempotency in
// case of retries.
//
// In order to ensure best performance and latency in the Quota backends,
// operation_ids are optimally associated with time, so that related
// operations can be accessed fast in storage. For this reason, the
// recommended token for services that intend to operate at a high QPS is
// Unix time in nanos + UUID
OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"`
// Fully qualified name of the API method for which this quota operation is
// requested. This name is used for matching quota rules or metric rules and
// billing status rules defined in service configuration.
//
// This field should not be set if any of the following is true:
// (1) the quota operation is performed on non-API resources.
// (2) quota_metrics is set because the caller is doing quota override.
//
// Example of an RPC method name:
//
// google.example.library.v1.LibraryService.CreateShelf
MethodName string `protobuf:"bytes,2,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
// Identity of the consumer for whom this quota operation is being performed.
//
// This can be in one of the following formats:
//
// project:
Represents information regarding a quota operation.
func (*QuotaOperation) Descriptor
func (*QuotaOperation) Descriptor() ([]byte, []int)
Deprecated: Use QuotaOperation.ProtoReflect.Descriptor instead.
func (*QuotaOperation) GetConsumerId
func (x *QuotaOperation) GetConsumerId() string
func (*QuotaOperation) GetLabels
func (x *QuotaOperation) GetLabels() map[string]string
func (*QuotaOperation) GetMethodName
func (x *QuotaOperation) GetMethodName() string
func (*QuotaOperation) GetOperationId
func (x *QuotaOperation) GetOperationId() string
func (*QuotaOperation) GetQuotaMetrics
func (x *QuotaOperation) GetQuotaMetrics() []*MetricValueSet
func (*QuotaOperation) GetQuotaMode
func (x *QuotaOperation) GetQuotaMode() QuotaOperation_QuotaMode
func (*QuotaOperation) ProtoMessage
func (*QuotaOperation) ProtoMessage()
func (*QuotaOperation) ProtoReflect
func (x *QuotaOperation) ProtoReflect() protoreflect.Message
func (*QuotaOperation) Reset
func (x *QuotaOperation) Reset()
func (*QuotaOperation) String
func (x *QuotaOperation) String() string
QuotaOperation_QuotaMode
type QuotaOperation_QuotaMode int32
Supported quota modes.
QuotaOperation_UNSPECIFIED, QuotaOperation_NORMAL, QuotaOperation_BEST_EFFORT, QuotaOperation_CHECK_ONLY, QuotaOperation_QUERY_ONLY, QuotaOperation_ADJUST_ONLY
const (
// Guard against implicit default. Must not be used.
QuotaOperation_UNSPECIFIED QuotaOperation_QuotaMode = 0
// For AllocateQuota request, allocates quota for the amount specified in
// the service configuration or specified using the quota metrics. If the
// amount is higher than the available quota, allocation error will be
// returned and no quota will be allocated.
// If multiple quotas are part of the request, and one fails, none of the
// quotas are allocated or released.
QuotaOperation_NORMAL QuotaOperation_QuotaMode = 1
// The operation allocates quota for the amount specified in the service
// configuration or specified using the quota metrics. If the amount is
// higher than the available quota, request does not fail but all available
// quota will be allocated.
// For rate quota, BEST_EFFORT will continue to deduct from other groups
// even if one does not have enough quota. For allocation, it will find the
// minimum available amount across all groups and deduct that amount from
// all the affected groups.
QuotaOperation_BEST_EFFORT QuotaOperation_QuotaMode = 2
// For AllocateQuota request, only checks if there is enough quota
// available and does not change the available quota. No lock is placed on
// the available quota either.
QuotaOperation_CHECK_ONLY QuotaOperation_QuotaMode = 3
// Unimplemented. When used in AllocateQuotaRequest, this returns the
// effective quota limit(s) in the response, and no quota check will be
// performed. Not supported for other requests, and even for
// AllocateQuotaRequest, this is currently supported only for allowlisted
// services.
QuotaOperation_QUERY_ONLY QuotaOperation_QuotaMode = 4
// The operation allocates quota for the amount specified in the service
// configuration or specified using the quota metrics. If the requested
// amount is higher than the available quota, request does not fail and
// remaining quota would become negative (going over the limit).
// Not supported for Rate Quota.
QuotaOperation_ADJUST_ONLY QuotaOperation_QuotaMode = 5
)
func (QuotaOperation_QuotaMode) Descriptor
func (QuotaOperation_QuotaMode) Descriptor() protoreflect.EnumDescriptor
func (QuotaOperation_QuotaMode) Enum
func (x QuotaOperation_QuotaMode) Enum() *QuotaOperation_QuotaMode
func (QuotaOperation_QuotaMode) EnumDescriptor
func (QuotaOperation_QuotaMode) EnumDescriptor() ([]byte, []int)
Deprecated: Use QuotaOperation_QuotaMode.Descriptor instead.
func (QuotaOperation_QuotaMode) Number
func (x QuotaOperation_QuotaMode) Number() protoreflect.EnumNumber
func (QuotaOperation_QuotaMode) String
func (x QuotaOperation_QuotaMode) String() string
func (QuotaOperation_QuotaMode) Type
func (QuotaOperation_QuotaMode) Type() protoreflect.EnumType
ReportRequest
type ReportRequest struct {
// The service name as specified in its service configuration. For example,
// `"pubsub.googleapis.com"`.
//
// See
// [google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)
// for the definition of a service name.
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" 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.
//
// There is no limit on the number of operations in the same ReportRequest,
// however the ReportRequest 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,proto3" 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,proto3" json:"service_config_id,omitempty"`
// contains filtered or unexported fields
}
Request message for the Report method.
func (*ReportRequest) Descriptor
func (*ReportRequest) Descriptor() ([]byte, []int)
Deprecated: Use ReportRequest.ProtoReflect.Descriptor instead.
func (*ReportRequest) GetOperations
func (x *ReportRequest) GetOperations() []*Operation
func (*ReportRequest) GetServiceConfigId
func (x *ReportRequest) GetServiceConfigId() string
func (*ReportRequest) GetServiceName
func (x *ReportRequest) GetServiceName() string
func (*ReportRequest) ProtoMessage
func (*ReportRequest) ProtoMessage()
func (*ReportRequest) ProtoReflect
func (x *ReportRequest) ProtoReflect() protoreflect.Message
func (*ReportRequest) Reset
func (x *ReportRequest) Reset()
func (*ReportRequest) String
func (x *ReportRequest) String() string
ReportResponse
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 general non-deterministic failure.
// When this happens, it's impossible to know which of the
// 'Operations' in the request succeeded or failed.
ReportErrors []*ReportResponse_ReportError `protobuf:"bytes,1,rep,name=report_errors,json=reportErrors,proto3" 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,proto3" json:"service_config_id,omitempty"`
// The current service rollout id used to process the request.
ServiceRolloutId string `protobuf:"bytes,4,opt,name=service_rollout_id,json=serviceRolloutId,proto3" json:"service_rollout_id,omitempty"`
// contains filtered or unexported fields
}
Response message for the Report method.
func (*ReportResponse) Descriptor
func (*ReportResponse) Descriptor() ([]byte, []int)
Deprecated: Use ReportResponse.ProtoReflect.Descriptor instead.
func (*ReportResponse) GetReportErrors
func (x *ReportResponse) GetReportErrors() []*ReportResponse_ReportError
func (*ReportResponse) GetServiceConfigId
func (x *ReportResponse) GetServiceConfigId() string
func (*ReportResponse) GetServiceRolloutId
func (x *ReportResponse) GetServiceRolloutId() string
func (*ReportResponse) ProtoMessage
func (*ReportResponse) ProtoMessage()
func (*ReportResponse) ProtoReflect
func (x *ReportResponse) ProtoReflect() protoreflect.Message
func (*ReportResponse) Reset
func (x *ReportResponse) Reset()
func (*ReportResponse) String
func (x *ReportResponse) String() string
ReportResponse_ReportError
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,proto3" json:"operation_id,omitempty"`
// Details of the error when processing the
// [Operation][google.api.servicecontrol.v1.Operation].
Status *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
// contains filtered or unexported fields
}
Represents the processing error of one [Operation][google.api.servicecontrol.v1.Operation] in the request.
func (*ReportResponse_ReportError) Descriptor
func (*ReportResponse_ReportError) Descriptor() ([]byte, []int)
Deprecated: Use ReportResponse_ReportError.ProtoReflect.Descriptor instead.
func (*ReportResponse_ReportError) GetOperationId
func (x *ReportResponse_ReportError) GetOperationId() string
func (*ReportResponse_ReportError) GetStatus
func (x *ReportResponse_ReportError) GetStatus() *status.Status
func (*ReportResponse_ReportError) ProtoMessage
func (*ReportResponse_ReportError) ProtoMessage()
func (*ReportResponse_ReportError) ProtoReflect
func (x *ReportResponse_ReportError) ProtoReflect() protoreflect.Message
func (*ReportResponse_ReportError) Reset
func (x *ReportResponse_ReportError) Reset()
func (*ReportResponse_ReportError) String
func (x *ReportResponse_ReportError) String() string
ServiceControllerClient
type ServiceControllerClient interface {
// Checks whether an operation on a service should be allowed to proceed
// based on the configuration of the service and related policies. It must be
// called before the operation is executed.
//
// If feasible, the client should cache the check results and reuse them for
// 60 seconds. In case of any server errors, the client should rely on the
// cached results for much longer time to avoid outage.
// WARNING: There is general 60s delay for the configuration and policy
// propagation, therefore callers MUST NOT depend on the `Check` method having
// the latest policy information.
//
// NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has
// the size limit (wire-format byte size) of 1MB.
//
// This method requires the `servicemanagement.services.check` permission
// on the specified service. For more information, see
// [Cloud IAM](https://cloud.google.com/iam).
Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error)
// Reports operation results to Google Service Control, such as logs and
// metrics. It should be called after an operation is completed.
//
// If feasible, the client should aggregate reporting data for up to 5
// seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
// reduce data loss during client crashes. Clients should carefully choose
// the aggregation time window to avoid data loss risk more than 0.01%
// for business and compliance reasons.
//
// NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has
// the size limit (wire-format byte size) of 1MB.
//
// 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)
}
ServiceControllerClient is the client API for ServiceController service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewServiceControllerClient
func NewServiceControllerClient(cc grpc.ClientConnInterface) ServiceControllerClient
ServiceControllerServer
type ServiceControllerServer interface {
// Checks whether an operation on a service should be allowed to proceed
// based on the configuration of the service and related policies. It must be
// called before the operation is executed.
//
// If feasible, the client should cache the check results and reuse them for
// 60 seconds. In case of any server errors, the client should rely on the
// cached results for much longer time to avoid outage.
// WARNING: There is general 60s delay for the configuration and policy
// propagation, therefore callers MUST NOT depend on the `Check` method having
// the latest policy information.
//
// NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has
// the size limit (wire-format byte size) of 1MB.
//
// This method requires the `servicemanagement.services.check` permission
// on the specified service. For more information, see
// [Cloud IAM](https://cloud.google.com/iam).
Check(context.Context, *CheckRequest) (*CheckResponse, error)
// Reports operation results to Google Service Control, such as logs and
// metrics. It should be called after an operation is completed.
//
// If feasible, the client should aggregate reporting data for up to 5
// seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
// reduce data loss during client crashes. Clients should carefully choose
// the aggregation time window to avoid data loss risk more than 0.01%
// for business and compliance reasons.
//
// NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has
// the size limit (wire-format byte size) of 1MB.
//
// 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)
}
ServiceControllerServer is the server API for ServiceController service.
UnimplementedQuotaControllerServer
type UnimplementedQuotaControllerServer struct {
}
UnimplementedQuotaControllerServer can be embedded to have forward compatible implementations.
func (*UnimplementedQuotaControllerServer) AllocateQuota
func (*UnimplementedQuotaControllerServer) AllocateQuota(context.Context, *AllocateQuotaRequest) (*AllocateQuotaResponse, error)
UnimplementedServiceControllerServer
type UnimplementedServiceControllerServer struct {
}
UnimplementedServiceControllerServer can be embedded to have forward compatible implementations.
func (*UnimplementedServiceControllerServer) Check
func (*UnimplementedServiceControllerServer) Check(context.Context, *CheckRequest) (*CheckResponse, error)
func (*UnimplementedServiceControllerServer) Report
func (*UnimplementedServiceControllerServer) Report(context.Context, *ReportRequest) (*ReportResponse, error)