servicecontrol

package
v0.0.0-...-52d6a69 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 19, 2019 License: Apache-2.0, Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package servicecontrol is a generated protocol buffer package.

It is generated from these files:

google/api/servicecontrol/v1/check_error.proto
google/api/servicecontrol/v1/distribution.proto
google/api/servicecontrol/v1/log_entry.proto
google/api/servicecontrol/v1/metric_value.proto
google/api/servicecontrol/v1/operation.proto
google/api/servicecontrol/v1/service_controller.proto

It has these top-level messages:

CheckError
Distribution
LogEntry
MetricValue
MetricValueSet
Operation
CheckRequest
CheckResponse
ReportRequest
ReportResponse

Index

Constants

This section is empty.

Variables

View Source
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",
}
View Source
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,
}
View Source
var Operation_Importance_name = map[int32]string{
	0: "LOW",
	1: "HIGH",
}
View Source
var Operation_Importance_value = map[string]int32{
	"LOW":  0,
	"HIGH": 1,
}

Functions

func RegisterServiceControllerServer

func RegisterServiceControllerServer(s *grpc.Server, srv ServiceControllerServer)

Types

type CheckError

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"`
}

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)

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

type CheckError_Code int32

Error codes for Check responses.

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

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"`
}

Request message for the Check method.

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

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"`
	// Feedback data returned from the server during processing a Check request.
	CheckInfo *CheckResponse_CheckInfo `protobuf:"bytes,6,opt,name=check_info,json=checkInfo" json:"check_info,omitempty"`
}

Response message for the Check method.

func (*CheckResponse) Descriptor

func (*CheckResponse) Descriptor() ([]byte, []int)

func (*CheckResponse) GetCheckErrors

func (m *CheckResponse) GetCheckErrors() []*CheckError

func (*CheckResponse) GetCheckInfo

func (m *CheckResponse) GetCheckInfo() *CheckResponse_CheckInfo

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 CheckResponse_CheckInfo

type CheckResponse_CheckInfo struct {
	// Consumer info of this check.
	ConsumerInfo *CheckResponse_ConsumerInfo `protobuf:"bytes,2,opt,name=consumer_info,json=consumerInfo" json:"consumer_info,omitempty"`
}

func (*CheckResponse_CheckInfo) Descriptor

func (*CheckResponse_CheckInfo) Descriptor() ([]byte, []int)

func (*CheckResponse_CheckInfo) GetConsumerInfo

func (*CheckResponse_CheckInfo) ProtoMessage

func (*CheckResponse_CheckInfo) ProtoMessage()

func (*CheckResponse_CheckInfo) Reset

func (m *CheckResponse_CheckInfo) Reset()

func (*CheckResponse_CheckInfo) String

func (m *CheckResponse_CheckInfo) String() string

type CheckResponse_ConsumerInfo

type CheckResponse_ConsumerInfo struct {
	// The Google cloud project number, e.g. 1234567890. A value of 0 indicates
	// no project number is found.
	ProjectNumber int64 `protobuf:"varint,1,opt,name=project_number,json=projectNumber" json:"project_number,omitempty"`
}

`ConsumerInfo` provides information about the consumer project.

func (*CheckResponse_ConsumerInfo) Descriptor

func (*CheckResponse_ConsumerInfo) Descriptor() ([]byte, []int)

func (*CheckResponse_ConsumerInfo) GetProjectNumber

func (m *CheckResponse_ConsumerInfo) GetProjectNumber() int64

func (*CheckResponse_ConsumerInfo) ProtoMessage

func (*CheckResponse_ConsumerInfo) ProtoMessage()

func (*CheckResponse_ConsumerInfo) Reset

func (m *CheckResponse_ConsumerInfo) Reset()

func (*CheckResponse_ConsumerInfo) String

func (m *CheckResponse_ConsumerInfo) String() string

type Distribution

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"`
}

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)

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

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"`
}

Describing buckets with arbitrary user-provided width.

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

type Distribution_ExplicitBuckets_

type Distribution_ExplicitBuckets_ struct {
	ExplicitBuckets *Distribution_ExplicitBuckets `protobuf:"bytes,9,opt,name=explicit_buckets,json=explicitBuckets,oneof"`
}

type 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" 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"`
}

Describing buckets with exponentially growing width.

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 (*Distribution_ExponentialBuckets) ProtoMessage

func (*Distribution_ExponentialBuckets) ProtoMessage()

func (*Distribution_ExponentialBuckets) Reset

func (*Distribution_ExponentialBuckets) String

type Distribution_ExponentialBuckets_

type Distribution_ExponentialBuckets_ struct {
	ExponentialBuckets *Distribution_ExponentialBuckets `protobuf:"bytes,8,opt,name=exponential_buckets,json=exponentialBuckets,oneof"`
}

type 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" 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"`
}

Describing buckets with constant width.

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

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 `` /* 133-byte string literal not displayed */
	// 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"`
}

An individual log entry.

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

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 `` /* 132-byte string literal not displayed */
	// 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"`
}

Represents a single metric 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

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"`
}

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)

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

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 `` /* 132-byte string literal not displayed */
	// 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"`
}

Represents information regarding an operation.

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

type Operation_Importance int32

Defines the importance of the data contained in the operation.

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

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"`
}

Request message for the Report method.

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

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" 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"`
}

Response message for the Report method.

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

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"`
}

Represents the processing error of one `Operation` in the request.

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 (*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
	// 60 seconds. In case of server errors, the client can rely on the cached
	// results for longer time.
	//
	// NOTE: the `CheckRequest` has the size limit of 64KB.
	//
	// 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 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` has the size limit 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)
}

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
	// 60 seconds. In case of server errors, the client can rely on the cached
	// results for longer time.
	//
	// NOTE: the `CheckRequest` has the size limit of 64KB.
	//
	// 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 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` has the size limit 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)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL