Documentation

Overview

Package monitoring provides access to the Cloud Monitoring API.

This package is DEPRECATED. Use package cloud.google.com/go/monitoring/apiv3 instead.

For product documentation, see: https://cloud.google.com/monitoring/api/

Creating a client

Usage example:

import "google.golang.org/api/monitoring/v3"
...
ctx := context.Background()
monitoringService, err := monitoring.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication.

For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:

monitoringService, err := monitoring.NewService(ctx, option.WithScopes(monitoring.MonitoringWriteScope))

To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:

monitoringService, err := monitoring.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
monitoringService, err := monitoring.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See https://godoc.org/google.golang.org/api/option/ for details on options.

Index

Constants

View Source
const (
	// See, edit, configure, and delete your Google Cloud Platform data
	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"

	// View and write monitoring data for all of your Google and third-party
	// Cloud and API projects
	MonitoringScope = "https://www.googleapis.com/auth/monitoring"

	// View monitoring data for all of your Google Cloud and third-party
	// projects
	MonitoringReadScope = "https://www.googleapis.com/auth/monitoring.read"

	// Publish metric data to your Google Cloud projects
	MonitoringWriteScope = "https://www.googleapis.com/auth/monitoring.write"
)

    OAuth2 scopes used by this API.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type Aggregation

    type Aggregation struct {
    	// AlignmentPeriod: The alignment_period specifies a time interval, in
    	// seconds, that is used to divide the data in all the time series into
    	// consistent blocks of time. This will be done before the per-series
    	// aligner can be applied to the data.The value must be at least 60
    	// seconds. If a per-series aligner other than ALIGN_NONE is specified,
    	// this field is required or an error is returned. If no per-series
    	// aligner is specified, or the aligner ALIGN_NONE is specified, then
    	// this field is ignored.The maximum value of the alignment_period is
    	// 104 weeks (2 years) for charts, and 90,000 seconds (25 hours) for
    	// alerting policies.
    	AlignmentPeriod string `json:"alignmentPeriod,omitempty"`
    
    	// CrossSeriesReducer: The reduction operation to be used to combine
    	// time series into a single time series, where the value of each data
    	// point in the resulting series is a function of all the already
    	// aligned values in the input time series.Not all reducer operations
    	// can be applied to all time series. The valid choices depend on the
    	// metric_kind and the value_type of the original time series. Reduction
    	// can yield a time series with a different metric_kind or value_type
    	// than the input time series.Time series data must first be aligned
    	// (see per_series_aligner) in order to perform cross-time series
    	// reduction. If cross_series_reducer is specified, then
    	// per_series_aligner must be specified, and must not be ALIGN_NONE. An
    	// alignment_period must also be specified; otherwise, an error is
    	// returned.
    	//
    	// Possible values:
    	//   "REDUCE_NONE" - No cross-time series reduction. The output of the
    	// Aligner is returned.
    	//   "REDUCE_MEAN" - Reduce by computing the mean value across time
    	// series for each alignment period. This reducer is valid for DELTA and
    	// GAUGE metrics with numeric or distribution values. The value_type of
    	// the output is DOUBLE.
    	//   "REDUCE_MIN" - Reduce by computing the minimum value across time
    	// series for each alignment period. This reducer is valid for DELTA and
    	// GAUGE metrics with numeric values. The value_type of the output is
    	// the same as the value_type of the input.
    	//   "REDUCE_MAX" - Reduce by computing the maximum value across time
    	// series for each alignment period. This reducer is valid for DELTA and
    	// GAUGE metrics with numeric values. The value_type of the output is
    	// the same as the value_type of the input.
    	//   "REDUCE_SUM" - Reduce by computing the sum across time series for
    	// each alignment period. This reducer is valid for DELTA and GAUGE
    	// metrics with numeric and distribution values. The value_type of the
    	// output is the same as the value_type of the input.
    	//   "REDUCE_STDDEV" - Reduce by computing the standard deviation across
    	// time series for each alignment period. This reducer is valid for
    	// DELTA and GAUGE metrics with numeric or distribution values. The
    	// value_type of the output is DOUBLE.
    	//   "REDUCE_COUNT" - Reduce by computing the number of data points
    	// across time series for each alignment period. This reducer is valid
    	// for DELTA and GAUGE metrics of numeric, Boolean, distribution, and
    	// string value_type. The value_type of the output is INT64.
    	//   "REDUCE_COUNT_TRUE" - Reduce by computing the number of True-valued
    	// data points across time series for each alignment period. This
    	// reducer is valid for DELTA and GAUGE metrics of Boolean value_type.
    	// The value_type of the output is INT64.
    	//   "REDUCE_COUNT_FALSE" - Reduce by computing the number of
    	// False-valued data points across time series for each alignment
    	// period. This reducer is valid for DELTA and GAUGE metrics of Boolean
    	// value_type. The value_type of the output is INT64.
    	//   "REDUCE_FRACTION_TRUE" - Reduce by computing the ratio of the
    	// number of True-valued data points to the total number of data points
    	// for each alignment period. This reducer is valid for DELTA and GAUGE
    	// metrics of Boolean value_type. The output value is in the range 0.0,
    	// 1.0 and has value_type DOUBLE.
    	//   "REDUCE_PERCENTILE_99" - Reduce by computing the 99th percentile
    	// (https://en.wikipedia.org/wiki/Percentile) of data points across time
    	// series for each alignment period. This reducer is valid for GAUGE and
    	// DELTA metrics of numeric and distribution type. The value of the
    	// output is DOUBLE.
    	//   "REDUCE_PERCENTILE_95" - Reduce by computing the 95th percentile
    	// (https://en.wikipedia.org/wiki/Percentile) of data points across time
    	// series for each alignment period. This reducer is valid for GAUGE and
    	// DELTA metrics of numeric and distribution type. The value of the
    	// output is DOUBLE.
    	//   "REDUCE_PERCENTILE_50" - Reduce by computing the 50th percentile
    	// (https://en.wikipedia.org/wiki/Percentile) of data points across time
    	// series for each alignment period. This reducer is valid for GAUGE and
    	// DELTA metrics of numeric and distribution type. The value of the
    	// output is DOUBLE.
    	//   "REDUCE_PERCENTILE_05" - Reduce by computing the 5th percentile
    	// (https://en.wikipedia.org/wiki/Percentile) of data points across time
    	// series for each alignment period. This reducer is valid for GAUGE and
    	// DELTA metrics of numeric and distribution type. The value of the
    	// output is DOUBLE.
    	CrossSeriesReducer string `json:"crossSeriesReducer,omitempty"`
    
    	// GroupByFields: The set of fields to preserve when
    	// cross_series_reducer is specified. The group_by_fields determine how
    	// the time series are partitioned into subsets prior to applying the
    	// aggregation operation. Each subset contains time series that have the
    	// same value for each of the grouping fields. Each individual time
    	// series is a member of exactly one subset. The cross_series_reducer is
    	// applied to each subset of time series. It is not possible to reduce
    	// across different resource types, so this field implicitly contains
    	// resource.type. Fields not specified in group_by_fields are aggregated
    	// away. If group_by_fields is not specified and all the time series
    	// have the same resource type, then the time series are aggregated into
    	// a single output time series. If cross_series_reducer is not defined,
    	// this field is ignored.
    	GroupByFields []string `json:"groupByFields,omitempty"`
    
    	// PerSeriesAligner: An Aligner describes how to bring the data points
    	// in a single time series into temporal alignment. Except for
    	// ALIGN_NONE, all alignments cause all the data points in an
    	// alignment_period to be mathematically grouped together, resulting in
    	// a single data point for each alignment_period with end timestamp at
    	// the end of the period.Not all alignment operations may be applied to
    	// all time series. The valid choices depend on the metric_kind and
    	// value_type of the original time series. Alignment can change the
    	// metric_kind or the value_type of the time series.Time series data
    	// must be aligned in order to perform cross-time series reduction. If
    	// cross_series_reducer is specified, then per_series_aligner must be
    	// specified and not equal to ALIGN_NONE and alignment_period must be
    	// specified; otherwise, an error is returned.
    	//
    	// Possible values:
    	//   "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if
    	// cross-series reduction is requested. The value_type of the result is
    	// the same as the value_type of the input.
    	//   "ALIGN_DELTA" - Align and convert to DELTA. The output is delta =
    	// y1 - y0.This alignment is valid for CUMULATIVE and DELTA metrics. If
    	// the selected alignment period results in periods with no data, then
    	// the aligned value for such a period is created by interpolation. The
    	// value_type of the aligned result is the same as the value_type of the
    	// input.
    	//   "ALIGN_RATE" - Align and convert to a rate. The result is computed
    	// as rate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this
    	// aligner as providing the slope of the line that passes through the
    	// value at the start and at the end of the alignment_period.This
    	// aligner is valid for CUMULATIVE and DELTA metrics with numeric
    	// values. If the selected alignment period results in periods with no
    	// data, then the aligned value for such a period is created by
    	// interpolation. The output is a GAUGE metric with value_type
    	// DOUBLE.If, by "rate", you mean "percentage change", see the
    	// ALIGN_PERCENT_CHANGE aligner instead.
    	//   "ALIGN_INTERPOLATE" - Align by interpolating between adjacent
    	// points around the alignment period boundary. This aligner is valid
    	// for GAUGE metrics with numeric values. The value_type of the aligned
    	// result is the same as the value_type of the input.
    	//   "ALIGN_NEXT_OLDER" - Align by moving the most recent data point
    	// before the end of the alignment period to the boundary at the end of
    	// the alignment period. This aligner is valid for GAUGE metrics. The
    	// value_type of the aligned result is the same as the value_type of the
    	// input.
    	//   "ALIGN_MIN" - Align the time series by returning the minimum value
    	// in each alignment period. This aligner is valid for GAUGE and DELTA
    	// metrics with numeric values. The value_type of the aligned result is
    	// the same as the value_type of the input.
    	//   "ALIGN_MAX" - Align the time series by returning the maximum value
    	// in each alignment period. This aligner is valid for GAUGE and DELTA
    	// metrics with numeric values. The value_type of the aligned result is
    	// the same as the value_type of the input.
    	//   "ALIGN_MEAN" - Align the time series by returning the mean value in
    	// each alignment period. This aligner is valid for GAUGE and DELTA
    	// metrics with numeric values. The value_type of the aligned result is
    	// DOUBLE.
    	//   "ALIGN_COUNT" - Align the time series by returning the number of
    	// values in each alignment period. This aligner is valid for GAUGE and
    	// DELTA metrics with numeric or Boolean values. The value_type of the
    	// aligned result is INT64.
    	//   "ALIGN_SUM" - Align the time series by returning the sum of the
    	// values in each alignment period. This aligner is valid for GAUGE and
    	// DELTA metrics with numeric and distribution values. The value_type of
    	// the aligned result is the same as the value_type of the input.
    	//   "ALIGN_STDDEV" - Align the time series by returning the standard
    	// deviation of the values in each alignment period. This aligner is
    	// valid for GAUGE and DELTA metrics with numeric values. The value_type
    	// of the output is DOUBLE.
    	//   "ALIGN_COUNT_TRUE" - Align the time series by returning the number
    	// of True values in each alignment period. This aligner is valid for
    	// GAUGE metrics with Boolean values. The value_type of the output is
    	// INT64.
    	//   "ALIGN_COUNT_FALSE" - Align the time series by returning the number
    	// of False values in each alignment period. This aligner is valid for
    	// GAUGE metrics with Boolean values. The value_type of the output is
    	// INT64.
    	//   "ALIGN_FRACTION_TRUE" - Align the time series by returning the
    	// ratio of the number of True values to the total number of values in
    	// each alignment period. This aligner is valid for GAUGE metrics with
    	// Boolean values. The output value is in the range 0.0, 1.0 and has
    	// value_type DOUBLE.
    	//   "ALIGN_PERCENTILE_99" - Align the time series by using percentile
    	// aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting
    	// data point in each alignment period is the 99th percentile of all
    	// data points in the period. This aligner is valid for GAUGE and DELTA
    	// metrics with distribution values. The output is a GAUGE metric with
    	// value_type DOUBLE.
    	//   "ALIGN_PERCENTILE_95" - Align the time series by using percentile
    	// aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting
    	// data point in each alignment period is the 95th percentile of all
    	// data points in the period. This aligner is valid for GAUGE and DELTA
    	// metrics with distribution values. The output is a GAUGE metric with
    	// value_type DOUBLE.
    	//   "ALIGN_PERCENTILE_50" - Align the time series by using percentile
    	// aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting
    	// data point in each alignment period is the 50th percentile of all
    	// data points in the period. This aligner is valid for GAUGE and DELTA
    	// metrics with distribution values. The output is a GAUGE metric with
    	// value_type DOUBLE.
    	//   "ALIGN_PERCENTILE_05" - Align the time series by using percentile
    	// aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting
    	// data point in each alignment period is the 5th percentile of all data
    	// points in the period. This aligner is valid for GAUGE and DELTA
    	// metrics with distribution values. The output is a GAUGE metric with
    	// value_type DOUBLE.
    	//   "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change.
    	// This aligner is valid for GAUGE and DELTA metrics with numeric
    	// values. This alignment returns ((current - previous)/previous) * 100,
    	// where the value of previous is determined based on the
    	// alignment_period.If the values of current and previous are both 0,
    	// then the returned value is 0. If only previous is 0, the returned
    	// value is infinity.A 10-minute moving mean is computed at each point
    	// of the alignment period prior to the above calculation to smooth the
    	// metric and prevent false positives from very short-lived spikes. The
    	// moving mean is only applicable for data whose values are >= 0. Any
    	// values < 0 are treated as a missing datapoint, and are ignored. While
    	// DELTA metrics are accepted by this alignment, special care should be
    	// taken that the values for the metric will always be positive. The
    	// output is a GAUGE metric with value_type DOUBLE.
    	PerSeriesAligner string `json:"perSeriesAligner,omitempty"`
    
    	// ForceSendFields is a list of field names (e.g. "AlignmentPeriod") to
    	// unconditionally include in API requests. By default, fields with
    	// empty values are omitted from API requests. However, any non-pointer,
    	// non-interface field appearing in ForceSendFields will be sent to the
    	// server regardless of whether the field is empty or not. This may be
    	// used to include empty fields in Patch requests.
    	ForceSendFields []string `json:"-"`
    
    	// NullFields is a list of field names (e.g. "AlignmentPeriod") to
    	// include in API requests with the JSON null value. By default, fields
    	// with empty values are omitted from API requests. However, any field
    	// with an empty value appearing in NullFields will be sent to the
    	// server as null. It is an error if a field in this list has a
    	// non-empty value. This may be used to include null fields in Patch
    	// requests.
    	NullFields []string `json:"-"`
    }

      Aggregation: Describes how to combine multiple time series to provide a different view of the data. Aggregation of time series is done in two steps. First, each time series in the set is aligned to the same time interval boundaries, then the set of time series is optionally reduced in number.Alignment consists of applying the per_series_aligner operation to each time series after its data has been divided into regular alignment_period time intervals. This process takes all of the data points in an alignment period, applies a mathematical transformation such as averaging, minimum, maximum, delta, etc., and converts them into a single data point per period.Reduction is when the aligned and transformed time series can optionally be combined, reducing the number of time series through similar mathematical transformations. Reduction involves applying a cross_series_reducer to all the time series, optionally sorting the time series into subsets with group_by_fields, and applying the reducer to each subset.The raw time series data can contain a huge amount of information from multiple sources. Alignment and reduction transforms this mass of data into a more manageable and representative collection of data, for example "the 95% latency across the average of all tasks in a cluster". This representative data can be more easily graphed and comprehended, and the individual time series data is still available for later drilldown. For more details, see Filtering and aggregation (https://cloud.google.com/monitoring/api/v3/aggregation).

      func (*Aggregation) MarshalJSON

      func (s *Aggregation) MarshalJSON() ([]byte, error)

      type AlertPolicy

      type AlertPolicy struct {
      	// Combiner: How to combine the results of multiple conditions to
      	// determine if an incident should be opened. If
      	// condition_time_series_query_language is present, this must be
      	// COMBINE_UNSPECIFIED.
      	//
      	// Possible values:
      	//   "COMBINE_UNSPECIFIED" - An unspecified combiner.
      	//   "AND" - Combine conditions using the logical AND operator. An
      	// incident is created only if all the conditions are met
      	// simultaneously. This combiner is satisfied if all conditions are met,
      	// even if they are met on completely different resources.
      	//   "OR" - Combine conditions using the logical OR operator. An
      	// incident is created if any of the listed conditions is met.
      	//   "AND_WITH_MATCHING_RESOURCE" - Combine conditions using logical AND
      	// operator, but unlike the regular AND option, an incident is created
      	// only if all conditions are met simultaneously on at least one
      	// resource.
      	Combiner string `json:"combiner,omitempty"`
      
      	// Conditions: A list of conditions for the policy. The conditions are
      	// combined by AND or OR according to the combiner field. If the
      	// combined conditions evaluate to true, then an incident is created. A
      	// policy can have from one to six conditions. If
      	// condition_time_series_query_language is present, it must be the only
      	// condition.
      	Conditions []*Condition `json:"conditions,omitempty"`
      
      	// CreationRecord: A read-only record of the creation of the alerting
      	// policy. If provided in a call to create or update, this field will be
      	// ignored.
      	CreationRecord *MutationRecord `json:"creationRecord,omitempty"`
      
      	// DisplayName: A short name or phrase used to identify the policy in
      	// dashboards, notifications, and incidents. To avoid confusion, don't
      	// use the same display name for multiple policies in the same project.
      	// The name is limited to 512 Unicode characters.
      	DisplayName string `json:"displayName,omitempty"`
      
      	// Documentation: Documentation that is included with notifications and
      	// incidents related to this policy. Best practice is for the
      	// documentation to include information to help responders understand,
      	// mitigate, escalate, and correct the underlying problems detected by
      	// the alerting policy. Notification channels that have limited capacity
      	// might not show this documentation.
      	Documentation *Documentation `json:"documentation,omitempty"`
      
      	// Enabled: Whether or not the policy is enabled. On write, the default
      	// interpretation if unset is that the policy is enabled. On read,
      	// clients should not make any assumption about the state if it has not
      	// been populated. The field should always be populated on List and Get
      	// operations, unless a field projection has been specified that strips
      	// it out.
      	Enabled bool `json:"enabled,omitempty"`
      
      	// MutationRecord: A read-only record of the most recent change to the
      	// alerting policy. If provided in a call to create or update, this
      	// field will be ignored.
      	MutationRecord *MutationRecord `json:"mutationRecord,omitempty"`
      
      	// Name: Required if the policy exists. The resource name for this
      	// policy. The format is:
      	// projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]
      	// [ALERT_POLICY_ID] is assigned by Stackdriver Monitoring when the
      	// policy is created. When calling the alertPolicies.create method, do
      	// not include the name field in the alerting policy passed as part of
      	// the request.
      	Name string `json:"name,omitempty"`
      
      	// NotificationChannels: Identifies the notification channels to which
      	// notifications should be sent when incidents are opened or closed or
      	// when new violations occur on an already opened incident. Each element
      	// of this array corresponds to the name field in each of the
      	// NotificationChannel objects that are returned from the
      	// ListNotificationChannels method. The format of the entries in this
      	// field is:
      	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
      	NotificationChannels []string `json:"notificationChannels,omitempty"`
      
      	// UserLabels: User-supplied key/value data to be used for organizing
      	// and identifying the AlertPolicy objects.The field can contain up to
      	// 64 entries. Each key and value is limited to 63 Unicode characters or
      	// 128 bytes, whichever is smaller. Labels and values can contain only
      	// lowercase letters, numerals, underscores, and dashes. Keys must begin
      	// with a letter.
      	UserLabels map[string]string `json:"userLabels,omitempty"`
      
      	// Validity: Read-only description of how the alert policy is invalid.
      	// OK if the alert policy is valid. If not OK, the alert policy will not
      	// generate incidents.
      	Validity *Status `json:"validity,omitempty"`
      
      	// ServerResponse contains the HTTP response code and headers from the
      	// server.
      	googleapi.ServerResponse `json:"-"`
      
      	// ForceSendFields is a list of field names (e.g. "Combiner") to
      	// unconditionally include in API requests. By default, fields with
      	// empty values are omitted from API requests. However, any non-pointer,
      	// non-interface field appearing in ForceSendFields will be sent to the
      	// server regardless of whether the field is empty or not. This may be
      	// used to include empty fields in Patch requests.
      	ForceSendFields []string `json:"-"`
      
      	// NullFields is a list of field names (e.g. "Combiner") to include in
      	// API requests with the JSON null value. By default, fields with empty
      	// values are omitted from API requests. However, any field with an
      	// empty value appearing in NullFields will be sent to the server as
      	// null. It is an error if a field in this list has a non-empty value.
      	// This may be used to include null fields in Patch requests.
      	NullFields []string `json:"-"`
      }

        AlertPolicy: A description of the conditions under which some aspect of your system is considered to be "unhealthy" and the ways to notify people or services about this state. For an overview of alert policies, see Introduction to Alerting (https://cloud.google.com/monitoring/alerts/).

        func (*AlertPolicy) MarshalJSON

        func (s *AlertPolicy) MarshalJSON() ([]byte, error)

        type AppEngine

        type AppEngine struct {
        	// ModuleId: The ID of the App Engine module underlying this service.
        	// Corresponds to the module_id resource label in the gae_app monitored
        	// resource:
        	// https://cloud.google.com/monitoring/api/resources#tag_gae_app
        	ModuleId string `json:"moduleId,omitempty"`
        
        	// ForceSendFields is a list of field names (e.g. "ModuleId") to
        	// unconditionally include in API requests. By default, fields with
        	// empty values are omitted from API requests. However, any non-pointer,
        	// non-interface field appearing in ForceSendFields will be sent to the
        	// server regardless of whether the field is empty or not. This may be
        	// used to include empty fields in Patch requests.
        	ForceSendFields []string `json:"-"`
        
        	// NullFields is a list of field names (e.g. "ModuleId") to include in
        	// API requests with the JSON null value. By default, fields with empty
        	// values are omitted from API requests. However, any field with an
        	// empty value appearing in NullFields will be sent to the server as
        	// null. It is an error if a field in this list has a non-empty value.
        	// This may be used to include null fields in Patch requests.
        	NullFields []string `json:"-"`
        }

          AppEngine: App Engine service. Learn more at https://cloud.google.com/appengine.

          func (*AppEngine) MarshalJSON

          func (s *AppEngine) MarshalJSON() ([]byte, error)

          type AvailabilityCriteria

          type AvailabilityCriteria struct {
          }

            AvailabilityCriteria: Future parameters for the availability SLI.

            type BasicAuthentication

            type BasicAuthentication struct {
            	// Password: The password to use when authenticating with the HTTP
            	// server.
            	Password string `json:"password,omitempty"`
            
            	// Username: The username to use when authenticating with the HTTP
            	// server.
            	Username string `json:"username,omitempty"`
            
            	// ForceSendFields is a list of field names (e.g. "Password") to
            	// unconditionally include in API requests. By default, fields with
            	// empty values are omitted from API requests. However, any non-pointer,
            	// non-interface field appearing in ForceSendFields will be sent to the
            	// server regardless of whether the field is empty or not. This may be
            	// used to include empty fields in Patch requests.
            	ForceSendFields []string `json:"-"`
            
            	// NullFields is a list of field names (e.g. "Password") to include in
            	// API requests with the JSON null value. By default, fields with empty
            	// values are omitted from API requests. However, any field with an
            	// empty value appearing in NullFields will be sent to the server as
            	// null. It is an error if a field in this list has a non-empty value.
            	// This may be used to include null fields in Patch requests.
            	NullFields []string `json:"-"`
            }

              BasicAuthentication: The authentication parameters to provide to the specified resource or URL that requires a username and password. Currently, only Basic HTTP authentication (https://tools.ietf.org/html/rfc7617) is supported in Uptime checks.

              func (*BasicAuthentication) MarshalJSON

              func (s *BasicAuthentication) MarshalJSON() ([]byte, error)

              type BasicSli

              type BasicSli struct {
              	// Availability: Good service is defined to be the count of requests
              	// made to this service that return successfully.
              	Availability *AvailabilityCriteria `json:"availability,omitempty"`
              
              	// Latency: Good service is defined to be the count of requests made to
              	// this service that are fast enough with respect to latency.threshold.
              	Latency *LatencyCriteria `json:"latency,omitempty"`
              
              	// Location: OPTIONAL: The set of locations to which this SLI is
              	// relevant. Telemetry from other locations will not be used to
              	// calculate performance for this SLI. If omitted, this SLI applies to
              	// all locations in which the Service has activity. For service types
              	// that don't support breaking down by location, setting this field will
              	// result in an error.
              	Location []string `json:"location,omitempty"`
              
              	// Method: OPTIONAL: The set of RPCs to which this SLI is relevant.
              	// Telemetry from other methods will not be used to calculate
              	// performance for this SLI. If omitted, this SLI applies to all the
              	// Service's methods. For service types that don't support breaking down
              	// by method, setting this field will result in an error.
              	Method []string `json:"method,omitempty"`
              
              	// Version: OPTIONAL: The set of API versions to which this SLI is
              	// relevant. Telemetry from other API versions will not be used to
              	// calculate performance for this SLI. If omitted, this SLI applies to
              	// all API versions. For service types that don't support breaking down
              	// by version, setting this field will result in an error.
              	Version []string `json:"version,omitempty"`
              
              	// ForceSendFields is a list of field names (e.g. "Availability") to
              	// unconditionally include in API requests. By default, fields with
              	// empty values are omitted from API requests. However, any non-pointer,
              	// non-interface field appearing in ForceSendFields will be sent to the
              	// server regardless of whether the field is empty or not. This may be
              	// used to include empty fields in Patch requests.
              	ForceSendFields []string `json:"-"`
              
              	// NullFields is a list of field names (e.g. "Availability") to include
              	// in API requests with the JSON null value. By default, fields with
              	// empty values are omitted from API requests. However, any field with
              	// an empty value appearing in NullFields will be sent to the server as
              	// null. It is an error if a field in this list has a non-empty value.
              	// This may be used to include null fields in Patch requests.
              	NullFields []string `json:"-"`
              }

                BasicSli: An SLI measuring performance on a well-known service type. Performance will be computed on the basis of pre-defined metrics. The type of the service_resource determines the metrics to use and the service_resource.labels and metric_labels are used to construct a monitoring filter to filter that metric down to just the data relevant to this service.

                func (*BasicSli) MarshalJSON

                func (s *BasicSli) MarshalJSON() ([]byte, error)

                type BucketOptions

                type BucketOptions struct {
                	// ExplicitBuckets: The explicit buckets.
                	ExplicitBuckets *Explicit `json:"explicitBuckets,omitempty"`
                
                	// ExponentialBuckets: The exponential buckets.
                	ExponentialBuckets *Exponential `json:"exponentialBuckets,omitempty"`
                
                	// LinearBuckets: The linear bucket.
                	LinearBuckets *Linear `json:"linearBuckets,omitempty"`
                
                	// ForceSendFields is a list of field names (e.g. "ExplicitBuckets") to
                	// unconditionally include in API requests. By default, fields with
                	// empty values are omitted from API requests. However, any non-pointer,
                	// non-interface field appearing in ForceSendFields will be sent to the
                	// server regardless of whether the field is empty or not. This may be
                	// used to include empty fields in Patch requests.
                	ForceSendFields []string `json:"-"`
                
                	// NullFields is a list of field names (e.g. "ExplicitBuckets") to
                	// include in API requests with the JSON null value. By default, fields
                	// with empty values are omitted from API requests. However, any field
                	// with an empty value appearing in NullFields will be sent to the
                	// server as null. It is an error if a field in this list has a
                	// non-empty value. This may be used to include null fields in Patch
                	// requests.
                	NullFields []string `json:"-"`
                }

                  BucketOptions: BucketOptions describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions does not include the number of values in each bucket.A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i > 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.

                  func (*BucketOptions) MarshalJSON

                  func (s *BucketOptions) MarshalJSON() ([]byte, error)

                  type CloudEndpoints

                  type CloudEndpoints struct {
                  	// Service: The name of the Cloud Endpoints service underlying this
                  	// service. Corresponds to the service resource label in the api
                  	// monitored resource:
                  	// https://cloud.google.com/monitoring/api/resources#tag_api
                  	Service string `json:"service,omitempty"`
                  
                  	// ForceSendFields is a list of field names (e.g. "Service") to
                  	// unconditionally include in API requests. By default, fields with
                  	// empty values are omitted from API requests. However, any non-pointer,
                  	// non-interface field appearing in ForceSendFields will be sent to the
                  	// server regardless of whether the field is empty or not. This may be
                  	// used to include empty fields in Patch requests.
                  	ForceSendFields []string `json:"-"`
                  
                  	// NullFields is a list of field names (e.g. "Service") to include in
                  	// API requests with the JSON null value. By default, fields with empty
                  	// values are omitted from API requests. However, any field with an
                  	// empty value appearing in NullFields will be sent to the server as
                  	// null. It is an error if a field in this list has a non-empty value.
                  	// This may be used to include null fields in Patch requests.
                  	NullFields []string `json:"-"`
                  }

                    CloudEndpoints: Cloud Endpoints service. Learn more at https://cloud.google.com/endpoints.

                    func (*CloudEndpoints) MarshalJSON

                    func (s *CloudEndpoints) MarshalJSON() ([]byte, error)

                    type ClusterIstio

                    type ClusterIstio struct {
                    	// ClusterName: The name of the Kubernetes cluster in which this Istio
                    	// service is defined. Corresponds to the cluster_name resource label in
                    	// k8s_cluster resources.
                    	ClusterName string `json:"clusterName,omitempty"`
                    
                    	// Location: The location of the Kubernetes cluster in which this Istio
                    	// service is defined. Corresponds to the location resource label in
                    	// k8s_cluster resources.
                    	Location string `json:"location,omitempty"`
                    
                    	// ServiceName: The name of the Istio service underlying this service.
                    	// Corresponds to the destination_service_name metric label in Istio
                    	// metrics.
                    	ServiceName string `json:"serviceName,omitempty"`
                    
                    	// ServiceNamespace: The namespace of the Istio service underlying this
                    	// service. Corresponds to the destination_service_namespace metric
                    	// label in Istio metrics.
                    	ServiceNamespace string `json:"serviceNamespace,omitempty"`
                    
                    	// ForceSendFields is a list of field names (e.g. "ClusterName") to
                    	// unconditionally include in API requests. By default, fields with
                    	// empty values are omitted from API requests. However, any non-pointer,
                    	// non-interface field appearing in ForceSendFields will be sent to the
                    	// server regardless of whether the field is empty or not. This may be
                    	// used to include empty fields in Patch requests.
                    	ForceSendFields []string `json:"-"`
                    
                    	// NullFields is a list of field names (e.g. "ClusterName") to include
                    	// in API requests with the JSON null value. By default, fields with
                    	// empty values are omitted from API requests. However, any field with
                    	// an empty value appearing in NullFields will be sent to the server as
                    	// null. It is an error if a field in this list has a non-empty value.
                    	// This may be used to include null fields in Patch requests.
                    	NullFields []string `json:"-"`
                    }

                      ClusterIstio: Istio service scoped to a single Kubernetes cluster. Learn more at https://istio.io. Clusters running OSS Istio will have their services ingested as this type.

                      func (*ClusterIstio) MarshalJSON

                      func (s *ClusterIstio) MarshalJSON() ([]byte, error)

                      type CollectdPayload

                      type CollectdPayload struct {
                      	// EndTime: The end time of the interval.
                      	EndTime string `json:"endTime,omitempty"`
                      
                      	// Metadata: The measurement metadata. Example: "process_id" -> 12345
                      	Metadata map[string]TypedValue `json:"metadata,omitempty"`
                      
                      	// Plugin: The name of the plugin. Example: "disk".
                      	Plugin string `json:"plugin,omitempty"`
                      
                      	// PluginInstance: The instance name of the plugin Example: "hdcl".
                      	PluginInstance string `json:"pluginInstance,omitempty"`
                      
                      	// StartTime: The start time of the interval.
                      	StartTime string `json:"startTime,omitempty"`
                      
                      	// Type: The measurement type. Example: "memory".
                      	Type string `json:"type,omitempty"`
                      
                      	// TypeInstance: The measurement type instance. Example: "used".
                      	TypeInstance string `json:"typeInstance,omitempty"`
                      
                      	// Values: The measured values during this time interval. Each value
                      	// must have a different data_source_name.
                      	Values []*CollectdValue `json:"values,omitempty"`
                      
                      	// ForceSendFields is a list of field names (e.g. "EndTime") to
                      	// unconditionally include in API requests. By default, fields with
                      	// empty values are omitted from API requests. However, any non-pointer,
                      	// non-interface field appearing in ForceSendFields will be sent to the
                      	// server regardless of whether the field is empty or not. This may be
                      	// used to include empty fields in Patch requests.
                      	ForceSendFields []string `json:"-"`
                      
                      	// NullFields is a list of field names (e.g. "EndTime") to include in
                      	// API requests with the JSON null value. By default, fields with empty
                      	// values are omitted from API requests. However, any field with an
                      	// empty value appearing in NullFields will be sent to the server as
                      	// null. It is an error if a field in this list has a non-empty value.
                      	// This may be used to include null fields in Patch requests.
                      	NullFields []string `json:"-"`
                      }

                        CollectdPayload: A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.

                        func (*CollectdPayload) MarshalJSON

                        func (s *CollectdPayload) MarshalJSON() ([]byte, error)

                        type CollectdPayloadError

                        type CollectdPayloadError struct {
                        	// Error: Records the error status for the payload. If this field is
                        	// present, the partial errors for nested values won't be populated.
                        	Error *Status `json:"error,omitempty"`
                        
                        	// Index: The zero-based index in
                        	// CreateCollectdTimeSeriesRequest.collectd_payloads.
                        	Index int64 `json:"index,omitempty"`
                        
                        	// ValueErrors: Records the error status for values that were not
                        	// written due to an error.Failed payloads for which nothing is written
                        	// will not include partial value errors.
                        	ValueErrors []*CollectdValueError `json:"valueErrors,omitempty"`
                        
                        	// ForceSendFields is a list of field names (e.g. "Error") to
                        	// unconditionally include in API requests. By default, fields with
                        	// empty values are omitted from API requests. However, any non-pointer,
                        	// non-interface field appearing in ForceSendFields will be sent to the
                        	// server regardless of whether the field is empty or not. This may be
                        	// used to include empty fields in Patch requests.
                        	ForceSendFields []string `json:"-"`
                        
                        	// NullFields is a list of field names (e.g. "Error") to include in API
                        	// requests with the JSON null value. By default, fields with empty
                        	// values are omitted from API requests. However, any field with an
                        	// empty value appearing in NullFields will be sent to the server as
                        	// null. It is an error if a field in this list has a non-empty value.
                        	// This may be used to include null fields in Patch requests.
                        	NullFields []string `json:"-"`
                        }

                          CollectdPayloadError: Describes the error status for payloads that were not written.

                          func (*CollectdPayloadError) MarshalJSON

                          func (s *CollectdPayloadError) MarshalJSON() ([]byte, error)

                          type CollectdValue

                          type CollectdValue struct {
                          	// DataSourceName: The data source for the collectd value. For example,
                          	// there are two data sources for network measurements: "rx" and "tx".
                          	DataSourceName string `json:"dataSourceName,omitempty"`
                          
                          	// DataSourceType: The type of measurement.
                          	//
                          	// Possible values:
                          	//   "UNSPECIFIED_DATA_SOURCE_TYPE" - An unspecified data source type.
                          	// This corresponds to
                          	// google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.
                          	//   "GAUGE" - An instantaneous measurement of a varying quantity. This
                          	// corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.
                          	//   "COUNTER" - A cumulative value over time. This corresponds to
                          	// google.api.MetricDescriptor.MetricKind.CUMULATIVE.
                          	//   "DERIVE" - A rate of change of the measurement.
                          	//   "ABSOLUTE" - An amount of change since the last measurement
                          	// interval. This corresponds to
                          	// google.api.MetricDescriptor.MetricKind.DELTA.
                          	DataSourceType string `json:"dataSourceType,omitempty"`
                          
                          	// Value: The measurement value.
                          	Value *TypedValue `json:"value,omitempty"`
                          
                          	// ForceSendFields is a list of field names (e.g. "DataSourceName") to
                          	// unconditionally include in API requests. By default, fields with
                          	// empty values are omitted from API requests. However, any non-pointer,
                          	// non-interface field appearing in ForceSendFields will be sent to the
                          	// server regardless of whether the field is empty or not. This may be
                          	// used to include empty fields in Patch requests.
                          	ForceSendFields []string `json:"-"`
                          
                          	// NullFields is a list of field names (e.g. "DataSourceName") to
                          	// include in API requests with the JSON null value. By default, fields
                          	// with empty values are omitted from API requests. However, any field
                          	// with an empty value appearing in NullFields will be sent to the
                          	// server as null. It is an error if a field in this list has a
                          	// non-empty value. This may be used to include null fields in Patch
                          	// requests.
                          	NullFields []string `json:"-"`
                          }

                            CollectdValue: A single data point from a collectd-based plugin.

                            func (*CollectdValue) MarshalJSON

                            func (s *CollectdValue) MarshalJSON() ([]byte, error)

                            type CollectdValueError

                            type CollectdValueError struct {
                            	// Error: Records the error status for the value.
                            	Error *Status `json:"error,omitempty"`
                            
                            	// Index: The zero-based index in CollectdPayload.values within the
                            	// parent CreateCollectdTimeSeriesRequest.collectd_payloads.
                            	Index int64 `json:"index,omitempty"`
                            
                            	// ForceSendFields is a list of field names (e.g. "Error") to
                            	// unconditionally include in API requests. By default, fields with
                            	// empty values are omitted from API requests. However, any non-pointer,
                            	// non-interface field appearing in ForceSendFields will be sent to the
                            	// server regardless of whether the field is empty or not. This may be
                            	// used to include empty fields in Patch requests.
                            	ForceSendFields []string `json:"-"`
                            
                            	// NullFields is a list of field names (e.g. "Error") to include in API
                            	// requests with the JSON null value. By default, fields with empty
                            	// values are omitted from API requests. However, any field with an
                            	// empty value appearing in NullFields will be sent to the server as
                            	// null. It is an error if a field in this list has a non-empty value.
                            	// This may be used to include null fields in Patch requests.
                            	NullFields []string `json:"-"`
                            }

                              CollectdValueError: Describes the error status for values that were not written.

                              func (*CollectdValueError) MarshalJSON

                              func (s *CollectdValueError) MarshalJSON() ([]byte, error)

                              type Condition

                              type Condition struct {
                              	// ConditionAbsent: A condition that checks that a time series continues
                              	// to receive new data points.
                              	ConditionAbsent *MetricAbsence `json:"conditionAbsent,omitempty"`
                              
                              	// ConditionMonitoringQueryLanguage: A condition that uses the
                              	// Monitoring Query Language to define alerts.
                              	ConditionMonitoringQueryLanguage *MonitoringQueryLanguageCondition `json:"conditionMonitoringQueryLanguage,omitempty"`
                              
                              	// ConditionThreshold: A condition that compares a time series against a
                              	// threshold.
                              	ConditionThreshold *MetricThreshold `json:"conditionThreshold,omitempty"`
                              
                              	// DisplayName: A short name or phrase used to identify the condition in
                              	// dashboards, notifications, and incidents. To avoid confusion, don't
                              	// use the same display name for multiple conditions in the same policy.
                              	DisplayName string `json:"displayName,omitempty"`
                              
                              	// Name: Required if the condition exists. The unique resource name for
                              	// this condition. Its format is:
                              	// projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[POLICY_ID]/conditions/[
                              	// CONDITION_ID] [CONDITION_ID] is assigned by Stackdriver Monitoring
                              	// when the condition is created as part of a new or updated alerting
                              	// policy.When calling the alertPolicies.create method, do not include
                              	// the name field in the conditions of the requested alerting policy.
                              	// Stackdriver Monitoring creates the condition identifiers and includes
                              	// them in the new policy.When calling the alertPolicies.update method
                              	// to update a policy, including a condition name causes the existing
                              	// condition to be updated. Conditions without names are added to the
                              	// updated policy. Existing conditions are deleted if they are not
                              	// updated.Best practice is to preserve [CONDITION_ID] if you make only
                              	// small changes, such as those to condition thresholds, durations, or
                              	// trigger values. Otherwise, treat the change as a new condition and
                              	// let the existing condition be deleted.
                              	Name string `json:"name,omitempty"`
                              
                              	// ForceSendFields is a list of field names (e.g. "ConditionAbsent") to
                              	// unconditionally include in API requests. By default, fields with
                              	// empty values are omitted from API requests. However, any non-pointer,
                              	// non-interface field appearing in ForceSendFields will be sent to the
                              	// server regardless of whether the field is empty or not. This may be
                              	// used to include empty fields in Patch requests.
                              	ForceSendFields []string `json:"-"`
                              
                              	// NullFields is a list of field names (e.g. "ConditionAbsent") to
                              	// include in API requests with the JSON null value. By default, fields
                              	// with empty values are omitted from API requests. However, any field
                              	// with an empty value appearing in NullFields will be sent to the
                              	// server as null. It is an error if a field in this list has a
                              	// non-empty value. This may be used to include null fields in Patch
                              	// requests.
                              	NullFields []string `json:"-"`
                              }

                                Condition: A condition is a true/false test that determines when an alerting policy should open an incident. If a condition evaluates to true, it signifies that something is wrong.

                                func (*Condition) MarshalJSON

                                func (s *Condition) MarshalJSON() ([]byte, error)

                                type ContentMatcher

                                type ContentMatcher struct {
                                	// Content: String or regex content to match. Maximum 1024 bytes. An
                                	// empty content string indicates no content matching is to be
                                	// performed.
                                	Content string `json:"content,omitempty"`
                                
                                	// Matcher: The type of content matcher that will be applied to the
                                	// server output, compared to the content string when the check is run.
                                	//
                                	// Possible values:
                                	//   "CONTENT_MATCHER_OPTION_UNSPECIFIED" - No content matcher type
                                	// specified (maintained for backward compatibility, but deprecated for
                                	// future use). Treated as CONTAINS_STRING.
                                	//   "CONTAINS_STRING" - Selects substring matching. The match succeeds
                                	// if the output contains the content string. This is the default value
                                	// for checks without a matcher option, or where the value of matcher is
                                	// CONTENT_MATCHER_OPTION_UNSPECIFIED.
                                	//   "NOT_CONTAINS_STRING" - Selects negation of substring matching. The
                                	// match succeeds if the output does NOT contain the content string.
                                	//   "MATCHES_REGEX" - Selects regular-expression matching. The match
                                	// succeeds of the output matches the regular expression specified in
                                	// the content string. Regex matching is only supported for HTTP/HTTPS
                                	// checks.
                                	//   "NOT_MATCHES_REGEX" - Selects negation of regular-expression
                                	// matching. The match succeeds if the output does NOT match the regular
                                	// expression specified in the content string. Regex matching is only
                                	// supported for HTTP/HTTPS checks.
                                	Matcher string `json:"matcher,omitempty"`
                                
                                	// ForceSendFields is a list of field names (e.g. "Content") to
                                	// unconditionally include in API requests. By default, fields with
                                	// empty values are omitted from API requests. However, any non-pointer,
                                	// non-interface field appearing in ForceSendFields will be sent to the
                                	// server regardless of whether the field is empty or not. This may be
                                	// used to include empty fields in Patch requests.
                                	ForceSendFields []string `json:"-"`
                                
                                	// NullFields is a list of field names (e.g. "Content") to include in
                                	// API requests with the JSON null value. By default, fields with empty
                                	// values are omitted from API requests. However, any field with an
                                	// empty value appearing in NullFields will be sent to the server as
                                	// null. It is an error if a field in this list has a non-empty value.
                                	// This may be used to include null fields in Patch requests.
                                	NullFields []string `json:"-"`
                                }

                                  ContentMatcher: Optional. Used to perform content matching. This allows matching based on substrings and regular expressions, together with their negations. Only the first 4 MB of an HTTP or HTTPS check's response (and the first 1 MB of a TCP check's response) are examined for purposes of content matching.

                                  func (*ContentMatcher) MarshalJSON

                                  func (s *ContentMatcher) MarshalJSON() ([]byte, error)

                                  type CreateCollectdTimeSeriesRequest

                                  type CreateCollectdTimeSeriesRequest struct {
                                  	// CollectdPayloads: The collectd payloads representing the time series
                                  	// data. You must not include more than a single point for each time
                                  	// series, so no two payloads can have the same values for all of the
                                  	// fields plugin, plugin_instance, type, and type_instance.
                                  	CollectdPayloads []*CollectdPayload `json:"collectdPayloads,omitempty"`
                                  
                                  	// CollectdVersion: The version of collectd that collected the data.
                                  	// Example: "5.3.0-192.el6".
                                  	CollectdVersion string `json:"collectdVersion,omitempty"`
                                  
                                  	// Resource: The monitored resource associated with the time series.
                                  	Resource *MonitoredResource `json:"resource,omitempty"`
                                  
                                  	// ForceSendFields is a list of field names (e.g. "CollectdPayloads") to
                                  	// unconditionally include in API requests. By default, fields with
                                  	// empty values are omitted from API requests. However, any non-pointer,
                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                  	// server regardless of whether the field is empty or not. This may be
                                  	// used to include empty fields in Patch requests.
                                  	ForceSendFields []string `json:"-"`
                                  
                                  	// NullFields is a list of field names (e.g. "CollectdPayloads") to
                                  	// include in API requests with the JSON null value. By default, fields
                                  	// with empty values are omitted from API requests. However, any field
                                  	// with an empty value appearing in NullFields will be sent to the
                                  	// server as null. It is an error if a field in this list has a
                                  	// non-empty value. This may be used to include null fields in Patch
                                  	// requests.
                                  	NullFields []string `json:"-"`
                                  }

                                    CreateCollectdTimeSeriesRequest: The CreateCollectdTimeSeries request.

                                    func (*CreateCollectdTimeSeriesRequest) MarshalJSON

                                    func (s *CreateCollectdTimeSeriesRequest) MarshalJSON() ([]byte, error)

                                    type CreateCollectdTimeSeriesResponse

                                    type CreateCollectdTimeSeriesResponse struct {
                                    	// PayloadErrors: Records the error status for points that were not
                                    	// written due to an error in the request.Failed requests for which
                                    	// nothing is written will return an error response instead. Requests
                                    	// where data points were rejected by the backend will set summary
                                    	// instead.
                                    	PayloadErrors []*CollectdPayloadError `json:"payloadErrors,omitempty"`
                                    
                                    	// Summary: Aggregate statistics from writing the payloads. This field
                                    	// is omitted if all points were successfully written, so that the
                                    	// response is empty. This is for backwards compatibility with clients
                                    	// that log errors on any non-empty response.
                                    	Summary *CreateTimeSeriesSummary `json:"summary,omitempty"`
                                    
                                    	// ServerResponse contains the HTTP response code and headers from the
                                    	// server.
                                    	googleapi.ServerResponse `json:"-"`
                                    
                                    	// ForceSendFields is a list of field names (e.g. "PayloadErrors") to
                                    	// unconditionally include in API requests. By default, fields with
                                    	// empty values are omitted from API requests. However, any non-pointer,
                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                    	// server regardless of whether the field is empty or not. This may be
                                    	// used to include empty fields in Patch requests.
                                    	ForceSendFields []string `json:"-"`
                                    
                                    	// NullFields is a list of field names (e.g. "PayloadErrors") to include
                                    	// in API requests with the JSON null value. By default, fields with
                                    	// empty values are omitted from API requests. However, any field with
                                    	// an empty value appearing in NullFields will be sent to the server as
                                    	// null. It is an error if a field in this list has a non-empty value.
                                    	// This may be used to include null fields in Patch requests.
                                    	NullFields []string `json:"-"`
                                    }

                                      CreateCollectdTimeSeriesResponse: The CreateCollectdTimeSeries response.

                                      func (*CreateCollectdTimeSeriesResponse) MarshalJSON

                                      func (s *CreateCollectdTimeSeriesResponse) MarshalJSON() ([]byte, error)

                                      type CreateTimeSeriesRequest

                                      type CreateTimeSeriesRequest struct {
                                      	// TimeSeries: Required. The new data to be added to a list of time
                                      	// series. Adds at most one data point to each of several time series.
                                      	// The new data point must be more recent than any other point in its
                                      	// time series. Each TimeSeries value must fully specify a unique time
                                      	// series by supplying all label values for the metric and the monitored
                                      	// resource.The maximum number of TimeSeries objects per Create request
                                      	// is 200.
                                      	TimeSeries []*TimeSeries `json:"timeSeries,omitempty"`
                                      
                                      	// ForceSendFields is a list of field names (e.g. "TimeSeries") to
                                      	// unconditionally include in API requests. By default, fields with
                                      	// empty values are omitted from API requests. However, any non-pointer,
                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                      	// server regardless of whether the field is empty or not. This may be
                                      	// used to include empty fields in Patch requests.
                                      	ForceSendFields []string `json:"-"`
                                      
                                      	// NullFields is a list of field names (e.g. "TimeSeries") to include in
                                      	// API requests with the JSON null value. By default, fields with empty
                                      	// values are omitted from API requests. However, any field with an
                                      	// empty value appearing in NullFields will be sent to the server as
                                      	// null. It is an error if a field in this list has a non-empty value.
                                      	// This may be used to include null fields in Patch requests.
                                      	NullFields []string `json:"-"`
                                      }

                                        CreateTimeSeriesRequest: The CreateTimeSeries request.

                                        func (*CreateTimeSeriesRequest) MarshalJSON

                                        func (s *CreateTimeSeriesRequest) MarshalJSON() ([]byte, error)

                                        type CreateTimeSeriesSummary

                                        type CreateTimeSeriesSummary struct {
                                        	// Errors: The number of points that failed to be written. Order is not
                                        	// guaranteed.
                                        	Errors []*Error `json:"errors,omitempty"`
                                        
                                        	// SuccessPointCount: The number of points that were successfully
                                        	// written.
                                        	SuccessPointCount int64 `json:"successPointCount,omitempty"`
                                        
                                        	// TotalPointCount: The number of points in the request.
                                        	TotalPointCount int64 `json:"totalPointCount,omitempty"`
                                        
                                        	// ForceSendFields is a list of field names (e.g. "Errors") to
                                        	// unconditionally include in API requests. By default, fields with
                                        	// empty values are omitted from API requests. However, any non-pointer,
                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                        	// server regardless of whether the field is empty or not. This may be
                                        	// used to include empty fields in Patch requests.
                                        	ForceSendFields []string `json:"-"`
                                        
                                        	// NullFields is a list of field names (e.g. "Errors") to include in API
                                        	// requests with the JSON null value. By default, fields with empty
                                        	// values are omitted from API requests. However, any field with an
                                        	// empty value appearing in NullFields will be sent to the server as
                                        	// null. It is an error if a field in this list has a non-empty value.
                                        	// This may be used to include null fields in Patch requests.
                                        	NullFields []string `json:"-"`
                                        }

                                          CreateTimeSeriesSummary: Summary of the result of a failed request to write data to a time series.

                                          func (*CreateTimeSeriesSummary) MarshalJSON

                                          func (s *CreateTimeSeriesSummary) MarshalJSON() ([]byte, error)

                                          type Custom

                                          type Custom struct {
                                          }

                                            Custom: Custom view of service telemetry. Currently a place-holder pending final design.

                                            type Distribution

                                            type Distribution struct {
                                            	// BucketCounts: Required in the Cloud Monitoring API v3. The values for
                                            	// each bucket specified in bucket_options. The sum of the values in
                                            	// bucketCounts must equal the value in the count field of the
                                            	// Distribution object. The order of the bucket counts follows the
                                            	// numbering schemes described for the three bucket types. The underflow
                                            	// bucket has number 0; the finite buckets, if any, have numbers 1
                                            	// through N-2; and the overflow bucket has number N-1. The size of
                                            	// bucket_counts must not be greater than N. If the size is less than N,
                                            	// then the remaining buckets are assigned values of zero.
                                            	BucketCounts googleapi.Int64s `json:"bucketCounts,omitempty"`
                                            
                                            	// BucketOptions: Required in the Cloud Monitoring API v3. Defines the
                                            	// histogram bucket boundaries.
                                            	BucketOptions *BucketOptions `json:"bucketOptions,omitempty"`
                                            
                                            	// Count: The number of values in the population. Must be non-negative.
                                            	// This value must equal the sum of the values in bucket_counts if a
                                            	// histogram is provided.
                                            	Count int64 `json:"count,omitempty,string"`
                                            
                                            	// Exemplars: Must be in increasing order of value field.
                                            	Exemplars []*Exemplar `json:"exemplars,omitempty"`
                                            
                                            	// Mean: The arithmetic mean of the values in the population. If count
                                            	// is zero then this field must be zero.
                                            	Mean float64 `json:"mean,omitempty"`
                                            
                                            	// Range: If specified, contains the range of the population values. The
                                            	// field must not be present if the count is zero. This field is
                                            	// presently ignored by the Cloud Monitoring API v3.
                                            	Range *Range `json:"range,omitempty"`
                                            
                                            	// SumOfSquaredDeviation: The sum of squared deviations from the mean of
                                            	// the values in the population. For values x_i this is: Sumi=1..n ((x_i
                                            	// - mean)^2) Knuth, "The Art of Computer Programming", Vol. 2, page
                                            	// 232, 3rd edition describes Welford's method for accumulating this sum
                                            	// in one pass.If count is zero then this field must be zero.
                                            	SumOfSquaredDeviation float64 `json:"sumOfSquaredDeviation,omitempty"`
                                            
                                            	// ForceSendFields is a list of field names (e.g. "BucketCounts") to
                                            	// unconditionally include in API requests. By default, fields with
                                            	// empty values are omitted from API requests. However, any non-pointer,
                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                            	// server regardless of whether the field is empty or not. This may be
                                            	// used to include empty fields in Patch requests.
                                            	ForceSendFields []string `json:"-"`
                                            
                                            	// NullFields is a list of field names (e.g. "BucketCounts") to include
                                            	// in API requests with the JSON null value. By default, fields with
                                            	// empty values are omitted from API requests. However, any field with
                                            	// an empty value appearing in NullFields will be sent to the server as
                                            	// null. It is an error if a field in this list has a non-empty value.
                                            	// This may be used to include null fields in Patch requests.
                                            	NullFields []string `json:"-"`
                                            }

                                              Distribution: Distribution contains summary statistics for a population of values. It optionally contains a histogram representing the distribution of those values across a set of buckets.The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by formulas for buckets of fixed or exponentially increasing widths.Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.

                                              func (*Distribution) MarshalJSON

                                              func (s *Distribution) MarshalJSON() ([]byte, error)

                                              func (*Distribution) UnmarshalJSON

                                              func (s *Distribution) UnmarshalJSON(data []byte) error

                                              type DistributionCut

                                              type DistributionCut struct {
                                              	// DistributionFilter: A monitoring filter
                                              	// (https://cloud.google.com/monitoring/api/v3/filters) specifying a
                                              	// TimeSeries aggregating values. Must have ValueType = DISTRIBUTION and
                                              	// MetricKind = DELTA or MetricKind = CUMULATIVE.
                                              	DistributionFilter string `json:"distributionFilter,omitempty"`
                                              
                                              	// Range: Range of values considered "good." For a one-sided range, set
                                              	// one bound to an infinite value.
                                              	Range *GoogleMonitoringV3Range `json:"range,omitempty"`
                                              
                                              	// ForceSendFields is a list of field names (e.g. "DistributionFilter")
                                              	// to unconditionally include in API requests. By default, fields with
                                              	// empty values are omitted from API requests. However, any non-pointer,
                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                              	// server regardless of whether the field is empty or not. This may be
                                              	// used to include empty fields in Patch requests.
                                              	ForceSendFields []string `json:"-"`
                                              
                                              	// NullFields is a list of field names (e.g. "DistributionFilter") to
                                              	// include in API requests with the JSON null value. By default, fields
                                              	// with empty values are omitted from API requests. However, any field
                                              	// with an empty value appearing in NullFields will be sent to the
                                              	// server as null. It is an error if a field in this list has a
                                              	// non-empty value. This may be used to include null fields in Patch
                                              	// requests.
                                              	NullFields []string `json:"-"`
                                              }

                                                DistributionCut: A DistributionCut defines a TimeSeries and thresholds used for measuring good service and total service. The TimeSeries must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE. The computed good_service will be the count of values x in the Distribution such that range.min <= x < range.max.

                                                func (*DistributionCut) MarshalJSON

                                                func (s *DistributionCut) MarshalJSON() ([]byte, error)

                                                type Documentation

                                                type Documentation struct {
                                                	// Content: The text of the documentation, interpreted according to
                                                	// mime_type. The content may not exceed 8,192 Unicode characters and
                                                	// may not exceed more than 10,240 bytes when encoded in UTF-8 format,
                                                	// whichever is smaller.
                                                	Content string `json:"content,omitempty"`
                                                
                                                	// MimeType: The format of the content field. Presently, only the value
                                                	// "text/markdown" is supported. See Markdown
                                                	// (https://en.wikipedia.org/wiki/Markdown) for more information.
                                                	MimeType string `json:"mimeType,omitempty"`
                                                
                                                	// ForceSendFields is a list of field names (e.g. "Content") to
                                                	// unconditionally include in API requests. By default, fields with
                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                	// server regardless of whether the field is empty or not. This may be
                                                	// used to include empty fields in Patch requests.
                                                	ForceSendFields []string `json:"-"`
                                                
                                                	// NullFields is a list of field names (e.g. "Content") to include in
                                                	// API requests with the JSON null value. By default, fields with empty
                                                	// values are omitted from API requests. However, any field with an
                                                	// empty value appearing in NullFields will be sent to the server as
                                                	// null. It is an error if a field in this list has a non-empty value.
                                                	// This may be used to include null fields in Patch requests.
                                                	NullFields []string `json:"-"`
                                                }

                                                  Documentation: A content string and a MIME type that describes the content string's format.

                                                  func (*Documentation) MarshalJSON

                                                  func (s *Documentation) MarshalJSON() ([]byte, error)

                                                  type DroppedLabels

                                                  type DroppedLabels struct {
                                                  	// Label: Map from label to its value, for all labels dropped in any
                                                  	// aggregation.
                                                  	Label map[string]string `json:"label,omitempty"`
                                                  
                                                  	// ForceSendFields is a list of field names (e.g. "Label") to
                                                  	// unconditionally include in API requests. By default, fields with
                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                  	// server regardless of whether the field is empty or not. This may be
                                                  	// used to include empty fields in Patch requests.
                                                  	ForceSendFields []string `json:"-"`
                                                  
                                                  	// NullFields is a list of field names (e.g. "Label") to include in API
                                                  	// requests with the JSON null value. By default, fields with empty
                                                  	// values are omitted from API requests. However, any field with an
                                                  	// empty value appearing in NullFields will be sent to the server as
                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                  	// This may be used to include null fields in Patch requests.
                                                  	NullFields []string `json:"-"`
                                                  }

                                                    DroppedLabels: A set of (label, value) pairs that were removed from a Distribution time series during aggregation and then added as an attachment to a Distribution.Exemplar.The full label set for the exemplars is constructed by using the dropped pairs in combination with the label values that remain on the aggregated Distribution time series. The constructed full label set can be used to identify the specific entity, such as the instance or job, which might be contributing to a long-tail. However, with dropped labels, the storage requirements are reduced because only the aggregated distribution values for a large group of time series are stored.Note that there are no guarantees on ordering of the labels from exemplar-to-exemplar and from distribution-to-distribution in the same stream, and there may be duplicates. It is up to clients to resolve any ambiguities.

                                                    func (*DroppedLabels) MarshalJSON

                                                    func (s *DroppedLabels) MarshalJSON() ([]byte, error)

                                                    type Empty

                                                    type Empty struct {
                                                    	// ServerResponse contains the HTTP response code and headers from the
                                                    	// server.
                                                    	googleapi.ServerResponse `json:"-"`
                                                    }

                                                      Empty: A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for Empty is empty JSON object {}.

                                                      type Error

                                                      type Error struct {
                                                      	// PointCount: The number of points that couldn't be written because of
                                                      	// status.
                                                      	PointCount int64 `json:"pointCount,omitempty"`
                                                      
                                                      	// Status: The status of the requested write operation.
                                                      	Status *Status `json:"status,omitempty"`
                                                      
                                                      	// ForceSendFields is a list of field names (e.g. "PointCount") to
                                                      	// unconditionally include in API requests. By default, fields with
                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                      	// server regardless of whether the field is empty or not. This may be
                                                      	// used to include empty fields in Patch requests.
                                                      	ForceSendFields []string `json:"-"`
                                                      
                                                      	// NullFields is a list of field names (e.g. "PointCount") to include in
                                                      	// API requests with the JSON null value. By default, fields with empty
                                                      	// values are omitted from API requests. However, any field with an
                                                      	// empty value appearing in NullFields will be sent to the server as
                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                      	// This may be used to include null fields in Patch requests.
                                                      	NullFields []string `json:"-"`
                                                      }

                                                        Error: Detailed information about an error category.

                                                        func (*Error) MarshalJSON

                                                        func (s *Error) MarshalJSON() ([]byte, error)

                                                        type Exemplar

                                                        type Exemplar struct {
                                                        	// Attachments: Contextual information about the example value. Examples
                                                        	// are:Trace:
                                                        	// type.googleapis.com/google.monitoring.v3.SpanContextLiteral string:
                                                        	// type.googleapis.com/google.protobuf.StringValueLabels dropped during
                                                        	// aggregation:
                                                        	// type.googleapis.com/google.monitoring.v3.DroppedLabelsThere may be
                                                        	// only a single attachment of any given message type in a single
                                                        	// exemplar, and this is enforced by the system.
                                                        	Attachments []googleapi.RawMessage `json:"attachments,omitempty"`
                                                        
                                                        	// Timestamp: The observation (sampling) time of the above value.
                                                        	Timestamp string `json:"timestamp,omitempty"`
                                                        
                                                        	// Value: Value of the exemplar point. This value determines to which
                                                        	// bucket the exemplar belongs.
                                                        	Value float64 `json:"value,omitempty"`
                                                        
                                                        	// ForceSendFields is a list of field names (e.g. "Attachments") to
                                                        	// unconditionally include in API requests. By default, fields with
                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                        	// server regardless of whether the field is empty or not. This may be
                                                        	// used to include empty fields in Patch requests.
                                                        	ForceSendFields []string `json:"-"`
                                                        
                                                        	// NullFields is a list of field names (e.g. "Attachments") to include
                                                        	// in API requests with the JSON null value. By default, fields with
                                                        	// empty values are omitted from API requests. However, any field with
                                                        	// an empty value appearing in NullFields will be sent to the server as
                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                        	// This may be used to include null fields in Patch requests.
                                                        	NullFields []string `json:"-"`
                                                        }

                                                          Exemplar: Exemplars are example points that may be used to annotate aggregated distribution values. They are metadata that gives information about a particular value added to a Distribution bucket, such as a trace ID that was active when a value was added. They may contain further information, such as a example values and timestamps, origin, etc.

                                                          func (*Exemplar) MarshalJSON

                                                          func (s *Exemplar) MarshalJSON() ([]byte, error)

                                                          func (*Exemplar) UnmarshalJSON

                                                          func (s *Exemplar) UnmarshalJSON(data []byte) error

                                                          type Explicit

                                                          type Explicit struct {
                                                          	// Bounds: The values must be monotonically increasing.
                                                          	Bounds []float64 `json:"bounds,omitempty"`
                                                          
                                                          	// ForceSendFields is a list of field names (e.g. "Bounds") to
                                                          	// unconditionally include in API requests. By default, fields with
                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                          	// server regardless of whether the field is empty or not. This may be
                                                          	// used to include empty fields in Patch requests.
                                                          	ForceSendFields []string `json:"-"`
                                                          
                                                          	// NullFields is a list of field names (e.g. "Bounds") to include in API
                                                          	// requests with the JSON null value. By default, fields with empty
                                                          	// values are omitted from API requests. However, any field with an
                                                          	// empty value appearing in NullFields will be sent to the server as
                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                          	// This may be used to include null fields in Patch requests.
                                                          	NullFields []string `json:"-"`
                                                          }

                                                            Explicit: Specifies a set of buckets with arbitrary widths.There are size(bounds) + 1 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 <= i < N-1): boundsi Lower bound (1 <= i < N); boundsi - 1The bounds field must contain at least one element. If bounds has only one element, then there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.

                                                            func (*Explicit) MarshalJSON

                                                            func (s *Explicit) MarshalJSON() ([]byte, error)

                                                            type Exponential

                                                            type Exponential struct {
                                                            	// GrowthFactor: Must be greater than 1.
                                                            	GrowthFactor float64 `json:"growthFactor,omitempty"`
                                                            
                                                            	// NumFiniteBuckets: Must be greater than 0.
                                                            	NumFiniteBuckets int64 `json:"numFiniteBuckets,omitempty"`
                                                            
                                                            	// Scale: Must be greater than 0.
                                                            	Scale float64 `json:"scale,omitempty"`
                                                            
                                                            	// ForceSendFields is a list of field names (e.g. "GrowthFactor") to
                                                            	// unconditionally include in API requests. By default, fields with
                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                            	// server regardless of whether the field is empty or not. This may be
                                                            	// used to include empty fields in Patch requests.
                                                            	ForceSendFields []string `json:"-"`
                                                            
                                                            	// NullFields is a list of field names (e.g. "GrowthFactor") to include
                                                            	// in API requests with the JSON null value. By default, fields with
                                                            	// empty values are omitted from API requests. However, any field with
                                                            	// an empty value appearing in NullFields will be sent to the server as
                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                            	// This may be used to include null fields in Patch requests.
                                                            	NullFields []string `json:"-"`
                                                            }

                                                              Exponential: Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)).

                                                              func (*Exponential) MarshalJSON

                                                              func (s *Exponential) MarshalJSON() ([]byte, error)

                                                              func (*Exponential) UnmarshalJSON

                                                              func (s *Exponential) UnmarshalJSON(data []byte) error

                                                              type Field

                                                              type Field struct {
                                                              	// Cardinality: The field cardinality.
                                                              	//
                                                              	// Possible values:
                                                              	//   "CARDINALITY_UNKNOWN" - For fields with unknown cardinality.
                                                              	//   "CARDINALITY_OPTIONAL" - For optional fields.
                                                              	//   "CARDINALITY_REQUIRED" - For required fields. Proto2 syntax only.
                                                              	//   "CARDINALITY_REPEATED" - For repeated fields.
                                                              	Cardinality string `json:"cardinality,omitempty"`
                                                              
                                                              	// DefaultValue: The string value of the default value of this field.
                                                              	// Proto2 syntax only.
                                                              	DefaultValue string `json:"defaultValue,omitempty"`
                                                              
                                                              	// JsonName: The field JSON name.
                                                              	JsonName string `json:"jsonName,omitempty"`
                                                              
                                                              	// Kind: The field type.
                                                              	//
                                                              	// Possible values:
                                                              	//   "TYPE_UNKNOWN" - Field type unknown.
                                                              	//   "TYPE_DOUBLE" - Field type double.
                                                              	//   "TYPE_FLOAT" - Field type float.
                                                              	//   "TYPE_INT64" - Field type int64.
                                                              	//   "TYPE_UINT64" - Field type uint64.
                                                              	//   "TYPE_INT32" - Field type int32.
                                                              	//   "TYPE_FIXED64" - Field type fixed64.
                                                              	//   "TYPE_FIXED32" - Field type fixed32.
                                                              	//   "TYPE_BOOL" - Field type bool.
                                                              	//   "TYPE_STRING" - Field type string.
                                                              	//   "TYPE_GROUP" - Field type group. Proto2 syntax only, and
                                                              	// deprecated.
                                                              	//   "TYPE_MESSAGE" - Field type message.
                                                              	//   "TYPE_BYTES" - Field type bytes.
                                                              	//   "TYPE_UINT32" - Field type uint32.
                                                              	//   "TYPE_ENUM" - Field type enum.
                                                              	//   "TYPE_SFIXED32" - Field type sfixed32.
                                                              	//   "TYPE_SFIXED64" - Field type sfixed64.
                                                              	//   "TYPE_SINT32" - Field type sint32.
                                                              	//   "TYPE_SINT64" - Field type sint64.
                                                              	Kind string `json:"kind,omitempty"`
                                                              
                                                              	// Name: The field name.
                                                              	Name string `json:"name,omitempty"`
                                                              
                                                              	// Number: The field number.
                                                              	Number int64 `json:"number,omitempty"`
                                                              
                                                              	// OneofIndex: The index of the field type in Type.oneofs, for message
                                                              	// or enumeration types. The first type has index 1; zero means the type
                                                              	// is not in the list.
                                                              	OneofIndex int64 `json:"oneofIndex,omitempty"`
                                                              
                                                              	// Options: The protocol buffer options.
                                                              	Options []*Option `json:"options,omitempty"`
                                                              
                                                              	// Packed: Whether to use alternative packed wire representation.
                                                              	Packed bool `json:"packed,omitempty"`
                                                              
                                                              	// TypeUrl: The field type URL, without the scheme, for message or
                                                              	// enumeration types. Example:
                                                              	// "type.googleapis.com/google.protobuf.Timestamp".
                                                              	TypeUrl string `json:"typeUrl,omitempty"`
                                                              
                                                              	// ForceSendFields is a list of field names (e.g. "Cardinality") to
                                                              	// unconditionally include in API requests. By default, fields with
                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                              	// server regardless of whether the field is empty or not. This may be
                                                              	// used to include empty fields in Patch requests.
                                                              	ForceSendFields []string `json:"-"`
                                                              
                                                              	// NullFields is a list of field names (e.g. "Cardinality") to include
                                                              	// in API requests with the JSON null value. By default, fields with
                                                              	// empty values are omitted from API requests. However, any field with
                                                              	// an empty value appearing in NullFields will be sent to the server as
                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                              	// This may be used to include null fields in Patch requests.
                                                              	NullFields []string `json:"-"`
                                                              }

                                                                Field: A single field of a message type.

                                                                func (*Field) MarshalJSON

                                                                func (s *Field) MarshalJSON() ([]byte, error)

                                                                type FoldersService

                                                                type FoldersService struct {
                                                                	TimeSeries *FoldersTimeSeriesService
                                                                	// contains filtered or unexported fields
                                                                }

                                                                func NewFoldersService

                                                                func NewFoldersService(s *Service) *FoldersService

                                                                type FoldersTimeSeriesListCall

                                                                type FoldersTimeSeriesListCall struct {
                                                                	// contains filtered or unexported fields
                                                                }

                                                                func (*FoldersTimeSeriesListCall) AggregationAlignmentPeriod

                                                                func (c *FoldersTimeSeriesListCall) AggregationAlignmentPeriod(aggregationAlignmentPeriod string) *FoldersTimeSeriesListCall

                                                                  AggregationAlignmentPeriod sets the optional parameter "aggregation.alignmentPeriod": The alignment_period specifies a time interval, in seconds, that is used to divide the data in all the time series into consistent blocks of time. This will be done before the per-series aligner can be applied to the data.The value must be at least 60 seconds. If a per-series aligner other than ALIGN_NONE is specified, this field is required or an error is returned. If no per-series aligner is specified, or the aligner ALIGN_NONE is specified, then this field is ignored.The maximum value of the alignment_period is 104 weeks (2 years) for charts, and 90,000 seconds (25 hours) for alerting policies.

                                                                  func (*FoldersTimeSeriesListCall) AggregationCrossSeriesReducer

                                                                  func (c *FoldersTimeSeriesListCall) AggregationCrossSeriesReducer(aggregationCrossSeriesReducer string) *FoldersTimeSeriesListCall

                                                                    AggregationCrossSeriesReducer sets the optional parameter "aggregation.crossSeriesReducer": The reduction operation to be used to combine time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.Not all reducer operations can be applied to all time series. The valid choices depend on the metric_kind and the value_type of the original time series. Reduction can yield a time series with a different metric_kind or value_type than the input time series.Time series data must first be aligned (see per_series_aligner) in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified, and must not be ALIGN_NONE. An alignment_period must also be specified; otherwise, an error is returned.

                                                                    Possible values:

                                                                    "REDUCE_NONE" - No cross-time series reduction. The output of the
                                                                    

                                                                    Aligner is returned.

                                                                    "REDUCE_MEAN" - Reduce by computing the mean value across time
                                                                    

                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                    "REDUCE_MIN" - Reduce by computing the minimum value across time
                                                                    

                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                    "REDUCE_MAX" - Reduce by computing the maximum value across time
                                                                    

                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                    "REDUCE_SUM" - Reduce by computing the sum across time series for
                                                                    

                                                                    each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric and distribution values. The value_type of the output is the same as the value_type of the input.

                                                                    "REDUCE_STDDEV" - Reduce by computing the standard deviation across
                                                                    

                                                                    time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                    "REDUCE_COUNT" - Reduce by computing the number of data points
                                                                    

                                                                    across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of numeric, Boolean, distribution, and string value_type. The value_type of the output is INT64.

                                                                    "REDUCE_COUNT_TRUE" - Reduce by computing the number of True-valued
                                                                    

                                                                    data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                    "REDUCE_COUNT_FALSE" - Reduce by computing the number of
                                                                    

                                                                    False-valued data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                    "REDUCE_FRACTION_TRUE" - Reduce by computing the ratio of the
                                                                    

                                                                    number of True-valued data points to the total number of data points for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                    "REDUCE_PERCENTILE_99" - Reduce by computing the 99th percentile
                                                                    

                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                    "REDUCE_PERCENTILE_95" - Reduce by computing the 95th percentile
                                                                    

                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                    "REDUCE_PERCENTILE_50" - Reduce by computing the 50th percentile
                                                                    

                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                    "REDUCE_PERCENTILE_05" - Reduce by computing the 5th percentile
                                                                    

                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                    func (*FoldersTimeSeriesListCall) AggregationGroupByFields

                                                                    func (c *FoldersTimeSeriesListCall) AggregationGroupByFields(aggregationGroupByFields ...string) *FoldersTimeSeriesListCall

                                                                      AggregationGroupByFields sets the optional parameter "aggregation.groupByFields": The set of fields to preserve when cross_series_reducer is specified. The group_by_fields determine how the time series are partitioned into subsets prior to applying the aggregation operation. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The cross_series_reducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in group_by_fields are aggregated away. If group_by_fields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If cross_series_reducer is not defined, this field is ignored.

                                                                      func (*FoldersTimeSeriesListCall) AggregationPerSeriesAligner

                                                                      func (c *FoldersTimeSeriesListCall) AggregationPerSeriesAligner(aggregationPerSeriesAligner string) *FoldersTimeSeriesListCall

                                                                        AggregationPerSeriesAligner sets the optional parameter "aggregation.perSeriesAligner": An Aligner describes how to bring the data points in a single time series into temporal alignment. Except for ALIGN_NONE, all alignments cause all the data points in an alignment_period to be mathematically grouped together, resulting in a single data point for each alignment_period with end timestamp at the end of the period.Not all alignment operations may be applied to all time series. The valid choices depend on the metric_kind and value_type of the original time series. Alignment can change the metric_kind or the value_type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified and not equal to ALIGN_NONE and alignment_period must be specified; otherwise, an error is returned.

                                                                        Possible values:

                                                                        "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if
                                                                        

                                                                        cross-series reduction is requested. The value_type of the result is the same as the value_type of the input.

                                                                        "ALIGN_DELTA" - Align and convert to DELTA. The output is delta =
                                                                        

                                                                        y1 - y0.This alignment is valid for CUMULATIVE and DELTA metrics. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_RATE" - Align and convert to a rate. The result is computed
                                                                        

                                                                        as rate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this aligner as providing the slope of the line that passes through the value at the start and at the end of the alignment_period.This aligner is valid for CUMULATIVE and DELTA metrics with numeric values. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The output is a GAUGE metric with value_type DOUBLE.If, by "rate", you mean "percentage change", see the ALIGN_PERCENT_CHANGE aligner instead.

                                                                        "ALIGN_INTERPOLATE" - Align by interpolating between adjacent
                                                                        

                                                                        points around the alignment period boundary. This aligner is valid for GAUGE metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_NEXT_OLDER" - Align by moving the most recent data point
                                                                        

                                                                        before the end of the alignment period to the boundary at the end of the alignment period. This aligner is valid for GAUGE metrics. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_MIN" - Align the time series by returning the minimum value
                                                                        

                                                                        in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_MAX" - Align the time series by returning the maximum value
                                                                        

                                                                        in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_MEAN" - Align the time series by returning the mean value in
                                                                        

                                                                        each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is DOUBLE.

                                                                        "ALIGN_COUNT" - Align the time series by returning the number of
                                                                        

                                                                        values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric or Boolean values. The value_type of the aligned result is INT64.

                                                                        "ALIGN_SUM" - Align the time series by returning the sum of the
                                                                        

                                                                        values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric and distribution values. The value_type of the aligned result is the same as the value_type of the input.

                                                                        "ALIGN_STDDEV" - Align the time series by returning the standard
                                                                        

                                                                        deviation of the values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the output is DOUBLE.

                                                                        "ALIGN_COUNT_TRUE" - Align the time series by returning the number
                                                                        

                                                                        of True values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                        "ALIGN_COUNT_FALSE" - Align the time series by returning the number
                                                                        

                                                                        of False values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                        "ALIGN_FRACTION_TRUE" - Align the time series by returning the
                                                                        

                                                                        ratio of the number of True values to the total number of values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                        "ALIGN_PERCENTILE_99" - Align the time series by using percentile
                                                                        

                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 99th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                        "ALIGN_PERCENTILE_95" - Align the time series by using percentile
                                                                        

                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 95th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                        "ALIGN_PERCENTILE_50" - Align the time series by using percentile
                                                                        

                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 50th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                        "ALIGN_PERCENTILE_05" - Align the time series by using percentile
                                                                        

                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 5th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                        "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change.
                                                                        

                                                                        This aligner is valid for GAUGE and DELTA metrics with numeric values. This alignment returns ((current - previous)/previous) * 100, where the value of previous is determined based on the alignment_period.If the values of current and previous are both 0, then the returned value is 0. If only previous is 0, the returned value is infinity.A 10-minute moving mean is computed at each point of the alignment period prior to the above calculation to smooth the metric and prevent false positives from very short-lived spikes. The moving mean is only applicable for data whose values are >= 0. Any values < 0 are treated as a missing datapoint, and are ignored. While DELTA metrics are accepted by this alignment, special care should be taken that the values for the metric will always be positive. The output is a GAUGE metric with value_type DOUBLE.

                                                                        func (*FoldersTimeSeriesListCall) Context

                                                                          Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                          func (*FoldersTimeSeriesListCall) Do

                                                                            Do executes the "monitoring.folders.timeSeries.list" call. Exactly one of *ListTimeSeriesResponse or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ListTimeSeriesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                            func (*FoldersTimeSeriesListCall) Fields

                                                                              Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                              func (*FoldersTimeSeriesListCall) Filter

                                                                                Filter sets the optional parameter "filter": Required. A monitoring filter (https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example: metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

                                                                                func (*FoldersTimeSeriesListCall) Header

                                                                                  Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                  func (*FoldersTimeSeriesListCall) IfNoneMatch

                                                                                  func (c *FoldersTimeSeriesListCall) IfNoneMatch(entityTag string) *FoldersTimeSeriesListCall

                                                                                    IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                    func (*FoldersTimeSeriesListCall) IntervalEndTime

                                                                                    func (c *FoldersTimeSeriesListCall) IntervalEndTime(intervalEndTime string) *FoldersTimeSeriesListCall

                                                                                      IntervalEndTime sets the optional parameter "interval.endTime": Required. The end of the time interval.

                                                                                      func (*FoldersTimeSeriesListCall) IntervalStartTime

                                                                                      func (c *FoldersTimeSeriesListCall) IntervalStartTime(intervalStartTime string) *FoldersTimeSeriesListCall

                                                                                        IntervalStartTime sets the optional parameter "interval.startTime": The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.

                                                                                        func (*FoldersTimeSeriesListCall) OrderBy

                                                                                          OrderBy sets the optional parameter "orderBy": Unsupported: must be left blank. The points in each time series are currently returned in reverse time order (most recent to oldest).

                                                                                          func (*FoldersTimeSeriesListCall) PageSize

                                                                                            PageSize sets the optional parameter "pageSize": A positive number that is the maximum number of results to return. If page_size is empty or more than 100,000 results, the effective page_size is 100,000 results. If view is set to FULL, this is the maximum number of Points returned. If view is set to HEADERS, this is the maximum number of TimeSeries returned.

                                                                                            func (*FoldersTimeSeriesListCall) PageToken

                                                                                              PageToken sets the optional parameter "pageToken": If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.

                                                                                              func (*FoldersTimeSeriesListCall) Pages

                                                                                                Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                func (*FoldersTimeSeriesListCall) SecondaryAggregationAlignmentPeriod

                                                                                                func (c *FoldersTimeSeriesListCall) SecondaryAggregationAlignmentPeriod(secondaryAggregationAlignmentPeriod string) *FoldersTimeSeriesListCall

                                                                                                  SecondaryAggregationAlignmentPeriod sets the optional parameter "secondaryAggregation.alignmentPeriod": The alignment_period specifies a time interval, in seconds, that is used to divide the data in all the time series into consistent blocks of time. This will be done before the per-series aligner can be applied to the data.The value must be at least 60 seconds. If a per-series aligner other than ALIGN_NONE is specified, this field is required or an error is returned. If no per-series aligner is specified, or the aligner ALIGN_NONE is specified, then this field is ignored.The maximum value of the alignment_period is 104 weeks (2 years) for charts, and 90,000 seconds (25 hours) for alerting policies.

                                                                                                  func (*FoldersTimeSeriesListCall) SecondaryAggregationCrossSeriesReducer

                                                                                                  func (c *FoldersTimeSeriesListCall) SecondaryAggregationCrossSeriesReducer(secondaryAggregationCrossSeriesReducer string) *FoldersTimeSeriesListCall

                                                                                                    SecondaryAggregationCrossSeriesReducer sets the optional parameter "secondaryAggregation.crossSeriesReducer": The reduction operation to be used to combine time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.Not all reducer operations can be applied to all time series. The valid choices depend on the metric_kind and the value_type of the original time series. Reduction can yield a time series with a different metric_kind or value_type than the input time series.Time series data must first be aligned (see per_series_aligner) in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified, and must not be ALIGN_NONE. An alignment_period must also be specified; otherwise, an error is returned.

                                                                                                    Possible values:

                                                                                                    "REDUCE_NONE" - No cross-time series reduction. The output of the
                                                                                                    

                                                                                                    Aligner is returned.

                                                                                                    "REDUCE_MEAN" - Reduce by computing the mean value across time
                                                                                                    

                                                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                    "REDUCE_MIN" - Reduce by computing the minimum value across time
                                                                                                    

                                                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                    "REDUCE_MAX" - Reduce by computing the maximum value across time
                                                                                                    

                                                                                                    series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                    "REDUCE_SUM" - Reduce by computing the sum across time series for
                                                                                                    

                                                                                                    each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric and distribution values. The value_type of the output is the same as the value_type of the input.

                                                                                                    "REDUCE_STDDEV" - Reduce by computing the standard deviation across
                                                                                                    

                                                                                                    time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                    "REDUCE_COUNT" - Reduce by computing the number of data points
                                                                                                    

                                                                                                    across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of numeric, Boolean, distribution, and string value_type. The value_type of the output is INT64.

                                                                                                    "REDUCE_COUNT_TRUE" - Reduce by computing the number of True-valued
                                                                                                    

                                                                                                    data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                    "REDUCE_COUNT_FALSE" - Reduce by computing the number of
                                                                                                    

                                                                                                    False-valued data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                    "REDUCE_FRACTION_TRUE" - Reduce by computing the ratio of the
                                                                                                    

                                                                                                    number of True-valued data points to the total number of data points for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                    "REDUCE_PERCENTILE_99" - Reduce by computing the 99th percentile
                                                                                                    

                                                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                    "REDUCE_PERCENTILE_95" - Reduce by computing the 95th percentile
                                                                                                    

                                                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                    "REDUCE_PERCENTILE_50" - Reduce by computing the 50th percentile
                                                                                                    

                                                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                    "REDUCE_PERCENTILE_05" - Reduce by computing the 5th percentile
                                                                                                    

                                                                                                    (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                    func (*FoldersTimeSeriesListCall) SecondaryAggregationGroupByFields

                                                                                                    func (c *FoldersTimeSeriesListCall) SecondaryAggregationGroupByFields(secondaryAggregationGroupByFields ...string) *FoldersTimeSeriesListCall

                                                                                                      SecondaryAggregationGroupByFields sets the optional parameter "secondaryAggregation.groupByFields": The set of fields to preserve when cross_series_reducer is specified. The group_by_fields determine how the time series are partitioned into subsets prior to applying the aggregation operation. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The cross_series_reducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in group_by_fields are aggregated away. If group_by_fields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If cross_series_reducer is not defined, this field is ignored.

                                                                                                      func (*FoldersTimeSeriesListCall) SecondaryAggregationPerSeriesAligner

                                                                                                      func (c *FoldersTimeSeriesListCall) SecondaryAggregationPerSeriesAligner(secondaryAggregationPerSeriesAligner string) *FoldersTimeSeriesListCall

                                                                                                        SecondaryAggregationPerSeriesAligner sets the optional parameter "secondaryAggregation.perSeriesAligner": An Aligner describes how to bring the data points in a single time series into temporal alignment. Except for ALIGN_NONE, all alignments cause all the data points in an alignment_period to be mathematically grouped together, resulting in a single data point for each alignment_period with end timestamp at the end of the period.Not all alignment operations may be applied to all time series. The valid choices depend on the metric_kind and value_type of the original time series. Alignment can change the metric_kind or the value_type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified and not equal to ALIGN_NONE and alignment_period must be specified; otherwise, an error is returned.

                                                                                                        Possible values:

                                                                                                        "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if
                                                                                                        

                                                                                                        cross-series reduction is requested. The value_type of the result is the same as the value_type of the input.

                                                                                                        "ALIGN_DELTA" - Align and convert to DELTA. The output is delta =
                                                                                                        

                                                                                                        y1 - y0.This alignment is valid for CUMULATIVE and DELTA metrics. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_RATE" - Align and convert to a rate. The result is computed
                                                                                                        

                                                                                                        as rate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this aligner as providing the slope of the line that passes through the value at the start and at the end of the alignment_period.This aligner is valid for CUMULATIVE and DELTA metrics with numeric values. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The output is a GAUGE metric with value_type DOUBLE.If, by "rate", you mean "percentage change", see the ALIGN_PERCENT_CHANGE aligner instead.

                                                                                                        "ALIGN_INTERPOLATE" - Align by interpolating between adjacent
                                                                                                        

                                                                                                        points around the alignment period boundary. This aligner is valid for GAUGE metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_NEXT_OLDER" - Align by moving the most recent data point
                                                                                                        

                                                                                                        before the end of the alignment period to the boundary at the end of the alignment period. This aligner is valid for GAUGE metrics. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_MIN" - Align the time series by returning the minimum value
                                                                                                        

                                                                                                        in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_MAX" - Align the time series by returning the maximum value
                                                                                                        

                                                                                                        in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_MEAN" - Align the time series by returning the mean value in
                                                                                                        

                                                                                                        each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is DOUBLE.

                                                                                                        "ALIGN_COUNT" - Align the time series by returning the number of
                                                                                                        

                                                                                                        values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric or Boolean values. The value_type of the aligned result is INT64.

                                                                                                        "ALIGN_SUM" - Align the time series by returning the sum of the
                                                                                                        

                                                                                                        values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric and distribution values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                        "ALIGN_STDDEV" - Align the time series by returning the standard
                                                                                                        

                                                                                                        deviation of the values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the output is DOUBLE.

                                                                                                        "ALIGN_COUNT_TRUE" - Align the time series by returning the number
                                                                                                        

                                                                                                        of True values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                        "ALIGN_COUNT_FALSE" - Align the time series by returning the number
                                                                                                        

                                                                                                        of False values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                        "ALIGN_FRACTION_TRUE" - Align the time series by returning the
                                                                                                        

                                                                                                        ratio of the number of True values to the total number of values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                        "ALIGN_PERCENTILE_99" - Align the time series by using percentile
                                                                                                        

                                                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 99th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                        "ALIGN_PERCENTILE_95" - Align the time series by using percentile
                                                                                                        

                                                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 95th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                        "ALIGN_PERCENTILE_50" - Align the time series by using percentile
                                                                                                        

                                                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 50th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                        "ALIGN_PERCENTILE_05" - Align the time series by using percentile
                                                                                                        

                                                                                                        aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 5th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                        "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change.
                                                                                                        

                                                                                                        This aligner is valid for GAUGE and DELTA metrics with numeric values. This alignment returns ((current - previous)/previous) * 100, where the value of previous is determined based on the alignment_period.If the values of current and previous are both 0, then the returned value is 0. If only previous is 0, the returned value is infinity.A 10-minute moving mean is computed at each point of the alignment period prior to the above calculation to smooth the metric and prevent false positives from very short-lived spikes. The moving mean is only applicable for data whose values are >= 0. Any values < 0 are treated as a missing datapoint, and are ignored. While DELTA metrics are accepted by this alignment, special care should be taken that the values for the metric will always be positive. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                        func (*FoldersTimeSeriesListCall) View

                                                                                                          View sets the optional parameter "view": Required. Specifies which information is returned about the time series.

                                                                                                          Possible values:

                                                                                                          "FULL" - Returns the identity of the metric(s), the time series,
                                                                                                          

                                                                                                          and the time series data.

                                                                                                          "HEADERS" - Returns the identity of the metric and the time series
                                                                                                          

                                                                                                          resource, but not the time series data.

                                                                                                          type FoldersTimeSeriesService

                                                                                                          type FoldersTimeSeriesService struct {
                                                                                                          	// contains filtered or unexported fields
                                                                                                          }

                                                                                                          func NewFoldersTimeSeriesService

                                                                                                          func NewFoldersTimeSeriesService(s *Service) *FoldersTimeSeriesService

                                                                                                          func (*FoldersTimeSeriesService) List

                                                                                                            List: Lists time series that match a filter. This method does not require a Workspace.

                                                                                                            - name: The project

                                                                                                            (https://cloud.google.com/monitoring/api/v3#project_name),
                                                                                                            organization or folder on which to execute the request. The format
                                                                                                            is: projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID]
                                                                                                            folders/[FOLDER_ID].
                                                                                                            

                                                                                                            type GetNotificationChannelVerificationCodeRequest

                                                                                                            type GetNotificationChannelVerificationCodeRequest struct {
                                                                                                            	// ExpireTime: The desired expiration time. If specified, the API will
                                                                                                            	// guarantee that the returned code will not be valid after the
                                                                                                            	// specified timestamp; however, the API cannot guarantee that the
                                                                                                            	// returned code will be valid for at least as long as the requested
                                                                                                            	// time (the API puts an upper bound on the amount of time for which a
                                                                                                            	// code may be valid). If omitted, a default expiration will be used,
                                                                                                            	// which may be less than the max permissible expiration (so specifying
                                                                                                            	// an expiration may extend the code's lifetime over omitting an
                                                                                                            	// expiration, even though the API does impose an upper limit on the
                                                                                                            	// maximum expiration that is permitted).
                                                                                                            	ExpireTime string `json:"expireTime,omitempty"`
                                                                                                            
                                                                                                            	// ForceSendFields is a list of field names (e.g. "ExpireTime") to
                                                                                                            	// unconditionally include in API requests. By default, fields with
                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                            
                                                                                                            	// NullFields is a list of field names (e.g. "ExpireTime") to include in
                                                                                                            	// API requests with the JSON null value. By default, fields with empty
                                                                                                            	// values are omitted from API requests. However, any field with an
                                                                                                            	// empty value appearing in NullFields will be sent to the server as
                                                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                                                            	// This may be used to include null fields in Patch requests.
                                                                                                            	NullFields []string `json:"-"`
                                                                                                            }

                                                                                                              GetNotificationChannelVerificationCodeRequest: The GetNotificationChannelVerificationCode request.

                                                                                                              func (*GetNotificationChannelVerificationCodeRequest) MarshalJSON

                                                                                                              type GetNotificationChannelVerificationCodeResponse

                                                                                                              type GetNotificationChannelVerificationCodeResponse struct {
                                                                                                              	// Code: The verification code, which may be used to verify other
                                                                                                              	// channels that have an equivalent identity (i.e. other channels of the
                                                                                                              	// same type with the same fingerprint such as other email channels with
                                                                                                              	// the same email address or other sms channels with the same number).
                                                                                                              	Code string `json:"code,omitempty"`
                                                                                                              
                                                                                                              	// ExpireTime: The expiration time associated with the code that was
                                                                                                              	// returned. If an expiration was provided in the request, this is the
                                                                                                              	// minimum of the requested expiration in the request and the max
                                                                                                              	// permitted expiration.
                                                                                                              	ExpireTime string `json:"expireTime,omitempty"`
                                                                                                              
                                                                                                              	// ServerResponse contains the HTTP response code and headers from the
                                                                                                              	// server.
                                                                                                              	googleapi.ServerResponse `json:"-"`
                                                                                                              
                                                                                                              	// ForceSendFields is a list of field names (e.g. "Code") to
                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                              
                                                                                                              	// NullFields is a list of field names (e.g. "Code") to include in API
                                                                                                              	// requests with the JSON null value. By default, fields with empty
                                                                                                              	// values are omitted from API requests. However, any field with an
                                                                                                              	// empty value appearing in NullFields will be sent to the server as
                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                              	NullFields []string `json:"-"`
                                                                                                              }

                                                                                                                GetNotificationChannelVerificationCodeResponse: The GetNotificationChannelVerificationCode request.

                                                                                                                func (*GetNotificationChannelVerificationCodeResponse) MarshalJSON

                                                                                                                type GoogleMonitoringV3Range

                                                                                                                type GoogleMonitoringV3Range struct {
                                                                                                                	// Max: Range maximum.
                                                                                                                	Max float64 `json:"max,omitempty"`
                                                                                                                
                                                                                                                	// Min: Range minimum.
                                                                                                                	Min float64 `json:"min,omitempty"`
                                                                                                                
                                                                                                                	// ForceSendFields is a list of field names (e.g. "Max") to
                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                
                                                                                                                	// NullFields is a list of field names (e.g. "Max") to include in API
                                                                                                                	// requests with the JSON null value. By default, fields with empty
                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                	NullFields []string `json:"-"`
                                                                                                                }

                                                                                                                  GoogleMonitoringV3Range: Range of numerical values, inclusive of min and exclusive of max. If the open range "< range.max" is desired, set range.min = -infinity. If the open range ">= range.min" is desired, set range.max = infinity.

                                                                                                                  func (*GoogleMonitoringV3Range) MarshalJSON

                                                                                                                  func (s *GoogleMonitoringV3Range) MarshalJSON() ([]byte, error)

                                                                                                                  func (*GoogleMonitoringV3Range) UnmarshalJSON

                                                                                                                  func (s *GoogleMonitoringV3Range) UnmarshalJSON(data []byte) error

                                                                                                                  type Group

                                                                                                                  type Group struct {
                                                                                                                  	// DisplayName: A user-assigned name for this group, used only for
                                                                                                                  	// display purposes.
                                                                                                                  	DisplayName string `json:"displayName,omitempty"`
                                                                                                                  
                                                                                                                  	// Filter: The filter used to determine which monitored resources belong
                                                                                                                  	// to this group.
                                                                                                                  	Filter string `json:"filter,omitempty"`
                                                                                                                  
                                                                                                                  	// IsCluster: If true, the members of this group are considered to be a
                                                                                                                  	// cluster. The system can perform additional analysis on groups that
                                                                                                                  	// are clusters.
                                                                                                                  	IsCluster bool `json:"isCluster,omitempty"`
                                                                                                                  
                                                                                                                  	// Name: Output only. The name of this group. The format is:
                                                                                                                  	// projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID] When creating a
                                                                                                                  	// group, this field is ignored and a new name is created consisting of
                                                                                                                  	// the project specified in the call to CreateGroup and a unique
                                                                                                                  	// [GROUP_ID] that is generated automatically.
                                                                                                                  	Name string `json:"name,omitempty"`
                                                                                                                  
                                                                                                                  	// ParentName: The name of the group's parent, if it has one. The format
                                                                                                                  	// is: projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID] For groups with
                                                                                                                  	// no parent, parent_name is the empty string, "".
                                                                                                                  	ParentName string `json:"parentName,omitempty"`
                                                                                                                  
                                                                                                                  	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                  	// server.
                                                                                                                  	googleapi.ServerResponse `json:"-"`
                                                                                                                  
                                                                                                                  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                  
                                                                                                                  	// NullFields is a list of field names (e.g. "DisplayName") to include
                                                                                                                  	// in API requests with the JSON null value. By default, fields with
                                                                                                                  	// empty values are omitted from API requests. However, any field with
                                                                                                                  	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                  }

                                                                                                                    Group: The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: "environment" and "role". A parent group has a filter, environment="production". A child of that parent group has a filter, role="transcoder". The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment.The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.

                                                                                                                    func (*Group) MarshalJSON

                                                                                                                    func (s *Group) MarshalJSON() ([]byte, error)

                                                                                                                    type HttpCheck

                                                                                                                    type HttpCheck struct {
                                                                                                                    	// AuthInfo: The authentication information. Optional when creating an
                                                                                                                    	// HTTP check; defaults to empty.
                                                                                                                    	AuthInfo *BasicAuthentication `json:"authInfo,omitempty"`
                                                                                                                    
                                                                                                                    	// Body: The request body associated with the HTTP POST request. If
                                                                                                                    	// content_type is URL_ENCODED, the body passed in must be URL-encoded.
                                                                                                                    	// Users can provide a Content-Length header via the headers field or
                                                                                                                    	// the API will do so. If the request_method is GET and body is not
                                                                                                                    	// empty, the API will return an error. The maximum byte size is 1
                                                                                                                    	// megabyte. Note: As with all bytes fields, JSON representations are
                                                                                                                    	// base64 encoded. e.g.: "foo=bar" in URL-encoded form is "foo%3Dbar"
                                                                                                                    	// and in base64 encoding is "Zm9vJTI1M0RiYXI=".
                                                                                                                    	Body string `json:"body,omitempty"`
                                                                                                                    
                                                                                                                    	// ContentType: The content type header to use for the check. The
                                                                                                                    	// following configurations result in errors: 1. Content type is
                                                                                                                    	// specified in both the headers field and the content_type field. 2.
                                                                                                                    	// Request method is GET and content_type is not TYPE_UNSPECIFIED 3.
                                                                                                                    	// Request method is POST and content_type is TYPE_UNSPECIFIED. 4.
                                                                                                                    	// Request method is POST and a "Content-Type" header is provided via
                                                                                                                    	// headers field. The content_type field should be used instead.
                                                                                                                    	//
                                                                                                                    	// Possible values:
                                                                                                                    	//   "TYPE_UNSPECIFIED" - No content type specified.
                                                                                                                    	//   "URL_ENCODED" - body is in URL-encoded form. Equivalent to setting
                                                                                                                    	// the Content-Type to application/x-www-form-urlencoded in the HTTP
                                                                                                                    	// request.
                                                                                                                    	ContentType string `json:"contentType,omitempty"`
                                                                                                                    
                                                                                                                    	// Headers: The list of headers to send as part of the Uptime check
                                                                                                                    	// request. If two headers have the same key and different values, they
                                                                                                                    	// should be entered as a single header, with the value being a
                                                                                                                    	// comma-separated list of all the desired values as described at
                                                                                                                    	// https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering
                                                                                                                    	// two separate headers with the same key in a Create call will cause
                                                                                                                    	// the first to be overwritten by the second. The maximum number of
                                                                                                                    	// headers allowed is 100.
                                                                                                                    	Headers map[string]string `json:"headers,omitempty"`
                                                                                                                    
                                                                                                                    	// MaskHeaders: Boolean specifying whether to encrypt the header
                                                                                                                    	// information. Encryption should be specified for any headers related
                                                                                                                    	// to authentication that you do not wish to be seen when retrieving the
                                                                                                                    	// configuration. The server will be responsible for encrypting the
                                                                                                                    	// headers. On Get/List calls, if mask_headers is set to true then the
                                                                                                                    	// headers will be obscured with ******.
                                                                                                                    	MaskHeaders bool `json:"maskHeaders,omitempty"`
                                                                                                                    
                                                                                                                    	// Path: Optional (defaults to "/"). The path to the page against which
                                                                                                                    	// to run the check. Will be combined with the host (specified within
                                                                                                                    	// the monitored_resource) and port to construct the full URL. If the
                                                                                                                    	// provided path does not begin with "/", a "/" will be prepended
                                                                                                                    	// automatically.
                                                                                                                    	Path string `json:"path,omitempty"`
                                                                                                                    
                                                                                                                    	// Port: Optional (defaults to 80 when use_ssl is false, and 443 when
                                                                                                                    	// use_ssl is true). The TCP port on the HTTP server against which to
                                                                                                                    	// run the check. Will be combined with host (specified within the
                                                                                                                    	// monitored_resource) and path to construct the full URL.
                                                                                                                    	Port int64 `json:"port,omitempty"`
                                                                                                                    
                                                                                                                    	// RequestMethod: The HTTP request method to use for the check. If set
                                                                                                                    	// to METHOD_UNSPECIFIED then request_method defaults to GET.
                                                                                                                    	//
                                                                                                                    	// Possible values:
                                                                                                                    	//   "METHOD_UNSPECIFIED" - No request method specified.
                                                                                                                    	//   "GET" - GET request.
                                                                                                                    	//   "POST" - POST request.
                                                                                                                    	RequestMethod string `json:"requestMethod,omitempty"`
                                                                                                                    
                                                                                                                    	// UseSsl: If true, use HTTPS instead of HTTP to run the check.
                                                                                                                    	UseSsl bool `json:"useSsl,omitempty"`
                                                                                                                    
                                                                                                                    	// ValidateSsl: Boolean specifying whether to include SSL certificate
                                                                                                                    	// validation as a part of the Uptime check. Only applies to checks
                                                                                                                    	// where monitored_resource is set to uptime_url. If use_ssl is false,
                                                                                                                    	// setting validate_ssl to true has no effect.
                                                                                                                    	ValidateSsl bool `json:"validateSsl,omitempty"`
                                                                                                                    
                                                                                                                    	// ForceSendFields is a list of field names (e.g. "AuthInfo") to
                                                                                                                    	// unconditionally include in API requests. By default, fields with
                                                                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                                                                    	// used to include empty fields in Patch requests.
                                                                                                                    	ForceSendFields []string `json:"-"`
                                                                                                                    
                                                                                                                    	// NullFields is a list of field names (e.g. "AuthInfo") to include in
                                                                                                                    	// API requests with the JSON null value. By default, fields with empty
                                                                                                                    	// values are omitted from API requests. However, any field with an
                                                                                                                    	// empty value appearing in NullFields will be sent to the server as
                                                                                                                    	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                    	// This may be used to include null fields in Patch requests.
                                                                                                                    	NullFields []string `json:"-"`
                                                                                                                    }

                                                                                                                      HttpCheck: Information involved in an HTTP/HTTPS Uptime check request.

                                                                                                                      func (*HttpCheck) MarshalJSON

                                                                                                                      func (s *HttpCheck) MarshalJSON() ([]byte, error)

                                                                                                                      type InternalChecker

                                                                                                                      type InternalChecker struct {
                                                                                                                      	// DisplayName: The checker's human-readable name. The display name
                                                                                                                      	// should be unique within a Stackdriver Workspace in order to make it
                                                                                                                      	// easier to identify; however, uniqueness is not enforced.
                                                                                                                      	DisplayName string `json:"displayName,omitempty"`
                                                                                                                      
                                                                                                                      	// GcpZone: The GCP zone the Uptime check should egress from. Only
                                                                                                                      	// respected for internal Uptime checks, where internal_network is
                                                                                                                      	// specified.
                                                                                                                      	GcpZone string `json:"gcpZone,omitempty"`
                                                                                                                      
                                                                                                                      	// Name: A unique resource name for this InternalChecker. The format is:
                                                                                                                      	// projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID]
                                                                                                                      	//  [PROJECT_ID_OR_NUMBER] is the Stackdriver Workspace project for the
                                                                                                                      	// Uptime check config associated with the internal checker.
                                                                                                                      	Name string `json:"name,omitempty"`
                                                                                                                      
                                                                                                                      	// Network: The GCP VPC network (https://cloud.google.com/vpc/docs/vpc)
                                                                                                                      	// where the internal resource lives (ex: "default").
                                                                                                                      	Network string `json:"network,omitempty"`
                                                                                                                      
                                                                                                                      	// PeerProjectId: The GCP project ID where the internal checker lives.
                                                                                                                      	// Not necessary the same as the Workspace project.
                                                                                                                      	PeerProjectId string `json:"peerProjectId,omitempty"`
                                                                                                                      
                                                                                                                      	// State: The current operational state of the internal checker.
                                                                                                                      	//
                                                                                                                      	// Possible values:
                                                                                                                      	//   "UNSPECIFIED" - An internal checker should never be in the
                                                                                                                      	// unspecified state.
                                                                                                                      	//   "CREATING" - The checker is being created, provisioned, and
                                                                                                                      	// configured. A checker in this state can be returned by
                                                                                                                      	// ListInternalCheckers or GetInternalChecker, as well as by examining
                                                                                                                      	// the long running Operation
                                                                                                                      	// (https://cloud.google.com/apis/design/design_patterns#long_running_operations)
                                                                                                                      	// that created it.
                                                                                                                      	//   "RUNNING" - The checker is running and available for use. A checker
                                                                                                                      	// in this state can be returned by ListInternalCheckers or
                                                                                                                      	// GetInternalChecker as well as by examining the long running Operation
                                                                                                                      	// (https://cloud.google.com/apis/design/design_patterns#long_running_operations)
                                                                                                                      	// that created it. If a checker is being torn down, it is neither
                                                                                                                      	// visible nor usable, so there is no "deleting" or "down" state.
                                                                                                                      	State string `json:"state,omitempty"`
                                                                                                                      
                                                                                                                      	// ForceSendFields is a list of field names (e.g. "DisplayName") to
                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                      
                                                                                                                      	// NullFields is a list of field names (e.g. "DisplayName") to include
                                                                                                                      	// in API requests with the JSON null value. By default, fields with
                                                                                                                      	// empty values are omitted from API requests. However, any field with
                                                                                                                      	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                      }

                                                                                                                        InternalChecker: An internal checker allows Uptime checks to run on private/internal GCP resources.

                                                                                                                        func (*InternalChecker) MarshalJSON

                                                                                                                        func (s *InternalChecker) MarshalJSON() ([]byte, error)

                                                                                                                        type IstioCanonicalService

                                                                                                                        type IstioCanonicalService struct {
                                                                                                                        	// CanonicalService: The name of the canonical service underlying this
                                                                                                                        	// service. Corresponds to the destination_canonical_service_name metric
                                                                                                                        	// label in label in Istio metrics
                                                                                                                        	// (https://cloud.google.com/monitoring/api/metrics_istio).
                                                                                                                        	CanonicalService string `json:"canonicalService,omitempty"`
                                                                                                                        
                                                                                                                        	// CanonicalServiceNamespace: The namespace of the canonical service
                                                                                                                        	// underlying this service. Corresponds to the
                                                                                                                        	// destination_canonical_service_namespace metric label in Istio metrics
                                                                                                                        	// (https://cloud.google.com/monitoring/api/metrics_istio).
                                                                                                                        	CanonicalServiceNamespace string `json:"canonicalServiceNamespace,omitempty"`
                                                                                                                        
                                                                                                                        	// MeshUid: Identifier for the Istio mesh in which this canonical
                                                                                                                        	// service is defined. Corresponds to the mesh_uid metric label in Istio
                                                                                                                        	// metrics (https://cloud.google.com/monitoring/api/metrics_istio).
                                                                                                                        	MeshUid string `json:"meshUid,omitempty"`
                                                                                                                        
                                                                                                                        	// ForceSendFields is a list of field names (e.g. "CanonicalService") to
                                                                                                                        	// unconditionally include in API requests. By default, fields with
                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                        
                                                                                                                        	// NullFields is a list of field names (e.g. "CanonicalService") to
                                                                                                                        	// include in API requests with the JSON null value. By default, fields
                                                                                                                        	// with empty values are omitted from API requests. However, any field
                                                                                                                        	// with an empty value appearing in NullFields will be sent to the
                                                                                                                        	// server as null. It is an error if a field in this list has a
                                                                                                                        	// non-empty value. This may be used to include null fields in Patch
                                                                                                                        	// requests.
                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                        }

                                                                                                                          IstioCanonicalService: Canonical service scoped to an Istio mesh. Anthos clusters running ASM >= 1.6.8 will have their services ingested as this type.

                                                                                                                          func (*IstioCanonicalService) MarshalJSON

                                                                                                                          func (s *IstioCanonicalService) MarshalJSON() ([]byte, error)

                                                                                                                          type LabelDescriptor

                                                                                                                          type LabelDescriptor struct {
                                                                                                                          	// Description: A human-readable description for the label.
                                                                                                                          	Description string `json:"description,omitempty"`
                                                                                                                          
                                                                                                                          	// Key: The key for this label. The key must meet the following
                                                                                                                          	// criteria: Does not exceed 100 characters. Matches the following
                                                                                                                          	// regular expression: [a-zA-Z][a-zA-Z0-9_]* The first character must be
                                                                                                                          	// an upper- or lower-case letter. The remaining characters must be
                                                                                                                          	// letters, digits, or underscores.
                                                                                                                          	Key string `json:"key,omitempty"`
                                                                                                                          
                                                                                                                          	// ValueType: The type of data that can be assigned to the label.
                                                                                                                          	//
                                                                                                                          	// Possible values:
                                                                                                                          	//   "STRING" - A variable-length string, not to exceed 1,024
                                                                                                                          	// characters. This is the default value type.
                                                                                                                          	//   "BOOL" - Boolean; true or false.
                                                                                                                          	//   "INT64" - A 64-bit signed integer.
                                                                                                                          	ValueType string `json:"valueType,omitempty"`
                                                                                                                          
                                                                                                                          	// ForceSendFields is a list of field names (e.g. "Description") to
                                                                                                                          	// unconditionally include in API requests. By default, fields with
                                                                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                                                                          	// used to include empty fields in Patch requests.
                                                                                                                          	ForceSendFields []string `json:"-"`
                                                                                                                          
                                                                                                                          	// NullFields is a list of field names (e.g. "Description") to include
                                                                                                                          	// in API requests with the JSON null value. By default, fields with
                                                                                                                          	// empty values are omitted from API requests. However, any field with
                                                                                                                          	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                          	// This may be used to include null fields in Patch requests.
                                                                                                                          	NullFields []string `json:"-"`
                                                                                                                          }

                                                                                                                            LabelDescriptor: A description of a label.

                                                                                                                            func (*LabelDescriptor) MarshalJSON

                                                                                                                            func (s *LabelDescriptor) MarshalJSON() ([]byte, error)

                                                                                                                            type LabelValue

                                                                                                                            type LabelValue struct {
                                                                                                                            	// BoolValue: A bool label value.
                                                                                                                            	BoolValue bool `json:"boolValue,omitempty"`
                                                                                                                            
                                                                                                                            	// Int64Value: An int64 label value.
                                                                                                                            	Int64Value int64 `json:"int64Value,omitempty,string"`
                                                                                                                            
                                                                                                                            	// StringValue: A string label value.
                                                                                                                            	StringValue string `json:"stringValue,omitempty"`
                                                                                                                            
                                                                                                                            	// ForceSendFields is a list of field names (e.g. "BoolValue") to
                                                                                                                            	// unconditionally include in API requests. By default, fields with
                                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                                            
                                                                                                                            	// NullFields is a list of field names (e.g. "BoolValue") to include in
                                                                                                                            	// API requests with the JSON null value. By default, fields with empty
                                                                                                                            	// values are omitted from API requests. However, any field with an
                                                                                                                            	// empty value appearing in NullFields will be sent to the server as
                                                                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                            	// This may be used to include null fields in Patch requests.
                                                                                                                            	NullFields []string `json:"-"`
                                                                                                                            }

                                                                                                                              LabelValue: A label value.

                                                                                                                              func (*LabelValue) MarshalJSON

                                                                                                                              func (s *LabelValue) MarshalJSON() ([]byte, error)

                                                                                                                              type LatencyCriteria

                                                                                                                              type LatencyCriteria struct {
                                                                                                                              	// Threshold: Good service is defined to be the count of requests made
                                                                                                                              	// to this service that return in no more than threshold.
                                                                                                                              	Threshold string `json:"threshold,omitempty"`
                                                                                                                              
                                                                                                                              	// ForceSendFields is a list of field names (e.g. "Threshold") to
                                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                                              
                                                                                                                              	// NullFields is a list of field names (e.g. "Threshold") to include in
                                                                                                                              	// API requests with the JSON null value. By default, fields with empty
                                                                                                                              	// values are omitted from API requests. However, any field with an
                                                                                                                              	// empty value appearing in NullFields will be sent to the server as
                                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                                              	NullFields []string `json:"-"`
                                                                                                                              }

                                                                                                                                LatencyCriteria: Parameters for a latency threshold SLI.

                                                                                                                                func (*LatencyCriteria) MarshalJSON

                                                                                                                                func (s *LatencyCriteria) MarshalJSON() ([]byte, error)

                                                                                                                                type Linear

                                                                                                                                type Linear struct {
                                                                                                                                	// NumFiniteBuckets: Must be greater than 0.
                                                                                                                                	NumFiniteBuckets int64 `json:"numFiniteBuckets,omitempty"`
                                                                                                                                
                                                                                                                                	// Offset: Lower bound of the first bucket.
                                                                                                                                	Offset float64 `json:"offset,omitempty"`
                                                                                                                                
                                                                                                                                	// Width: Must be greater than 0.
                                                                                                                                	Width float64 `json:"width,omitempty"`
                                                                                                                                
                                                                                                                                	// ForceSendFields is a list of field names (e.g. "NumFiniteBuckets") to
                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                
                                                                                                                                	// NullFields is a list of field names (e.g. "NumFiniteBuckets") to
                                                                                                                                	// include in API requests with the JSON null value. By default, fields
                                                                                                                                	// with empty values are omitted from API requests. However, any field
                                                                                                                                	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                	// server as null. It is an error if a field in this list has a
                                                                                                                                	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                	// requests.
                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                }

                                                                                                                                  Linear: Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 <= i < N-1): offset + (width * i). Lower bound (1 <= i < N): offset + (width * (i - 1)).

                                                                                                                                  func (*Linear) MarshalJSON

                                                                                                                                  func (s *Linear) MarshalJSON() ([]byte, error)

                                                                                                                                  func (*Linear) UnmarshalJSON

                                                                                                                                  func (s *Linear) UnmarshalJSON(data []byte) error

                                                                                                                                  type ListAlertPoliciesResponse

                                                                                                                                  type ListAlertPoliciesResponse struct {
                                                                                                                                  	// AlertPolicies: The returned alert policies.
                                                                                                                                  	AlertPolicies []*AlertPolicy `json:"alertPolicies,omitempty"`
                                                                                                                                  
                                                                                                                                  	// NextPageToken: If there might be more results than were returned,
                                                                                                                                  	// then this field is set to a non-empty value. To see the additional
                                                                                                                                  	// results, use that value as page_token in the next call to this
                                                                                                                                  	// method.
                                                                                                                                  	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                  
                                                                                                                                  	// TotalSize: The total number of alert policies in all pages. This
                                                                                                                                  	// number is only an estimate, and may change in subsequent pages.
                                                                                                                                  	// https://aip.dev/158
                                                                                                                                  	TotalSize int64 `json:"totalSize,omitempty"`
                                                                                                                                  
                                                                                                                                  	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                  	// server.
                                                                                                                                  	googleapi.ServerResponse `json:"-"`
                                                                                                                                  
                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "AlertPolicies") to
                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                  
                                                                                                                                  	// NullFields is a list of field names (e.g. "AlertPolicies") to include
                                                                                                                                  	// in API requests with the JSON null value. By default, fields with
                                                                                                                                  	// empty values are omitted from API requests. However, any field with
                                                                                                                                  	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                  }

                                                                                                                                    ListAlertPoliciesResponse: The protocol for the ListAlertPolicies response.

                                                                                                                                    func (*ListAlertPoliciesResponse) MarshalJSON

                                                                                                                                    func (s *ListAlertPoliciesResponse) MarshalJSON() ([]byte, error)

                                                                                                                                    type ListGroupMembersResponse

                                                                                                                                    type ListGroupMembersResponse struct {
                                                                                                                                    	// Members: A set of monitored resources in the group.
                                                                                                                                    	Members []*MonitoredResource `json:"members,omitempty"`
                                                                                                                                    
                                                                                                                                    	// NextPageToken: If there are more results than have been returned,
                                                                                                                                    	// then this field is set to a non-empty value. To see the additional
                                                                                                                                    	// results, use that value as page_token in the next call to this
                                                                                                                                    	// method.
                                                                                                                                    	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                    
                                                                                                                                    	// TotalSize: The total number of elements matching this request.
                                                                                                                                    	TotalSize int64 `json:"totalSize,omitempty"`
                                                                                                                                    
                                                                                                                                    	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                    	// server.
                                                                                                                                    	googleapi.ServerResponse `json:"-"`
                                                                                                                                    
                                                                                                                                    	// ForceSendFields is a list of field names (e.g. "Members") to
                                                                                                                                    	// unconditionally include in API requests. By default, fields with
                                                                                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                                                                                    	// used to include empty fields in Patch requests.
                                                                                                                                    	ForceSendFields []string `json:"-"`
                                                                                                                                    
                                                                                                                                    	// NullFields is a list of field names (e.g. "Members") to include in
                                                                                                                                    	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                    	// values are omitted from API requests. However, any field with an
                                                                                                                                    	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                    	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                    	// This may be used to include null fields in Patch requests.
                                                                                                                                    	NullFields []string `json:"-"`
                                                                                                                                    }

                                                                                                                                      ListGroupMembersResponse: The ListGroupMembers response.

                                                                                                                                      func (*ListGroupMembersResponse) MarshalJSON

                                                                                                                                      func (s *ListGroupMembersResponse) MarshalJSON() ([]byte, error)

                                                                                                                                      type ListGroupsResponse

                                                                                                                                      type ListGroupsResponse struct {
                                                                                                                                      	// Group: The groups that match the specified filters.
                                                                                                                                      	Group []*Group `json:"group,omitempty"`
                                                                                                                                      
                                                                                                                                      	// NextPageToken: If there are more results than have been returned,
                                                                                                                                      	// then this field is set to a non-empty value. To see the additional
                                                                                                                                      	// results, use that value as page_token in the next call to this
                                                                                                                                      	// method.
                                                                                                                                      	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                      
                                                                                                                                      	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                      	// server.
                                                                                                                                      	googleapi.ServerResponse `json:"-"`
                                                                                                                                      
                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "Group") to
                                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                      
                                                                                                                                      	// NullFields is a list of field names (e.g. "Group") to include in API
                                                                                                                                      	// requests with the JSON null value. By default, fields with empty
                                                                                                                                      	// values are omitted from API requests. However, any field with an
                                                                                                                                      	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                      }

                                                                                                                                        ListGroupsResponse: The ListGroups response.

                                                                                                                                        func (*ListGroupsResponse) MarshalJSON

                                                                                                                                        func (s *ListGroupsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                        type ListMetricDescriptorsResponse

                                                                                                                                        type ListMetricDescriptorsResponse struct {
                                                                                                                                        	// MetricDescriptors: The metric descriptors that are available to the
                                                                                                                                        	// project and that match the value of filter, if present.
                                                                                                                                        	MetricDescriptors []*MetricDescriptor `json:"metricDescriptors,omitempty"`
                                                                                                                                        
                                                                                                                                        	// NextPageToken: If there are more results than have been returned,
                                                                                                                                        	// then this field is set to a non-empty value. To see the additional
                                                                                                                                        	// results, use that value as page_token in the next call to this
                                                                                                                                        	// method.
                                                                                                                                        	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                        
                                                                                                                                        	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                        	// server.
                                                                                                                                        	googleapi.ServerResponse `json:"-"`
                                                                                                                                        
                                                                                                                                        	// ForceSendFields is a list of field names (e.g. "MetricDescriptors")
                                                                                                                                        	// to unconditionally include in API requests. By default, fields with
                                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                                        
                                                                                                                                        	// NullFields is a list of field names (e.g. "MetricDescriptors") to
                                                                                                                                        	// include in API requests with the JSON null value. By default, fields
                                                                                                                                        	// with empty values are omitted from API requests. However, any field
                                                                                                                                        	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                        	// server as null. It is an error if a field in this list has a
                                                                                                                                        	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                        	// requests.
                                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                                        }

                                                                                                                                          ListMetricDescriptorsResponse: The ListMetricDescriptors response.

                                                                                                                                          func (*ListMetricDescriptorsResponse) MarshalJSON

                                                                                                                                          func (s *ListMetricDescriptorsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                          type ListMonitoredResourceDescriptorsResponse

                                                                                                                                          type ListMonitoredResourceDescriptorsResponse struct {
                                                                                                                                          	// NextPageToken: If there are more results than have been returned,
                                                                                                                                          	// then this field is set to a non-empty value. To see the additional
                                                                                                                                          	// results, use that value as page_token in the next call to this
                                                                                                                                          	// method.
                                                                                                                                          	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                          
                                                                                                                                          	// ResourceDescriptors: The monitored resource descriptors that are
                                                                                                                                          	// available to this project and that match filter, if present.
                                                                                                                                          	ResourceDescriptors []*MonitoredResourceDescriptor `json:"resourceDescriptors,omitempty"`
                                                                                                                                          
                                                                                                                                          	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                          	// server.
                                                                                                                                          	googleapi.ServerResponse `json:"-"`
                                                                                                                                          
                                                                                                                                          	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                          	// unconditionally include in API requests. By default, fields with
                                                                                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                                                                                          	// used to include empty fields in Patch requests.
                                                                                                                                          	ForceSendFields []string `json:"-"`
                                                                                                                                          
                                                                                                                                          	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                          	// in API requests with the JSON null value. By default, fields with
                                                                                                                                          	// empty values are omitted from API requests. However, any field with
                                                                                                                                          	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                          	// This may be used to include null fields in Patch requests.
                                                                                                                                          	NullFields []string `json:"-"`
                                                                                                                                          }

                                                                                                                                            ListMonitoredResourceDescriptorsResponse: The ListMonitoredResourceDescriptors response.

                                                                                                                                            func (*ListMonitoredResourceDescriptorsResponse) MarshalJSON

                                                                                                                                            func (s *ListMonitoredResourceDescriptorsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                            type ListNotificationChannelDescriptorsResponse

                                                                                                                                            type ListNotificationChannelDescriptorsResponse struct {
                                                                                                                                            	// ChannelDescriptors: The monitored resource descriptors supported for
                                                                                                                                            	// the specified project, optionally filtered.
                                                                                                                                            	ChannelDescriptors []*NotificationChannelDescriptor `json:"channelDescriptors,omitempty"`
                                                                                                                                            
                                                                                                                                            	// NextPageToken: If not empty, indicates that there may be more results
                                                                                                                                            	// that match the request. Use the value in the page_token field in a
                                                                                                                                            	// subsequent request to fetch the next set of results. If empty, all
                                                                                                                                            	// results have been returned.
                                                                                                                                            	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                            
                                                                                                                                            	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                            	// server.
                                                                                                                                            	googleapi.ServerResponse `json:"-"`
                                                                                                                                            
                                                                                                                                            	// ForceSendFields is a list of field names (e.g. "ChannelDescriptors")
                                                                                                                                            	// to unconditionally include in API requests. By default, fields with
                                                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                                                            
                                                                                                                                            	// NullFields is a list of field names (e.g. "ChannelDescriptors") to
                                                                                                                                            	// include in API requests with the JSON null value. By default, fields
                                                                                                                                            	// with empty values are omitted from API requests. However, any field
                                                                                                                                            	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                            	// server as null. It is an error if a field in this list has a
                                                                                                                                            	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                            	// requests.
                                                                                                                                            	NullFields []string `json:"-"`
                                                                                                                                            }

                                                                                                                                              ListNotificationChannelDescriptorsResponse: The ListNotificationChannelDescriptors response.

                                                                                                                                              func (*ListNotificationChannelDescriptorsResponse) MarshalJSON

                                                                                                                                              type ListNotificationChannelsResponse

                                                                                                                                              type ListNotificationChannelsResponse struct {
                                                                                                                                              	// NextPageToken: If not empty, indicates that there may be more results
                                                                                                                                              	// that match the request. Use the value in the page_token field in a
                                                                                                                                              	// subsequent request to fetch the next set of results. If empty, all
                                                                                                                                              	// results have been returned.
                                                                                                                                              	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                              
                                                                                                                                              	// NotificationChannels: The notification channels defined for the
                                                                                                                                              	// specified project.
                                                                                                                                              	NotificationChannels []*NotificationChannel `json:"notificationChannels,omitempty"`
                                                                                                                                              
                                                                                                                                              	// TotalSize: The total number of notification channels in all pages.
                                                                                                                                              	// This number is only an estimate, and may change in subsequent pages.
                                                                                                                                              	// https://aip.dev/158
                                                                                                                                              	TotalSize int64 `json:"totalSize,omitempty"`
                                                                                                                                              
                                                                                                                                              	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                              	// server.
                                                                                                                                              	googleapi.ServerResponse `json:"-"`
                                                                                                                                              
                                                                                                                                              	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                                                              
                                                                                                                                              	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                              	// in API requests with the JSON null value. By default, fields with
                                                                                                                                              	// empty values are omitted from API requests. However, any field with
                                                                                                                                              	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                                                              	NullFields []string `json:"-"`
                                                                                                                                              }

                                                                                                                                                ListNotificationChannelsResponse: The ListNotificationChannels response.

                                                                                                                                                func (*ListNotificationChannelsResponse) MarshalJSON

                                                                                                                                                func (s *ListNotificationChannelsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                type ListServiceLevelObjectivesResponse

                                                                                                                                                type ListServiceLevelObjectivesResponse struct {
                                                                                                                                                	// NextPageToken: If there are more results than have been returned,
                                                                                                                                                	// then this field is set to a non-empty value. To see the additional
                                                                                                                                                	// results, use that value as page_token in the next call to this
                                                                                                                                                	// method.
                                                                                                                                                	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ServiceLevelObjectives: The ServiceLevelObjectives matching the
                                                                                                                                                	// specified filter.
                                                                                                                                                	ServiceLevelObjectives []*ServiceLevelObjective `json:"serviceLevelObjectives,omitempty"`
                                                                                                                                                
                                                                                                                                                	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                	// server.
                                                                                                                                                	googleapi.ServerResponse `json:"-"`
                                                                                                                                                
                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                
                                                                                                                                                	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                                	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                	// empty values are omitted from API requests. However, any field with
                                                                                                                                                	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                }

                                                                                                                                                  ListServiceLevelObjectivesResponse: The ListServiceLevelObjectives response.

                                                                                                                                                  func (*ListServiceLevelObjectivesResponse) MarshalJSON

                                                                                                                                                  func (s *ListServiceLevelObjectivesResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                  type ListServicesResponse

                                                                                                                                                  type ListServicesResponse struct {
                                                                                                                                                  	// NextPageToken: If there are more results than have been returned,
                                                                                                                                                  	// then this field is set to a non-empty value. To see the additional
                                                                                                                                                  	// results, use that value as page_token in the next call to this
                                                                                                                                                  	// method.
                                                                                                                                                  	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// Services: The Services matching the specified filter.
                                                                                                                                                  	Services []*MService `json:"services,omitempty"`
                                                                                                                                                  
                                                                                                                                                  	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                  	// server.
                                                                                                                                                  	googleapi.ServerResponse `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                  
                                                                                                                                                  	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                                  	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                  	// empty values are omitted from API requests. However, any field with
                                                                                                                                                  	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                  }

                                                                                                                                                    ListServicesResponse: The ListServices response.

                                                                                                                                                    func (*ListServicesResponse) MarshalJSON

                                                                                                                                                    func (s *ListServicesResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                    type ListTimeSeriesResponse

                                                                                                                                                    type ListTimeSeriesResponse struct {
                                                                                                                                                    	// ExecutionErrors: Query execution errors that may have caused the time
                                                                                                                                                    	// series data returned to be incomplete.
                                                                                                                                                    	ExecutionErrors []*Status `json:"executionErrors,omitempty"`
                                                                                                                                                    
                                                                                                                                                    	// NextPageToken: If there are more results than have been returned,
                                                                                                                                                    	// then this field is set to a non-empty value. To see the additional
                                                                                                                                                    	// results, use that value as page_token in the next call to this
                                                                                                                                                    	// method.
                                                                                                                                                    	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                    
                                                                                                                                                    	// TimeSeries: One or more time series that match the filter included in
                                                                                                                                                    	// the request.
                                                                                                                                                    	TimeSeries []*TimeSeries `json:"timeSeries,omitempty"`
                                                                                                                                                    
                                                                                                                                                    	// Unit: The unit in which all time_series point values are reported.
                                                                                                                                                    	// unit follows the UCUM format for units as seen in
                                                                                                                                                    	// https://unitsofmeasure.org/ucum.html. If different time_series have
                                                                                                                                                    	// different units (for example, because they come from different metric
                                                                                                                                                    	// types, or a unit is absent), then unit will be "{not_a_unit}".
                                                                                                                                                    	Unit string `json:"unit,omitempty"`
                                                                                                                                                    
                                                                                                                                                    	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                    	// server.
                                                                                                                                                    	googleapi.ServerResponse `json:"-"`
                                                                                                                                                    
                                                                                                                                                    	// ForceSendFields is a list of field names (e.g. "ExecutionErrors") to
                                                                                                                                                    	// unconditionally include in API requests. By default, fields with
                                                                                                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                    	// used to include empty fields in Patch requests.
                                                                                                                                                    	ForceSendFields []string `json:"-"`
                                                                                                                                                    
                                                                                                                                                    	// NullFields is a list of field names (e.g. "ExecutionErrors") to
                                                                                                                                                    	// include in API requests with the JSON null value. By default, fields
                                                                                                                                                    	// with empty values are omitted from API requests. However, any field
                                                                                                                                                    	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                                    	// server as null. It is an error if a field in this list has a
                                                                                                                                                    	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                                    	// requests.
                                                                                                                                                    	NullFields []string `json:"-"`
                                                                                                                                                    }

                                                                                                                                                      ListTimeSeriesResponse: The ListTimeSeries response.

                                                                                                                                                      func (*ListTimeSeriesResponse) MarshalJSON

                                                                                                                                                      func (s *ListTimeSeriesResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                      type ListUptimeCheckConfigsResponse

                                                                                                                                                      type ListUptimeCheckConfigsResponse struct {
                                                                                                                                                      	// NextPageToken: This field represents the pagination token to retrieve
                                                                                                                                                      	// the next page of results. If the value is empty, it means no further
                                                                                                                                                      	// results for the request. To retrieve the next page of results, the
                                                                                                                                                      	// value of the next_page_token is passed to the subsequent List method
                                                                                                                                                      	// call (in the request message's page_token field).
                                                                                                                                                      	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                      
                                                                                                                                                      	// TotalSize: The total number of Uptime check configurations for the
                                                                                                                                                      	// project, irrespective of any pagination.
                                                                                                                                                      	TotalSize int64 `json:"totalSize,omitempty"`
                                                                                                                                                      
                                                                                                                                                      	// UptimeCheckConfigs: The returned Uptime check configurations.
                                                                                                                                                      	UptimeCheckConfigs []*UptimeCheckConfig `json:"uptimeCheckConfigs,omitempty"`
                                                                                                                                                      
                                                                                                                                                      	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                      	// server.
                                                                                                                                                      	googleapi.ServerResponse `json:"-"`
                                                                                                                                                      
                                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                                      
                                                                                                                                                      	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                                      	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                      	// empty values are omitted from API requests. However, any field with
                                                                                                                                                      	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                                      }

                                                                                                                                                        ListUptimeCheckConfigsResponse: The protocol for the ListUptimeCheckConfigs response.

                                                                                                                                                        func (*ListUptimeCheckConfigsResponse) MarshalJSON

                                                                                                                                                        func (s *ListUptimeCheckConfigsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                        type ListUptimeCheckIpsResponse

                                                                                                                                                        type ListUptimeCheckIpsResponse struct {
                                                                                                                                                        	// NextPageToken: This field represents the pagination token to retrieve
                                                                                                                                                        	// the next page of results. If the value is empty, it means no further
                                                                                                                                                        	// results for the request. To retrieve the next page of results, the
                                                                                                                                                        	// value of the next_page_token is passed to the subsequent List method
                                                                                                                                                        	// call (in the request message's page_token field). NOTE: this field is
                                                                                                                                                        	// not yet implemented
                                                                                                                                                        	NextPageToken string `json:"nextPageToken,omitempty"`
                                                                                                                                                        
                                                                                                                                                        	// UptimeCheckIps: The returned list of IP addresses (including region
                                                                                                                                                        	// and location) that the checkers run from.
                                                                                                                                                        	UptimeCheckIps []*UptimeCheckIp `json:"uptimeCheckIps,omitempty"`
                                                                                                                                                        
                                                                                                                                                        	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                        	// server.
                                                                                                                                                        	googleapi.ServerResponse `json:"-"`
                                                                                                                                                        
                                                                                                                                                        	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
                                                                                                                                                        	// unconditionally include in API requests. By default, fields with
                                                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                                                        
                                                                                                                                                        	// NullFields is a list of field names (e.g. "NextPageToken") to include
                                                                                                                                                        	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                        	// empty values are omitted from API requests. However, any field with
                                                                                                                                                        	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                        	// This may be used to include null fields in Patch requests.
                                                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                                                        }

                                                                                                                                                          ListUptimeCheckIpsResponse: The protocol for the ListUptimeCheckIps response.

                                                                                                                                                          func (*ListUptimeCheckIpsResponse) MarshalJSON

                                                                                                                                                          func (s *ListUptimeCheckIpsResponse) MarshalJSON() ([]byte, error)

                                                                                                                                                          type MService

                                                                                                                                                          type MService struct {
                                                                                                                                                          	// AppEngine: Type used for App Engine services.
                                                                                                                                                          	AppEngine *AppEngine `json:"appEngine,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// CloudEndpoints: Type used for Cloud Endpoints services.
                                                                                                                                                          	CloudEndpoints *CloudEndpoints `json:"cloudEndpoints,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// ClusterIstio: Type used for Istio services that live in a Kubernetes
                                                                                                                                                          	// cluster.
                                                                                                                                                          	ClusterIstio *ClusterIstio `json:"clusterIstio,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// Custom: Custom service type.
                                                                                                                                                          	Custom *Custom `json:"custom,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// DisplayName: Name used for UI elements listing this Service.
                                                                                                                                                          	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// IstioCanonicalService: Type used for canonical services scoped to an
                                                                                                                                                          	// Istio mesh. Metrics for Istio are documented here
                                                                                                                                                          	// (https://istio.io/latest/docs/reference/config/metrics/)
                                                                                                                                                          	IstioCanonicalService *IstioCanonicalService `json:"istioCanonicalService,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// MeshIstio: Type used for Istio services scoped to an Istio mesh.
                                                                                                                                                          	MeshIstio *MeshIstio `json:"meshIstio,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// Name: Resource name for this Service. The format is:
                                                                                                                                                          	// projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]
                                                                                                                                                          	Name string `json:"name,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// Telemetry: Configuration for how to query telemetry on a Service.
                                                                                                                                                          	Telemetry *Telemetry `json:"telemetry,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                          	// server.
                                                                                                                                                          	googleapi.ServerResponse `json:"-"`
                                                                                                                                                          
                                                                                                                                                          	// ForceSendFields is a list of field names (e.g. "AppEngine") to
                                                                                                                                                          	// unconditionally include in API requests. By default, fields with
                                                                                                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                          	// used to include empty fields in Patch requests.
                                                                                                                                                          	ForceSendFields []string `json:"-"`
                                                                                                                                                          
                                                                                                                                                          	// NullFields is a list of field names (e.g. "AppEngine") to include in
                                                                                                                                                          	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                          	// values are omitted from API requests. However, any field with an
                                                                                                                                                          	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                          	// This may be used to include null fields in Patch requests.
                                                                                                                                                          	NullFields []string `json:"-"`
                                                                                                                                                          }

                                                                                                                                                            MService: A Service is a discrete, autonomous, and network-accessible unit, designed to solve an individual concern (Wikipedia (https://en.wikipedia.org/wiki/Service-orientation)). In Cloud Monitoring, a Service acts as the root resource under which operational aspects of the service are accessible.

                                                                                                                                                            func (*MService) MarshalJSON

                                                                                                                                                            func (s *MService) MarshalJSON() ([]byte, error)

                                                                                                                                                            type MeshIstio

                                                                                                                                                            type MeshIstio struct {
                                                                                                                                                            	// MeshUid: Identifier for the mesh in which this Istio service is
                                                                                                                                                            	// defined. Corresponds to the mesh_uid metric label in Istio metrics.
                                                                                                                                                            	MeshUid string `json:"meshUid,omitempty"`
                                                                                                                                                            
                                                                                                                                                            	// ServiceName: The name of the Istio service underlying this service.
                                                                                                                                                            	// Corresponds to the destination_service_name metric label in Istio
                                                                                                                                                            	// metrics.
                                                                                                                                                            	ServiceName string `json:"serviceName,omitempty"`
                                                                                                                                                            
                                                                                                                                                            	// ServiceNamespace: The namespace of the Istio service underlying this
                                                                                                                                                            	// service. Corresponds to the destination_service_namespace metric
                                                                                                                                                            	// label in Istio metrics.
                                                                                                                                                            	ServiceNamespace string `json:"serviceNamespace,omitempty"`
                                                                                                                                                            
                                                                                                                                                            	// ForceSendFields is a list of field names (e.g. "MeshUid") to
                                                                                                                                                            	// unconditionally include in API requests. By default, fields with
                                                                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                                                                            
                                                                                                                                                            	// NullFields is a list of field names (e.g. "MeshUid") to include in
                                                                                                                                                            	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                            	// values are omitted from API requests. However, any field with an
                                                                                                                                                            	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                            	// This may be used to include null fields in Patch requests.
                                                                                                                                                            	NullFields []string `json:"-"`
                                                                                                                                                            }

                                                                                                                                                              MeshIstio: Istio service scoped to an Istio mesh. Anthos clusters running ASM < 1.6.8 will have their services ingested as this type.

                                                                                                                                                              func (*MeshIstio) MarshalJSON

                                                                                                                                                              func (s *MeshIstio) MarshalJSON() ([]byte, error)

                                                                                                                                                              type Metric

                                                                                                                                                              type Metric struct {
                                                                                                                                                              	// Labels: The set of label values that uniquely identify this metric.
                                                                                                                                                              	// All labels listed in the MetricDescriptor must be assigned values.
                                                                                                                                                              	Labels map[string]string `json:"labels,omitempty"`
                                                                                                                                                              
                                                                                                                                                              	// Type: An existing metric type, see google.api.MetricDescriptor. For
                                                                                                                                                              	// example, custom.googleapis.com/invoice/paid/amount.
                                                                                                                                                              	Type string `json:"type,omitempty"`
                                                                                                                                                              
                                                                                                                                                              	// ForceSendFields is a list of field names (e.g. "Labels") to
                                                                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                                                                              
                                                                                                                                                              	// NullFields is a list of field names (e.g. "Labels") to include in API
                                                                                                                                                              	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                              	// values are omitted from API requests. However, any field with an
                                                                                                                                                              	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                                                                              	NullFields []string `json:"-"`
                                                                                                                                                              }

                                                                                                                                                                Metric: A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.

                                                                                                                                                                func (*Metric) MarshalJSON

                                                                                                                                                                func (s *Metric) MarshalJSON() ([]byte, error)

                                                                                                                                                                type MetricAbsence

                                                                                                                                                                type MetricAbsence struct {
                                                                                                                                                                	// Aggregations: Specifies the alignment of data points in individual
                                                                                                                                                                	// time series as well as how to combine the retrieved time series
                                                                                                                                                                	// together (such as when aggregating multiple streams on each resource
                                                                                                                                                                	// to a single stream for each resource or when aggregating streams
                                                                                                                                                                	// across all members of a group of resrouces). Multiple aggregations
                                                                                                                                                                	// are applied in the order specified.This field is similar to the one
                                                                                                                                                                	// in the ListTimeSeries request
                                                                                                                                                                	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
                                                                                                                                                                	// It is advisable to use the ListTimeSeries method when debugging this
                                                                                                                                                                	// field.
                                                                                                                                                                	Aggregations []*Aggregation `json:"aggregations,omitempty"`
                                                                                                                                                                
                                                                                                                                                                	// Duration: The amount of time that a time series must fail to report
                                                                                                                                                                	// new data to be considered failing. The minimum value of this field is
                                                                                                                                                                	// 120 seconds. Larger values that are a multiple of a minute--for
                                                                                                                                                                	// example, 240 or 300 seconds--are supported. If an invalid value is
                                                                                                                                                                	// given, an error will be returned. The Duration.nanos field is
                                                                                                                                                                	// ignored.
                                                                                                                                                                	Duration string `json:"duration,omitempty"`
                                                                                                                                                                
                                                                                                                                                                	// Filter: Required. A filter
                                                                                                                                                                	// (https://cloud.google.com/monitoring/api/v3/filters) that identifies
                                                                                                                                                                	// which time series should be compared with the threshold.The filter is
                                                                                                                                                                	// similar to the one that is specified in the ListTimeSeries request
                                                                                                                                                                	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list)
                                                                                                                                                                	// (that call is useful to verify the time series that will be retrieved
                                                                                                                                                                	// / processed). The filter must specify the metric type and the
                                                                                                                                                                	// resource type. Optionally, it can specify resource labels and metric
                                                                                                                                                                	// labels. This field must not exceed 2048 Unicode characters in length.
                                                                                                                                                                	Filter string `json:"filter,omitempty"`
                                                                                                                                                                
                                                                                                                                                                	// Trigger: The number/percent of time series for which the comparison
                                                                                                                                                                	// must hold in order for the condition to trigger. If unspecified, then
                                                                                                                                                                	// the condition will trigger if the comparison is true for any of the
                                                                                                                                                                	// time series that have been identified by filter and aggregations.
                                                                                                                                                                	Trigger *Trigger `json:"trigger,omitempty"`
                                                                                                                                                                
                                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "Aggregations") to
                                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                                
                                                                                                                                                                	// NullFields is a list of field names (e.g. "Aggregations") to include
                                                                                                                                                                	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                                }

                                                                                                                                                                  MetricAbsence: A condition type that checks that monitored resources are reporting data. The configuration defines a metric and a set of monitored resources. The predicate is considered in violation when a time series for the specified metric of a monitored resource does not include any data in the specified duration.

                                                                                                                                                                  func (*MetricAbsence) MarshalJSON

                                                                                                                                                                  func (s *MetricAbsence) MarshalJSON() ([]byte, error)

                                                                                                                                                                  type MetricDescriptor

                                                                                                                                                                  type MetricDescriptor struct {
                                                                                                                                                                  	// Description: A detailed description of the metric, which can be used
                                                                                                                                                                  	// in documentation.
                                                                                                                                                                  	Description string `json:"description,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// DisplayName: A concise name for the metric, which can be displayed in
                                                                                                                                                                  	// user interfaces. Use sentence case without an ending period, for
                                                                                                                                                                  	// example "Request count". This field is optional but it is recommended
                                                                                                                                                                  	// to be set for any metrics associated with user-visible concepts, such
                                                                                                                                                                  	// as Quota.
                                                                                                                                                                  	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// Labels: The set of labels that can be used to describe a specific
                                                                                                                                                                  	// instance of this metric type. For example, the
                                                                                                                                                                  	// appengine.googleapis.com/http/server/response_latencies metric type
                                                                                                                                                                  	// has a label for the HTTP response code, response_code, so you can
                                                                                                                                                                  	// look at latencies for successful responses or just for responses that
                                                                                                                                                                  	// failed.
                                                                                                                                                                  	Labels []*LabelDescriptor `json:"labels,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// LaunchStage: Optional. The launch stage of the metric definition.
                                                                                                                                                                  	//
                                                                                                                                                                  	// Possible values:
                                                                                                                                                                  	//   "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                  	//   "UNIMPLEMENTED" - The feature is not yet implemented. Users can not
                                                                                                                                                                  	// use it.
                                                                                                                                                                  	//   "PRELAUNCH" - Prelaunch features are hidden from users and are only
                                                                                                                                                                  	// visible internally.
                                                                                                                                                                  	//   "EARLY_ACCESS" - Early Access features are limited to a closed
                                                                                                                                                                  	// group of testers. To use these features, you must sign up in advance
                                                                                                                                                                  	// and sign a Trusted Tester agreement (which includes confidentiality
                                                                                                                                                                  	// provisions). These features may be unstable, changed in
                                                                                                                                                                  	// backward-incompatible ways, and are not guaranteed to be released.
                                                                                                                                                                  	//   "ALPHA" - Alpha is a limited availability test for releases before
                                                                                                                                                                  	// they are cleared for widespread use. By Alpha, all significant design
                                                                                                                                                                  	// issues are resolved and we are in the process of verifying
                                                                                                                                                                  	// functionality. Alpha customers need to apply for access, agree to
                                                                                                                                                                  	// applicable terms, and have their projects allowlisted. Alpha releases
                                                                                                                                                                  	// don’t have to be feature complete, no SLAs are provided, and there
                                                                                                                                                                  	// are no technical support obligations, but they will be far enough
                                                                                                                                                                  	// along that customers can actually use them in test environments or
                                                                                                                                                                  	// for limited-use tests -- just like they would in normal production
                                                                                                                                                                  	// cases.
                                                                                                                                                                  	//   "BETA" - Beta is the point at which we are ready to open a release
                                                                                                                                                                  	// for any customer to use. There are no SLA or technical support
                                                                                                                                                                  	// obligations in a Beta release. Products will be complete from a
                                                                                                                                                                  	// feature perspective, but may have some open outstanding issues. Beta
                                                                                                                                                                  	// releases are suitable for limited production use cases.
                                                                                                                                                                  	//   "GA" - GA features are open to all developers and are considered
                                                                                                                                                                  	// stable and fully qualified for production use.
                                                                                                                                                                  	//   "DEPRECATED" - Deprecated features are scheduled to be shut down
                                                                                                                                                                  	// and removed. For more information, see the “Deprecation Policy”
                                                                                                                                                                  	// section of our Terms of Service (https://cloud.google.com/terms/) and
                                                                                                                                                                  	// the Google Cloud Platform Subject to the Deprecation Policy
                                                                                                                                                                  	// (https://cloud.google.com/terms/deprecation) documentation.
                                                                                                                                                                  	LaunchStage string `json:"launchStage,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// Metadata: Optional. Metadata which can be used to guide usage of the
                                                                                                                                                                  	// metric.
                                                                                                                                                                  	Metadata *MetricDescriptorMetadata `json:"metadata,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// MetricKind: Whether the metric records instantaneous values, changes
                                                                                                                                                                  	// to a value, etc. Some combinations of metric_kind and value_type
                                                                                                                                                                  	// might not be supported.
                                                                                                                                                                  	//
                                                                                                                                                                  	// Possible values:
                                                                                                                                                                  	//   "METRIC_KIND_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                  	//   "GAUGE" - An instantaneous measurement of a value.
                                                                                                                                                                  	//   "DELTA" - The change in a value during a time interval.
                                                                                                                                                                  	//   "CUMULATIVE" - A value accumulated over a time interval. Cumulative
                                                                                                                                                                  	// measurements in a time series should have the same start time and
                                                                                                                                                                  	// increasing end times, until an event resets the cumulative value to
                                                                                                                                                                  	// zero and sets a new start time for the following points.
                                                                                                                                                                  	MetricKind string `json:"metricKind,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// MonitoredResourceTypes: Read-only. If present, then a time series,
                                                                                                                                                                  	// which is identified partially by a metric type and a
                                                                                                                                                                  	// MonitoredResourceDescriptor, that is associated with this metric type
                                                                                                                                                                  	// can only be associated with one of the monitored resource types
                                                                                                                                                                  	// listed here.
                                                                                                                                                                  	MonitoredResourceTypes []string `json:"monitoredResourceTypes,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// Name: The resource name of the metric descriptor.
                                                                                                                                                                  	Name string `json:"name,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// Type: The metric type, including its DNS name prefix. The type is not
                                                                                                                                                                  	// URL-encoded. All user-defined metric types have the DNS name
                                                                                                                                                                  	// custom.googleapis.com or external.googleapis.com. Metric types should
                                                                                                                                                                  	// use a natural hierarchical grouping. For example:
                                                                                                                                                                  	// "custom.googleapis.com/invoice/paid/amount"
                                                                                                                                                                  	// "external.googleapis.com/prometheus/up"
                                                                                                                                                                  	// "appengine.googleapis.com/http/server/response_latencies"
                                                                                                                                                                  	Type string `json:"type,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// Unit: The units in which the metric value is reported. It is only
                                                                                                                                                                  	// applicable if the value_type is INT64, DOUBLE, or DISTRIBUTION. The
                                                                                                                                                                  	// unit defines the representation of the stored metric values.Different
                                                                                                                                                                  	// systems might scale the values to be more easily displayed (so a
                                                                                                                                                                  	// value of 0.02kBy might be displayed as 20By, and a value of 3523kBy
                                                                                                                                                                  	// might be displayed as 3.5MBy). However, if the unit is kBy, then the
                                                                                                                                                                  	// value of the metric is always in thousands of bytes, no matter how it
                                                                                                                                                                  	// might be displayed.If you want a custom metric to record the exact
                                                                                                                                                                  	// number of CPU-seconds used by a job, you can create an INT64
                                                                                                                                                                  	// CUMULATIVE metric whose unit is s{CPU} (or equivalently 1s{CPU} or
                                                                                                                                                                  	// just s). If the job uses 12,005 CPU-seconds, then the value is
                                                                                                                                                                  	// written as 12005.Alternatively, if you want a custom metric to record
                                                                                                                                                                  	// data in a more granular way, you can create a DOUBLE CUMULATIVE
                                                                                                                                                                  	// metric whose unit is ks{CPU}, and then write the value 12.005 (which
                                                                                                                                                                  	// is 12005/1000), or use Kis{CPU} and write 11.723 (which is
                                                                                                                                                                  	// 12005/1024).The supported units are a subset of The Unified Code for
                                                                                                                                                                  	// Units of Measure (https://unitsofmeasure.org/ucum.html)
                                                                                                                                                                  	// standard:Basic units (UNIT) bit bit By byte s second min minute h
                                                                                                                                                                  	// hour d day 1 dimensionlessPrefixes (PREFIX) k kilo (10^3) M mega
                                                                                                                                                                  	// (10^6) G giga (10^9) T tera (10^12) P peta (10^15) E exa (10^18) Z
                                                                                                                                                                  	// zetta (10^21) Y yotta (10^24) m milli (10^-3) u micro (10^-6) n nano
                                                                                                                                                                  	// (10^-9) p pico (10^-12) f femto (10^-15) a atto (10^-18) z zepto
                                                                                                                                                                  	// (10^-21) y yocto (10^-24) Ki kibi (2^10) Mi mebi (2^20) Gi gibi
                                                                                                                                                                  	// (2^30) Ti tebi (2^40) Pi pebi (2^50)GrammarThe grammar also includes
                                                                                                                                                                  	// these connectors: / division or ratio (as an infix operator). For
                                                                                                                                                                  	// examples, kBy/{email} or MiBy/10ms (although you should almost never
                                                                                                                                                                  	// have /s in a metric unit; rates should always be computed at query
                                                                                                                                                                  	// time from the underlying cumulative or delta value). . multiplication
                                                                                                                                                                  	// or composition (as an infix operator). For examples, GBy.d or
                                                                                                                                                                  	// k{watt}.h.The grammar for a unit is as follows: Expression =
                                                                                                                                                                  	// Component { "." Component } { "/" Component } ; Component = ( [
                                                                                                                                                                  	// PREFIX ] UNIT | "%" ) [ Annotation ] | Annotation | "1" ; Annotation
                                                                                                                                                                  	// = "{" NAME "}" ; Notes: Annotation is just a comment if it follows a
                                                                                                                                                                  	// UNIT. If the annotation is used alone, then the unit is equivalent to
                                                                                                                                                                  	// 1. For examples, {request}/s == 1/s, By{transmitted}/s == By/s. NAME
                                                                                                                                                                  	// is a sequence of non-blank printable ASCII characters not containing
                                                                                                                                                                  	// { or }. 1 represents a unitary dimensionless unit
                                                                                                                                                                  	// (https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such as
                                                                                                                                                                  	// in 1/s. It is typically used when none of the basic units are
                                                                                                                                                                  	// appropriate. For example, "new users per day" can be represented as
                                                                                                                                                                  	// 1/d or {new-users}/d (and a metric value 5 would mean "5 new users).
                                                                                                                                                                  	// Alternatively, "thousands of page views per day" would be represented
                                                                                                                                                                  	// as 1000/d or k1/d or k{page_views}/d (and a metric value of 5.3 would
                                                                                                                                                                  	// mean "5300 page views per day"). % represents dimensionless value of
                                                                                                                                                                  	// 1/100, and annotates values giving a percentage (so the metric values
                                                                                                                                                                  	// are typically in the range of 0..100, and a metric value 3 means "3
                                                                                                                                                                  	// percent"). 10^2.% indicates a metric contains a ratio, typically in
                                                                                                                                                                  	// the range 0..1, that will be multiplied by 100 and displayed as a
                                                                                                                                                                  	// percentage (so a metric value 0.03 means "3 percent").
                                                                                                                                                                  	Unit string `json:"unit,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// ValueType: Whether the measurement is an integer, a floating-point
                                                                                                                                                                  	// number, etc. Some combinations of metric_kind and value_type might
                                                                                                                                                                  	// not be supported.
                                                                                                                                                                  	//
                                                                                                                                                                  	// Possible values:
                                                                                                                                                                  	//   "VALUE_TYPE_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                  	//   "BOOL" - The value is a boolean. This value type can be used only
                                                                                                                                                                  	// if the metric kind is GAUGE.
                                                                                                                                                                  	//   "INT64" - The value is a signed 64-bit integer.
                                                                                                                                                                  	//   "DOUBLE" - The value is a double precision floating point number.
                                                                                                                                                                  	//   "STRING" - The value is a text string. This value type can be used
                                                                                                                                                                  	// only if the metric kind is GAUGE.
                                                                                                                                                                  	//   "DISTRIBUTION" - The value is a Distribution.
                                                                                                                                                                  	//   "MONEY" - The value is money.
                                                                                                                                                                  	ValueType string `json:"valueType,omitempty"`
                                                                                                                                                                  
                                                                                                                                                                  	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                                  	// server.
                                                                                                                                                                  	googleapi.ServerResponse `json:"-"`
                                                                                                                                                                  
                                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "Description") to
                                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                                  
                                                                                                                                                                  	// NullFields is a list of field names (e.g. "Description") to include
                                                                                                                                                                  	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                  	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                  	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                                  }

                                                                                                                                                                    MetricDescriptor: Defines a metric type and its schema. Once a metric descriptor is created, deleting or altering it stops data collection and makes the metric type's existing data unusable.

                                                                                                                                                                    func (*MetricDescriptor) MarshalJSON

                                                                                                                                                                    func (s *MetricDescriptor) MarshalJSON() ([]byte, error)

                                                                                                                                                                    type MetricDescriptorMetadata

                                                                                                                                                                    type MetricDescriptorMetadata struct {
                                                                                                                                                                    	// IngestDelay: The delay of data points caused by ingestion. Data
                                                                                                                                                                    	// points older than this age are guaranteed to be ingested and
                                                                                                                                                                    	// available to be read, excluding data loss due to errors.
                                                                                                                                                                    	IngestDelay string `json:"ingestDelay,omitempty"`
                                                                                                                                                                    
                                                                                                                                                                    	// LaunchStage: Deprecated. Must use the MetricDescriptor.launch_stage
                                                                                                                                                                    	// instead.
                                                                                                                                                                    	//
                                                                                                                                                                    	// Possible values:
                                                                                                                                                                    	//   "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                    	//   "UNIMPLEMENTED" - The feature is not yet implemented. Users can not
                                                                                                                                                                    	// use it.
                                                                                                                                                                    	//   "PRELAUNCH" - Prelaunch features are hidden from users and are only
                                                                                                                                                                    	// visible internally.
                                                                                                                                                                    	//   "EARLY_ACCESS" - Early Access features are limited to a closed
                                                                                                                                                                    	// group of testers. To use these features, you must sign up in advance
                                                                                                                                                                    	// and sign a Trusted Tester agreement (which includes confidentiality
                                                                                                                                                                    	// provisions). These features may be unstable, changed in
                                                                                                                                                                    	// backward-incompatible ways, and are not guaranteed to be released.
                                                                                                                                                                    	//   "ALPHA" - Alpha is a limited availability test for releases before
                                                                                                                                                                    	// they are cleared for widespread use. By Alpha, all significant design
                                                                                                                                                                    	// issues are resolved and we are in the process of verifying
                                                                                                                                                                    	// functionality. Alpha customers need to apply for access, agree to
                                                                                                                                                                    	// applicable terms, and have their projects allowlisted. Alpha releases
                                                                                                                                                                    	// don’t have to be feature complete, no SLAs are provided, and there
                                                                                                                                                                    	// are no technical support obligations, but they will be far enough
                                                                                                                                                                    	// along that customers can actually use them in test environments or
                                                                                                                                                                    	// for limited-use tests -- just like they would in normal production
                                                                                                                                                                    	// cases.
                                                                                                                                                                    	//   "BETA" - Beta is the point at which we are ready to open a release
                                                                                                                                                                    	// for any customer to use. There are no SLA or technical support
                                                                                                                                                                    	// obligations in a Beta release. Products will be complete from a
                                                                                                                                                                    	// feature perspective, but may have some open outstanding issues. Beta
                                                                                                                                                                    	// releases are suitable for limited production use cases.
                                                                                                                                                                    	//   "GA" - GA features are open to all developers and are considered
                                                                                                                                                                    	// stable and fully qualified for production use.
                                                                                                                                                                    	//   "DEPRECATED" - Deprecated features are scheduled to be shut down
                                                                                                                                                                    	// and removed. For more information, see the “Deprecation Policy”
                                                                                                                                                                    	// section of our Terms of Service (https://cloud.google.com/terms/) and
                                                                                                                                                                    	// the Google Cloud Platform Subject to the Deprecation Policy
                                                                                                                                                                    	// (https://cloud.google.com/terms/deprecation) documentation.
                                                                                                                                                                    	LaunchStage string `json:"launchStage,omitempty"`
                                                                                                                                                                    
                                                                                                                                                                    	// SamplePeriod: The sampling period of metric data points. For metrics
                                                                                                                                                                    	// which are written periodically, consecutive data points are stored at
                                                                                                                                                                    	// this time interval, excluding data loss due to errors. Metrics with a
                                                                                                                                                                    	// higher granularity have a smaller sampling period.
                                                                                                                                                                    	SamplePeriod string `json:"samplePeriod,omitempty"`
                                                                                                                                                                    
                                                                                                                                                                    	// ForceSendFields is a list of field names (e.g. "IngestDelay") to
                                                                                                                                                                    	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                    	// used to include empty fields in Patch requests.
                                                                                                                                                                    	ForceSendFields []string `json:"-"`
                                                                                                                                                                    
                                                                                                                                                                    	// NullFields is a list of field names (e.g. "IngestDelay") to include
                                                                                                                                                                    	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                    	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                    	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                    	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                    	// This may be used to include null fields in Patch requests.
                                                                                                                                                                    	NullFields []string `json:"-"`
                                                                                                                                                                    }

                                                                                                                                                                      MetricDescriptorMetadata: Additional annotations that can be used to guide the usage of a metric.

                                                                                                                                                                      func (*MetricDescriptorMetadata) MarshalJSON

                                                                                                                                                                      func (s *MetricDescriptorMetadata) MarshalJSON() ([]byte, error)

                                                                                                                                                                      type MetricRange

                                                                                                                                                                      type MetricRange struct {
                                                                                                                                                                      	// Range: Range of values considered "good." For a one-sided range, set
                                                                                                                                                                      	// one bound to an infinite value.
                                                                                                                                                                      	Range *GoogleMonitoringV3Range `json:"range,omitempty"`
                                                                                                                                                                      
                                                                                                                                                                      	// TimeSeries: A monitoring filter
                                                                                                                                                                      	// (https://cloud.google.com/monitoring/api/v3/filters) specifying the
                                                                                                                                                                      	// TimeSeries to use for evaluating window quality.
                                                                                                                                                                      	TimeSeries string `json:"timeSeries,omitempty"`
                                                                                                                                                                      
                                                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "Range") to
                                                                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                                                      
                                                                                                                                                                      	// NullFields is a list of field names (e.g. "Range") to include in API
                                                                                                                                                                      	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                                      	// values are omitted from API requests. However, any field with an
                                                                                                                                                                      	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                                                      }

                                                                                                                                                                        MetricRange: A MetricRange is used when each window is good when the value x of a single TimeSeries satisfies range.min <= x < range.max. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE.

                                                                                                                                                                        func (*MetricRange) MarshalJSON

                                                                                                                                                                        func (s *MetricRange) MarshalJSON() ([]byte, error)

                                                                                                                                                                        type MetricThreshold

                                                                                                                                                                        type MetricThreshold struct {
                                                                                                                                                                        	// Aggregations: Specifies the alignment of data points in individual
                                                                                                                                                                        	// time series as well as how to combine the retrieved time series
                                                                                                                                                                        	// together (such as when aggregating multiple streams on each resource
                                                                                                                                                                        	// to a single stream for each resource or when aggregating streams
                                                                                                                                                                        	// across all members of a group of resrouces). Multiple aggregations
                                                                                                                                                                        	// are applied in the order specified.This field is similar to the one
                                                                                                                                                                        	// in the ListTimeSeries request
                                                                                                                                                                        	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
                                                                                                                                                                        	// It is advisable to use the ListTimeSeries method when debugging this
                                                                                                                                                                        	// field.
                                                                                                                                                                        	Aggregations []*Aggregation `json:"aggregations,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// Comparison: The comparison to apply between the time series
                                                                                                                                                                        	// (indicated by filter and aggregation) and the threshold (indicated by
                                                                                                                                                                        	// threshold_value). The comparison is applied on each time series, with
                                                                                                                                                                        	// the time series on the left-hand side and the threshold on the
                                                                                                                                                                        	// right-hand side.Only COMPARISON_LT and COMPARISON_GT are supported
                                                                                                                                                                        	// currently.
                                                                                                                                                                        	//
                                                                                                                                                                        	// Possible values:
                                                                                                                                                                        	//   "COMPARISON_UNSPECIFIED" - No ordering relationship is specified.
                                                                                                                                                                        	//   "COMPARISON_GT" - True if the left argument is greater than the
                                                                                                                                                                        	// right argument.
                                                                                                                                                                        	//   "COMPARISON_GE" - True if the left argument is greater than or
                                                                                                                                                                        	// equal to the right argument.
                                                                                                                                                                        	//   "COMPARISON_LT" - True if the left argument is less than the right
                                                                                                                                                                        	// argument.
                                                                                                                                                                        	//   "COMPARISON_LE" - True if the left argument is less than or equal
                                                                                                                                                                        	// to the right argument.
                                                                                                                                                                        	//   "COMPARISON_EQ" - True if the left argument is equal to the right
                                                                                                                                                                        	// argument.
                                                                                                                                                                        	//   "COMPARISON_NE" - True if the left argument is not equal to the
                                                                                                                                                                        	// right argument.
                                                                                                                                                                        	Comparison string `json:"comparison,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// DenominatorAggregations: Specifies the alignment of data points in
                                                                                                                                                                        	// individual time series selected by denominatorFilter as well as how
                                                                                                                                                                        	// to combine the retrieved time series together (such as when
                                                                                                                                                                        	// aggregating multiple streams on each resource to a single stream for
                                                                                                                                                                        	// each resource or when aggregating streams across all members of a
                                                                                                                                                                        	// group of resources).When computing ratios, the aggregations and
                                                                                                                                                                        	// denominator_aggregations fields must use the same alignment period
                                                                                                                                                                        	// and produce time series that have the same periodicity and labels.
                                                                                                                                                                        	DenominatorAggregations []*Aggregation `json:"denominatorAggregations,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// DenominatorFilter: A filter
                                                                                                                                                                        	// (https://cloud.google.com/monitoring/api/v3/filters) that identifies
                                                                                                                                                                        	// a time series that should be used as the denominator of a ratio that
                                                                                                                                                                        	// will be compared with the threshold. If a denominator_filter is
                                                                                                                                                                        	// specified, the time series specified by the filter field will be used
                                                                                                                                                                        	// as the numerator.The filter must specify the metric type and
                                                                                                                                                                        	// optionally may contain restrictions on resource type, resource
                                                                                                                                                                        	// labels, and metric labels. This field may not exceed 2048 Unicode
                                                                                                                                                                        	// characters in length.
                                                                                                                                                                        	DenominatorFilter string `json:"denominatorFilter,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// Duration: The amount of time that a time series must violate the
                                                                                                                                                                        	// threshold to be considered failing. Currently, only values that are a
                                                                                                                                                                        	// multiple of a minute--e.g., 0, 60, 120, or 300 seconds--are
                                                                                                                                                                        	// supported. If an invalid value is given, an error will be returned.
                                                                                                                                                                        	// When choosing a duration, it is useful to keep in mind the frequency
                                                                                                                                                                        	// of the underlying time series data (which may also be affected by any
                                                                                                                                                                        	// alignments specified in the aggregations field); a good duration is
                                                                                                                                                                        	// long enough so that a single outlier does not generate spurious
                                                                                                                                                                        	// alerts, but short enough that unhealthy states are detected and
                                                                                                                                                                        	// alerted on quickly.
                                                                                                                                                                        	Duration string `json:"duration,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// Filter: Required. A filter
                                                                                                                                                                        	// (https://cloud.google.com/monitoring/api/v3/filters) that identifies
                                                                                                                                                                        	// which time series should be compared with the threshold.The filter is
                                                                                                                                                                        	// similar to the one that is specified in the ListTimeSeries request
                                                                                                                                                                        	// (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list)
                                                                                                                                                                        	// (that call is useful to verify the time series that will be retrieved
                                                                                                                                                                        	// / processed). The filter must specify the metric type and the
                                                                                                                                                                        	// resource type. Optionally, it can specify resource labels and metric
                                                                                                                                                                        	// labels. This field must not exceed 2048 Unicode characters in length.
                                                                                                                                                                        	Filter string `json:"filter,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// ThresholdValue: A value against which to compare the time series.
                                                                                                                                                                        	ThresholdValue float64 `json:"thresholdValue,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// Trigger: The number/percent of time series for which the comparison
                                                                                                                                                                        	// must hold in order for the condition to trigger. If unspecified, then
                                                                                                                                                                        	// the condition will trigger if the comparison is true for any of the
                                                                                                                                                                        	// time series that have been identified by filter and aggregations, or
                                                                                                                                                                        	// by the ratio, if denominator_filter and denominator_aggregations are
                                                                                                                                                                        	// specified.
                                                                                                                                                                        	Trigger *Trigger `json:"trigger,omitempty"`
                                                                                                                                                                        
                                                                                                                                                                        	// ForceSendFields is a list of field names (e.g. "Aggregations") to
                                                                                                                                                                        	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                                                                        
                                                                                                                                                                        	// NullFields is a list of field names (e.g. "Aggregations") to include
                                                                                                                                                                        	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                        	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                        	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                        	// This may be used to include null fields in Patch requests.
                                                                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                                                                        }

                                                                                                                                                                          MetricThreshold: A condition type that compares a collection of time series against a threshold.

                                                                                                                                                                          func (*MetricThreshold) MarshalJSON

                                                                                                                                                                          func (s *MetricThreshold) MarshalJSON() ([]byte, error)

                                                                                                                                                                          func (*MetricThreshold) UnmarshalJSON

                                                                                                                                                                          func (s *MetricThreshold) UnmarshalJSON(data []byte) error

                                                                                                                                                                          type MonitoredResource

                                                                                                                                                                          type MonitoredResource struct {
                                                                                                                                                                          	// Labels: Required. Values for all of the labels listed in the
                                                                                                                                                                          	// associated monitored resource descriptor. For example, Compute Engine
                                                                                                                                                                          	// VM instances use the labels "project_id", "instance_id", and "zone".
                                                                                                                                                                          	Labels map[string]string `json:"labels,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// Type: Required. The monitored resource type. This field must match
                                                                                                                                                                          	// the type field of a MonitoredResourceDescriptor object. For example,
                                                                                                                                                                          	// the type of a Compute Engine VM instance is gce_instance. For a list
                                                                                                                                                                          	// of types, see Monitoring resource types and Logging resource types.
                                                                                                                                                                          	Type string `json:"type,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// ForceSendFields is a list of field names (e.g. "Labels") to
                                                                                                                                                                          	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                          	// used to include empty fields in Patch requests.
                                                                                                                                                                          	ForceSendFields []string `json:"-"`
                                                                                                                                                                          
                                                                                                                                                                          	// NullFields is a list of field names (e.g. "Labels") to include in API
                                                                                                                                                                          	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                                          	// values are omitted from API requests. However, any field with an
                                                                                                                                                                          	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                          	// This may be used to include null fields in Patch requests.
                                                                                                                                                                          	NullFields []string `json:"-"`
                                                                                                                                                                          }

                                                                                                                                                                            MonitoredResource: An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and "zone": { "type": "gce_instance", "labels": { "instance_id": "12345678901234", "zone": "us-central1-a" }}

                                                                                                                                                                            func (*MonitoredResource) MarshalJSON

                                                                                                                                                                            func (s *MonitoredResource) MarshalJSON() ([]byte, error)

                                                                                                                                                                            type MonitoredResourceDescriptor

                                                                                                                                                                            type MonitoredResourceDescriptor struct {
                                                                                                                                                                            	// Description: Optional. A detailed description of the monitored
                                                                                                                                                                            	// resource type that might be used in documentation.
                                                                                                                                                                            	Description string `json:"description,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// DisplayName: Optional. A concise name for the monitored resource type
                                                                                                                                                                            	// that might be displayed in user interfaces. It should be a Title
                                                                                                                                                                            	// Cased Noun Phrase, without any article or other determiners. For
                                                                                                                                                                            	// example, "Google Cloud SQL Database".
                                                                                                                                                                            	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// Labels: Required. A set of labels used to describe instances of this
                                                                                                                                                                            	// monitored resource type. For example, an individual Google Cloud SQL
                                                                                                                                                                            	// database is identified by values for the labels "database_id" and
                                                                                                                                                                            	// "zone".
                                                                                                                                                                            	Labels []*LabelDescriptor `json:"labels,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// LaunchStage: Optional. The launch stage of the monitored resource
                                                                                                                                                                            	// definition.
                                                                                                                                                                            	//
                                                                                                                                                                            	// Possible values:
                                                                                                                                                                            	//   "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                            	//   "UNIMPLEMENTED" - The feature is not yet implemented. Users can not
                                                                                                                                                                            	// use it.
                                                                                                                                                                            	//   "PRELAUNCH" - Prelaunch features are hidden from users and are only
                                                                                                                                                                            	// visible internally.
                                                                                                                                                                            	//   "EARLY_ACCESS" - Early Access features are limited to a closed
                                                                                                                                                                            	// group of testers. To use these features, you must sign up in advance
                                                                                                                                                                            	// and sign a Trusted Tester agreement (which includes confidentiality
                                                                                                                                                                            	// provisions). These features may be unstable, changed in
                                                                                                                                                                            	// backward-incompatible ways, and are not guaranteed to be released.
                                                                                                                                                                            	//   "ALPHA" - Alpha is a limited availability test for releases before
                                                                                                                                                                            	// they are cleared for widespread use. By Alpha, all significant design
                                                                                                                                                                            	// issues are resolved and we are in the process of verifying
                                                                                                                                                                            	// functionality. Alpha customers need to apply for access, agree to
                                                                                                                                                                            	// applicable terms, and have their projects allowlisted. Alpha releases
                                                                                                                                                                            	// don’t have to be feature complete, no SLAs are provided, and there
                                                                                                                                                                            	// are no technical support obligations, but they will be far enough
                                                                                                                                                                            	// along that customers can actually use them in test environments or
                                                                                                                                                                            	// for limited-use tests -- just like they would in normal production
                                                                                                                                                                            	// cases.
                                                                                                                                                                            	//   "BETA" - Beta is the point at which we are ready to open a release
                                                                                                                                                                            	// for any customer to use. There are no SLA or technical support
                                                                                                                                                                            	// obligations in a Beta release. Products will be complete from a
                                                                                                                                                                            	// feature perspective, but may have some open outstanding issues. Beta
                                                                                                                                                                            	// releases are suitable for limited production use cases.
                                                                                                                                                                            	//   "GA" - GA features are open to all developers and are considered
                                                                                                                                                                            	// stable and fully qualified for production use.
                                                                                                                                                                            	//   "DEPRECATED" - Deprecated features are scheduled to be shut down
                                                                                                                                                                            	// and removed. For more information, see the “Deprecation Policy”
                                                                                                                                                                            	// section of our Terms of Service (https://cloud.google.com/terms/) and
                                                                                                                                                                            	// the Google Cloud Platform Subject to the Deprecation Policy
                                                                                                                                                                            	// (https://cloud.google.com/terms/deprecation) documentation.
                                                                                                                                                                            	LaunchStage string `json:"launchStage,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// Name: Optional. The resource name of the monitored resource
                                                                                                                                                                            	// descriptor:
                                                                                                                                                                            	// "projects/{project_id}/monitoredResourceDescriptors/{type}" where
                                                                                                                                                                            	// {type} is the value of the type field in this object and {project_id}
                                                                                                                                                                            	// is a project ID that provides API-specific context for accessing the
                                                                                                                                                                            	// type. APIs that do not use project information can use the resource
                                                                                                                                                                            	// name format "monitoredResourceDescriptors/{type}".
                                                                                                                                                                            	Name string `json:"name,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// Type: Required. The monitored resource type. For example, the type
                                                                                                                                                                            	// "cloudsql_database" represents databases in Google Cloud SQL.
                                                                                                                                                                            	Type string `json:"type,omitempty"`
                                                                                                                                                                            
                                                                                                                                                                            	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                                            	// server.
                                                                                                                                                                            	googleapi.ServerResponse `json:"-"`
                                                                                                                                                                            
                                                                                                                                                                            	// ForceSendFields is a list of field names (e.g. "Description") to
                                                                                                                                                                            	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                            	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                            	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                            	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                            	// used to include empty fields in Patch requests.
                                                                                                                                                                            	ForceSendFields []string `json:"-"`
                                                                                                                                                                            
                                                                                                                                                                            	// NullFields is a list of field names (e.g. "Description") to include
                                                                                                                                                                            	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                            	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                            	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                            	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                            	// This may be used to include null fields in Patch requests.
                                                                                                                                                                            	NullFields []string `json:"-"`
                                                                                                                                                                            }

                                                                                                                                                                              MonitoredResourceDescriptor: An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of "gce_instance" and specifies the use of the labels "instance_id" and "zone" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.

                                                                                                                                                                              func (*MonitoredResourceDescriptor) MarshalJSON

                                                                                                                                                                              func (s *MonitoredResourceDescriptor) MarshalJSON() ([]byte, error)

                                                                                                                                                                              type MonitoredResourceMetadata

                                                                                                                                                                              type MonitoredResourceMetadata struct {
                                                                                                                                                                              	// SystemLabels: Output only. Values for predefined system metadata
                                                                                                                                                                              	// labels. System labels are a kind of metadata extracted by Google,
                                                                                                                                                                              	// including "machine_image", "vpc", "subnet_id", "security_group",
                                                                                                                                                                              	// "name", etc. System label values can be only strings, Boolean values,
                                                                                                                                                                              	// or a list of strings. For example: { "name": "my-test-instance",
                                                                                                                                                                              	// "security_group": ["a", "b", "c"], "spot_instance": false }
                                                                                                                                                                              	SystemLabels googleapi.RawMessage `json:"systemLabels,omitempty"`
                                                                                                                                                                              
                                                                                                                                                                              	// UserLabels: Output only. A map of user-defined metadata labels.
                                                                                                                                                                              	UserLabels map[string]string `json:"userLabels,omitempty"`
                                                                                                                                                                              
                                                                                                                                                                              	// ForceSendFields is a list of field names (e.g. "SystemLabels") to
                                                                                                                                                                              	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                              	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                              	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                              	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                              	// used to include empty fields in Patch requests.
                                                                                                                                                                              	ForceSendFields []string `json:"-"`
                                                                                                                                                                              
                                                                                                                                                                              	// NullFields is a list of field names (e.g. "SystemLabels") to include
                                                                                                                                                                              	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                              	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                              	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                              	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                              	// This may be used to include null fields in Patch requests.
                                                                                                                                                                              	NullFields []string `json:"-"`
                                                                                                                                                                              }

                                                                                                                                                                                MonitoredResourceMetadata: Auxiliary metadata for a MonitoredResource object. MonitoredResource objects contain the minimum set of information to uniquely identify a monitored resource instance. There is some other useful auxiliary metadata. Monitoring and Logging use an ingestion pipeline to extract metadata for cloud resources of all types, and store the metadata in this message.

                                                                                                                                                                                func (*MonitoredResourceMetadata) MarshalJSON

                                                                                                                                                                                func (s *MonitoredResourceMetadata) MarshalJSON() ([]byte, error)

                                                                                                                                                                                type MonitoringQueryLanguageCondition

                                                                                                                                                                                type MonitoringQueryLanguageCondition struct {
                                                                                                                                                                                	// Duration: The amount of time that a time series must violate the
                                                                                                                                                                                	// threshold to be considered failing. Currently, only values that are a
                                                                                                                                                                                	// multiple of a minute--e.g., 0, 60, 120, or 300 seconds--are
                                                                                                                                                                                	// supported. If an invalid value is given, an error will be returned.
                                                                                                                                                                                	// When choosing a duration, it is useful to keep in mind the frequency
                                                                                                                                                                                	// of the underlying time series data (which may also be affected by any
                                                                                                                                                                                	// alignments specified in the aggregations field); a good duration is
                                                                                                                                                                                	// long enough so that a single outlier does not generate spurious
                                                                                                                                                                                	// alerts, but short enough that unhealthy states are detected and
                                                                                                                                                                                	// alerted on quickly.
                                                                                                                                                                                	Duration string `json:"duration,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Query: Monitoring Query Language
                                                                                                                                                                                	// (https://cloud.google.com/monitoring/mql) query that outputs a
                                                                                                                                                                                	// boolean stream.
                                                                                                                                                                                	Query string `json:"query,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Trigger: The number/percent of time series for which the comparison
                                                                                                                                                                                	// must hold in order for the condition to trigger. If unspecified, then
                                                                                                                                                                                	// the condition will trigger if the comparison is true for any of the
                                                                                                                                                                                	// time series that have been identified by filter and aggregations, or
                                                                                                                                                                                	// by the ratio, if denominator_filter and denominator_aggregations are
                                                                                                                                                                                	// specified.
                                                                                                                                                                                	Trigger *Trigger `json:"trigger,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// ForceSendFields is a list of field names (e.g. "Duration") to
                                                                                                                                                                                	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                	// used to include empty fields in Patch requests.
                                                                                                                                                                                	ForceSendFields []string `json:"-"`
                                                                                                                                                                                
                                                                                                                                                                                	// NullFields is a list of field names (e.g. "Duration") to include in
                                                                                                                                                                                	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                                                	// values are omitted from API requests. However, any field with an
                                                                                                                                                                                	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                	NullFields []string `json:"-"`
                                                                                                                                                                                }

                                                                                                                                                                                  MonitoringQueryLanguageCondition: A condition type that allows alert policies to be defined using Monitoring Query Language (https://cloud.google.com/monitoring/mql).

                                                                                                                                                                                  func (*MonitoringQueryLanguageCondition) MarshalJSON

                                                                                                                                                                                  func (s *MonitoringQueryLanguageCondition) MarshalJSON() ([]byte, error)

                                                                                                                                                                                  type MutationRecord

                                                                                                                                                                                  type MutationRecord struct {
                                                                                                                                                                                  	// MutateTime: When the change occurred.
                                                                                                                                                                                  	MutateTime string `json:"mutateTime,omitempty"`
                                                                                                                                                                                  
                                                                                                                                                                                  	// MutatedBy: The email address of the user making the change.
                                                                                                                                                                                  	MutatedBy string `json:"mutatedBy,omitempty"`
                                                                                                                                                                                  
                                                                                                                                                                                  	// ForceSendFields is a list of field names (e.g. "MutateTime") to
                                                                                                                                                                                  	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                  	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                  	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                  	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                  	// used to include empty fields in Patch requests.
                                                                                                                                                                                  	ForceSendFields []string `json:"-"`
                                                                                                                                                                                  
                                                                                                                                                                                  	// NullFields is a list of field names (e.g. "MutateTime") to include in
                                                                                                                                                                                  	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                                                  	// values are omitted from API requests. However, any field with an
                                                                                                                                                                                  	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                  	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                  	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                  	NullFields []string `json:"-"`
                                                                                                                                                                                  }

                                                                                                                                                                                    MutationRecord: Describes a change made to a configuration.

                                                                                                                                                                                    func (*MutationRecord) MarshalJSON

                                                                                                                                                                                    func (s *MutationRecord) MarshalJSON() ([]byte, error)

                                                                                                                                                                                    type NotificationChannel

                                                                                                                                                                                    type NotificationChannel struct {
                                                                                                                                                                                    	// CreationRecord: Record of the creation of this channel.
                                                                                                                                                                                    	CreationRecord *MutationRecord `json:"creationRecord,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// Description: An optional human-readable description of this
                                                                                                                                                                                    	// notification channel. This description may provide additional
                                                                                                                                                                                    	// details, beyond the display name, for the channel. This may not
                                                                                                                                                                                    	// exceed 1024 Unicode characters.
                                                                                                                                                                                    	Description string `json:"description,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// DisplayName: An optional human-readable name for this notification
                                                                                                                                                                                    	// channel. It is recommended that you specify a non-empty and unique
                                                                                                                                                                                    	// name in order to make it easier to identify the channels in your
                                                                                                                                                                                    	// project, though this is not enforced. The display name is limited to
                                                                                                                                                                                    	// 512 Unicode characters.
                                                                                                                                                                                    	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// Enabled: Whether notifications are forwarded to the described
                                                                                                                                                                                    	// channel. This makes it possible to disable delivery of notifications
                                                                                                                                                                                    	// to a particular channel without removing the channel from all
                                                                                                                                                                                    	// alerting policies that reference the channel. This is a more
                                                                                                                                                                                    	// convenient approach when the change is temporary and you want to
                                                                                                                                                                                    	// receive notifications from the same set of alerting policies on the
                                                                                                                                                                                    	// channel at some point in the future.
                                                                                                                                                                                    	Enabled bool `json:"enabled,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// Labels: Configuration fields that define the channel and its
                                                                                                                                                                                    	// behavior. The permissible and required labels are specified in the
                                                                                                                                                                                    	// NotificationChannelDescriptor.labels of the
                                                                                                                                                                                    	// NotificationChannelDescriptor corresponding to the type field.
                                                                                                                                                                                    	Labels map[string]string `json:"labels,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// MutationRecords: Records of the modification of this channel.
                                                                                                                                                                                    	MutationRecords []*MutationRecord `json:"mutationRecords,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// Name: The full REST resource name for this channel. The format is:
                                                                                                                                                                                    	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID] The
                                                                                                                                                                                    	// [CHANNEL_ID] is automatically assigned by the server on creation.
                                                                                                                                                                                    	Name string `json:"name,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// Type: The type of the notification channel. This field matches the
                                                                                                                                                                                    	// value of the NotificationChannelDescriptor.type field.
                                                                                                                                                                                    	Type string `json:"type,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// UserLabels: User-supplied key/value data that does not need to
                                                                                                                                                                                    	// conform to the corresponding NotificationChannelDescriptor's schema,
                                                                                                                                                                                    	// unlike the labels field. This field is intended to be used for
                                                                                                                                                                                    	// organizing and identifying the NotificationChannel objects.The field
                                                                                                                                                                                    	// can contain up to 64 entries. Each key and value is limited to 63
                                                                                                                                                                                    	// Unicode characters or 128 bytes, whichever is smaller. Labels and
                                                                                                                                                                                    	// values can contain only lowercase letters, numerals, underscores, and
                                                                                                                                                                                    	// dashes. Keys must begin with a letter.
                                                                                                                                                                                    	UserLabels map[string]string `json:"userLabels,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// VerificationStatus: Indicates whether this channel has been verified
                                                                                                                                                                                    	// or not. On a ListNotificationChannels or GetNotificationChannel
                                                                                                                                                                                    	// operation, this field is expected to be populated.If the value is
                                                                                                                                                                                    	// UNVERIFIED, then it indicates that the channel is non-functioning (it
                                                                                                                                                                                    	// both requires verification and lacks verification); otherwise, it is
                                                                                                                                                                                    	// assumed that the channel works.If the channel is neither VERIFIED nor
                                                                                                                                                                                    	// UNVERIFIED, it implies that the channel is of a type that does not
                                                                                                                                                                                    	// require verification or that this specific channel has been exempted
                                                                                                                                                                                    	// from verification because it was created prior to verification being
                                                                                                                                                                                    	// required for channels of this type.This field cannot be modified
                                                                                                                                                                                    	// using a standard UpdateNotificationChannel operation. To change the
                                                                                                                                                                                    	// value of this field, you must call VerifyNotificationChannel.
                                                                                                                                                                                    	//
                                                                                                                                                                                    	// Possible values:
                                                                                                                                                                                    	//   "VERIFICATION_STATUS_UNSPECIFIED" - Sentinel value used to indicate
                                                                                                                                                                                    	// that the state is unknown, omitted, or is not applicable (as in the
                                                                                                                                                                                    	// case of channels that neither support nor require verification in
                                                                                                                                                                                    	// order to function).
                                                                                                                                                                                    	//   "UNVERIFIED" - The channel has yet to be verified and requires
                                                                                                                                                                                    	// verification to function. Note that this state also applies to the
                                                                                                                                                                                    	// case where the verification process has been initiated by sending a
                                                                                                                                                                                    	// verification code but where the verification code has not been
                                                                                                                                                                                    	// submitted to complete the process.
                                                                                                                                                                                    	//   "VERIFIED" - It has been proven that notifications can be received
                                                                                                                                                                                    	// on this notification channel and that someone on the project has
                                                                                                                                                                                    	// access to messages that are delivered to that channel.
                                                                                                                                                                                    	VerificationStatus string `json:"verificationStatus,omitempty"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                                                    	// server.
                                                                                                                                                                                    	googleapi.ServerResponse `json:"-"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// ForceSendFields is a list of field names (e.g. "CreationRecord") to
                                                                                                                                                                                    	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                    	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                    	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                    	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                    	// used to include empty fields in Patch requests.
                                                                                                                                                                                    	ForceSendFields []string `json:"-"`
                                                                                                                                                                                    
                                                                                                                                                                                    	// NullFields is a list of field names (e.g. "CreationRecord") to
                                                                                                                                                                                    	// include in API requests with the JSON null value. By default, fields
                                                                                                                                                                                    	// with empty values are omitted from API requests. However, any field
                                                                                                                                                                                    	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                                                                    	// server as null. It is an error if a field in this list has a
                                                                                                                                                                                    	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                                                                    	// requests.
                                                                                                                                                                                    	NullFields []string `json:"-"`
                                                                                                                                                                                    }

                                                                                                                                                                                      NotificationChannel: A NotificationChannel is a medium through which an alert is delivered when a policy violation is detected. Examples of channels include email, SMS, and third-party messaging applications. Fields containing sensitive information like authentication tokens or contact info are only partially populated on retrieval.

                                                                                                                                                                                      func (*NotificationChannel) MarshalJSON

                                                                                                                                                                                      func (s *NotificationChannel) MarshalJSON() ([]byte, error)

                                                                                                                                                                                      type NotificationChannelDescriptor

                                                                                                                                                                                      type NotificationChannelDescriptor struct {
                                                                                                                                                                                      	// Description: A human-readable description of the notification channel
                                                                                                                                                                                      	// type. The description may include a description of the properties of
                                                                                                                                                                                      	// the channel and pointers to external documentation.
                                                                                                                                                                                      	Description string `json:"description,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// DisplayName: A human-readable name for the notification channel type.
                                                                                                                                                                                      	// This form of the name is suitable for a user interface.
                                                                                                                                                                                      	DisplayName string `json:"displayName,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// Labels: The set of labels that must be defined to identify a
                                                                                                                                                                                      	// particular channel of the corresponding type. Each label includes a
                                                                                                                                                                                      	// description for how that field should be populated.
                                                                                                                                                                                      	Labels []*LabelDescriptor `json:"labels,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// LaunchStage: The product launch stage for channels of this type.
                                                                                                                                                                                      	//
                                                                                                                                                                                      	// Possible values:
                                                                                                                                                                                      	//   "LAUNCH_STAGE_UNSPECIFIED" - Do not use this default value.
                                                                                                                                                                                      	//   "UNIMPLEMENTED" - The feature is not yet implemented. Users can not
                                                                                                                                                                                      	// use it.
                                                                                                                                                                                      	//   "PRELAUNCH" - Prelaunch features are hidden from users and are only
                                                                                                                                                                                      	// visible internally.
                                                                                                                                                                                      	//   "EARLY_ACCESS" - Early Access features are limited to a closed
                                                                                                                                                                                      	// group of testers. To use these features, you must sign up in advance
                                                                                                                                                                                      	// and sign a Trusted Tester agreement (which includes confidentiality
                                                                                                                                                                                      	// provisions). These features may be unstable, changed in
                                                                                                                                                                                      	// backward-incompatible ways, and are not guaranteed to be released.
                                                                                                                                                                                      	//   "ALPHA" - Alpha is a limited availability test for releases before
                                                                                                                                                                                      	// they are cleared for widespread use. By Alpha, all significant design
                                                                                                                                                                                      	// issues are resolved and we are in the process of verifying
                                                                                                                                                                                      	// functionality. Alpha customers need to apply for access, agree to
                                                                                                                                                                                      	// applicable terms, and have their projects allowlisted. Alpha releases
                                                                                                                                                                                      	// don’t have to be feature complete, no SLAs are provided, and there
                                                                                                                                                                                      	// are no technical support obligations, but they will be far enough
                                                                                                                                                                                      	// along that customers can actually use them in test environments or
                                                                                                                                                                                      	// for limited-use tests -- just like they would in normal production
                                                                                                                                                                                      	// cases.
                                                                                                                                                                                      	//   "BETA" - Beta is the point at which we are ready to open a release
                                                                                                                                                                                      	// for any customer to use. There are no SLA or technical support
                                                                                                                                                                                      	// obligations in a Beta release. Products will be complete from a
                                                                                                                                                                                      	// feature perspective, but may have some open outstanding issues. Beta
                                                                                                                                                                                      	// releases are suitable for limited production use cases.
                                                                                                                                                                                      	//   "GA" - GA features are open to all developers and are considered
                                                                                                                                                                                      	// stable and fully qualified for production use.
                                                                                                                                                                                      	//   "DEPRECATED" - Deprecated features are scheduled to be shut down
                                                                                                                                                                                      	// and removed. For more information, see the “Deprecation Policy”
                                                                                                                                                                                      	// section of our Terms of Service (https://cloud.google.com/terms/) and
                                                                                                                                                                                      	// the Google Cloud Platform Subject to the Deprecation Policy
                                                                                                                                                                                      	// (https://cloud.google.com/terms/deprecation) documentation.
                                                                                                                                                                                      	LaunchStage string `json:"launchStage,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// Name: The full REST resource name for this descriptor. The format is:
                                                                                                                                                                                      	// projects/[PROJECT_ID_OR_NUMBER]/notificationChannelDescriptors/[TYPE]
                                                                                                                                                                                      	// In the above, [TYPE] is the value of the type field.
                                                                                                                                                                                      	Name string `json:"name,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// Type: The type of notification channel, such as "email" and "sms". To
                                                                                                                                                                                      	// view the full list of channels, see Channel descriptors
                                                                                                                                                                                      	// (https://cloud.google.com/monitoring/alerts/using-channels-api#ncd).
                                                                                                                                                                                      	// Notification channel types are globally unique.
                                                                                                                                                                                      	Type string `json:"type,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// ServerResponse contains the HTTP response code and headers from the
                                                                                                                                                                                      	// server.
                                                                                                                                                                                      	googleapi.ServerResponse `json:"-"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "Description") to
                                                                                                                                                                                      	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// NullFields is a list of field names (e.g. "Description") to include
                                                                                                                                                                                      	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                                      	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                                      	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                      	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                      	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                                                                      }

                                                                                                                                                                                        NotificationChannelDescriptor: A description of a notification channel. The descriptor includes the properties of the channel and the set of labels or fields that must be specified to configure channels of a given type.

                                                                                                                                                                                        func (*NotificationChannelDescriptor) MarshalJSON

                                                                                                                                                                                        func (s *NotificationChannelDescriptor) MarshalJSON() ([]byte, error)

                                                                                                                                                                                        type Option

                                                                                                                                                                                        type Option struct {
                                                                                                                                                                                        	// Name: The option's name. For protobuf built-in options (options
                                                                                                                                                                                        	// defined in descriptor.proto), this is the short name. For example,
                                                                                                                                                                                        	// "map_entry". For custom options, it should be the fully-qualified
                                                                                                                                                                                        	// name. For example, "google.api.http".
                                                                                                                                                                                        	Name string `json:"name,omitempty"`
                                                                                                                                                                                        
                                                                                                                                                                                        	// Value: The option's value packed in an Any message. If the value is a
                                                                                                                                                                                        	// primitive, the corresponding wrapper type defined in
                                                                                                                                                                                        	// google/protobuf/wrappers.proto should be used. If the value is an
                                                                                                                                                                                        	// enum, it should be stored as an int32 value using the
                                                                                                                                                                                        	// google.protobuf.Int32Value type.
                                                                                                                                                                                        	Value googleapi.RawMessage `json:"value,omitempty"`
                                                                                                                                                                                        
                                                                                                                                                                                        	// ForceSendFields is a list of field names (e.g. "Name") to
                                                                                                                                                                                        	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                                                                                        
                                                                                                                                                                                        	// NullFields is a list of field names (e.g. "Name") to include in API
                                                                                                                                                                                        	// requests with the JSON null value. By default, fields with empty
                                                                                                                                                                                        	// values are omitted from API requests. However, any field with an
                                                                                                                                                                                        	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                        	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                                                                                        }

                                                                                                                                                                                          Option: A protocol buffer option, which can be attached to a message, field, enumeration, etc.

                                                                                                                                                                                          func (*Option) MarshalJSON

                                                                                                                                                                                          func (s *Option) MarshalJSON() ([]byte, error)

                                                                                                                                                                                          type OrganizationsService

                                                                                                                                                                                          type OrganizationsService struct {
                                                                                                                                                                                          	TimeSeries *OrganizationsTimeSeriesService
                                                                                                                                                                                          	// contains filtered or unexported fields
                                                                                                                                                                                          }

                                                                                                                                                                                          func NewOrganizationsService

                                                                                                                                                                                          func NewOrganizationsService(s *Service) *OrganizationsService

                                                                                                                                                                                          type OrganizationsTimeSeriesListCall

                                                                                                                                                                                          type OrganizationsTimeSeriesListCall struct {
                                                                                                                                                                                          	// contains filtered or unexported fields
                                                                                                                                                                                          }

                                                                                                                                                                                          func (*OrganizationsTimeSeriesListCall) AggregationAlignmentPeriod

                                                                                                                                                                                          func (c *OrganizationsTimeSeriesListCall) AggregationAlignmentPeriod(aggregationAlignmentPeriod string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                            AggregationAlignmentPeriod sets the optional parameter "aggregation.alignmentPeriod": The alignment_period specifies a time interval, in seconds, that is used to divide the data in all the time series into consistent blocks of time. This will be done before the per-series aligner can be applied to the data.The value must be at least 60 seconds. If a per-series aligner other than ALIGN_NONE is specified, this field is required or an error is returned. If no per-series aligner is specified, or the aligner ALIGN_NONE is specified, then this field is ignored.The maximum value of the alignment_period is 104 weeks (2 years) for charts, and 90,000 seconds (25 hours) for alerting policies.

                                                                                                                                                                                            func (*OrganizationsTimeSeriesListCall) AggregationCrossSeriesReducer

                                                                                                                                                                                            func (c *OrganizationsTimeSeriesListCall) AggregationCrossSeriesReducer(aggregationCrossSeriesReducer string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                              AggregationCrossSeriesReducer sets the optional parameter "aggregation.crossSeriesReducer": The reduction operation to be used to combine time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.Not all reducer operations can be applied to all time series. The valid choices depend on the metric_kind and the value_type of the original time series. Reduction can yield a time series with a different metric_kind or value_type than the input time series.Time series data must first be aligned (see per_series_aligner) in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified, and must not be ALIGN_NONE. An alignment_period must also be specified; otherwise, an error is returned.

                                                                                                                                                                                              Possible values:

                                                                                                                                                                                              "REDUCE_NONE" - No cross-time series reduction. The output of the
                                                                                                                                                                                              

                                                                                                                                                                                              Aligner is returned.

                                                                                                                                                                                              "REDUCE_MEAN" - Reduce by computing the mean value across time
                                                                                                                                                                                              

                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                                                                                                              "REDUCE_MIN" - Reduce by computing the minimum value across time
                                                                                                                                                                                              

                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                              "REDUCE_MAX" - Reduce by computing the maximum value across time
                                                                                                                                                                                              

                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                              "REDUCE_SUM" - Reduce by computing the sum across time series for
                                                                                                                                                                                              

                                                                                                                                                                                              each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric and distribution values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                              "REDUCE_STDDEV" - Reduce by computing the standard deviation across
                                                                                                                                                                                              

                                                                                                                                                                                              time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                                                                                                              "REDUCE_COUNT" - Reduce by computing the number of data points
                                                                                                                                                                                              

                                                                                                                                                                                              across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of numeric, Boolean, distribution, and string value_type. The value_type of the output is INT64.

                                                                                                                                                                                              "REDUCE_COUNT_TRUE" - Reduce by computing the number of True-valued
                                                                                                                                                                                              

                                                                                                                                                                                              data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                                                                                                              "REDUCE_COUNT_FALSE" - Reduce by computing the number of
                                                                                                                                                                                              

                                                                                                                                                                                              False-valued data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                                                                                                              "REDUCE_FRACTION_TRUE" - Reduce by computing the ratio of the
                                                                                                                                                                                              

                                                                                                                                                                                              number of True-valued data points to the total number of data points for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                                                                                                              "REDUCE_PERCENTILE_99" - Reduce by computing the 99th percentile
                                                                                                                                                                                              

                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                              "REDUCE_PERCENTILE_95" - Reduce by computing the 95th percentile
                                                                                                                                                                                              

                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                              "REDUCE_PERCENTILE_50" - Reduce by computing the 50th percentile
                                                                                                                                                                                              

                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                              "REDUCE_PERCENTILE_05" - Reduce by computing the 5th percentile
                                                                                                                                                                                              

                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                              func (*OrganizationsTimeSeriesListCall) AggregationGroupByFields

                                                                                                                                                                                              func (c *OrganizationsTimeSeriesListCall) AggregationGroupByFields(aggregationGroupByFields ...string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                AggregationGroupByFields sets the optional parameter "aggregation.groupByFields": The set of fields to preserve when cross_series_reducer is specified. The group_by_fields determine how the time series are partitioned into subsets prior to applying the aggregation operation. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The cross_series_reducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in group_by_fields are aggregated away. If group_by_fields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If cross_series_reducer is not defined, this field is ignored.

                                                                                                                                                                                                func (*OrganizationsTimeSeriesListCall) AggregationPerSeriesAligner

                                                                                                                                                                                                func (c *OrganizationsTimeSeriesListCall) AggregationPerSeriesAligner(aggregationPerSeriesAligner string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                  AggregationPerSeriesAligner sets the optional parameter "aggregation.perSeriesAligner": An Aligner describes how to bring the data points in a single time series into temporal alignment. Except for ALIGN_NONE, all alignments cause all the data points in an alignment_period to be mathematically grouped together, resulting in a single data point for each alignment_period with end timestamp at the end of the period.Not all alignment operations may be applied to all time series. The valid choices depend on the metric_kind and value_type of the original time series. Alignment can change the metric_kind or the value_type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified and not equal to ALIGN_NONE and alignment_period must be specified; otherwise, an error is returned.

                                                                                                                                                                                                  Possible values:

                                                                                                                                                                                                  "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if
                                                                                                                                                                                                  

                                                                                                                                                                                                  cross-series reduction is requested. The value_type of the result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_DELTA" - Align and convert to DELTA. The output is delta =
                                                                                                                                                                                                  

                                                                                                                                                                                                  y1 - y0.This alignment is valid for CUMULATIVE and DELTA metrics. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_RATE" - Align and convert to a rate. The result is computed
                                                                                                                                                                                                  

                                                                                                                                                                                                  as rate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this aligner as providing the slope of the line that passes through the value at the start and at the end of the alignment_period.This aligner is valid for CUMULATIVE and DELTA metrics with numeric values. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The output is a GAUGE metric with value_type DOUBLE.If, by "rate", you mean "percentage change", see the ALIGN_PERCENT_CHANGE aligner instead.

                                                                                                                                                                                                  "ALIGN_INTERPOLATE" - Align by interpolating between adjacent
                                                                                                                                                                                                  

                                                                                                                                                                                                  points around the alignment period boundary. This aligner is valid for GAUGE metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_NEXT_OLDER" - Align by moving the most recent data point
                                                                                                                                                                                                  

                                                                                                                                                                                                  before the end of the alignment period to the boundary at the end of the alignment period. This aligner is valid for GAUGE metrics. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_MIN" - Align the time series by returning the minimum value
                                                                                                                                                                                                  

                                                                                                                                                                                                  in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_MAX" - Align the time series by returning the maximum value
                                                                                                                                                                                                  

                                                                                                                                                                                                  in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_MEAN" - Align the time series by returning the mean value in
                                                                                                                                                                                                  

                                                                                                                                                                                                  each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is DOUBLE.

                                                                                                                                                                                                  "ALIGN_COUNT" - Align the time series by returning the number of
                                                                                                                                                                                                  

                                                                                                                                                                                                  values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric or Boolean values. The value_type of the aligned result is INT64.

                                                                                                                                                                                                  "ALIGN_SUM" - Align the time series by returning the sum of the
                                                                                                                                                                                                  

                                                                                                                                                                                                  values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric and distribution values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                  "ALIGN_STDDEV" - Align the time series by returning the standard
                                                                                                                                                                                                  

                                                                                                                                                                                                  deviation of the values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the output is DOUBLE.

                                                                                                                                                                                                  "ALIGN_COUNT_TRUE" - Align the time series by returning the number
                                                                                                                                                                                                  

                                                                                                                                                                                                  of True values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                                                                                                                  "ALIGN_COUNT_FALSE" - Align the time series by returning the number
                                                                                                                                                                                                  

                                                                                                                                                                                                  of False values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                                                                                                                  "ALIGN_FRACTION_TRUE" - Align the time series by returning the
                                                                                                                                                                                                  

                                                                                                                                                                                                  ratio of the number of True values to the total number of values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                                                                                                                  "ALIGN_PERCENTILE_99" - Align the time series by using percentile
                                                                                                                                                                                                  

                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 99th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                  "ALIGN_PERCENTILE_95" - Align the time series by using percentile
                                                                                                                                                                                                  

                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 95th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                  "ALIGN_PERCENTILE_50" - Align the time series by using percentile
                                                                                                                                                                                                  

                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 50th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                  "ALIGN_PERCENTILE_05" - Align the time series by using percentile
                                                                                                                                                                                                  

                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 5th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                  "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change.
                                                                                                                                                                                                  

                                                                                                                                                                                                  This aligner is valid for GAUGE and DELTA metrics with numeric values. This alignment returns ((current - previous)/previous) * 100, where the value of previous is determined based on the alignment_period.If the values of current and previous are both 0, then the returned value is 0. If only previous is 0, the returned value is infinity.A 10-minute moving mean is computed at each point of the alignment period prior to the above calculation to smooth the metric and prevent false positives from very short-lived spikes. The moving mean is only applicable for data whose values are >= 0. Any values < 0 are treated as a missing datapoint, and are ignored. While DELTA metrics are accepted by this alignment, special care should be taken that the values for the metric will always be positive. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                  func (*OrganizationsTimeSeriesListCall) Context

                                                                                                                                                                                                    Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                    func (*OrganizationsTimeSeriesListCall) Do

                                                                                                                                                                                                      Do executes the "monitoring.organizations.timeSeries.list" call. Exactly one of *ListTimeSeriesResponse or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ListTimeSeriesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                      func (*OrganizationsTimeSeriesListCall) Fields

                                                                                                                                                                                                        Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                        func (*OrganizationsTimeSeriesListCall) Filter

                                                                                                                                                                                                          Filter sets the optional parameter "filter": Required. A monitoring filter (https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example: metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

                                                                                                                                                                                                          func (*OrganizationsTimeSeriesListCall) Header

                                                                                                                                                                                                            Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                            func (*OrganizationsTimeSeriesListCall) IfNoneMatch

                                                                                                                                                                                                              IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                                                                                                              func (*OrganizationsTimeSeriesListCall) IntervalEndTime

                                                                                                                                                                                                              func (c *OrganizationsTimeSeriesListCall) IntervalEndTime(intervalEndTime string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                IntervalEndTime sets the optional parameter "interval.endTime": Required. The end of the time interval.

                                                                                                                                                                                                                func (*OrganizationsTimeSeriesListCall) IntervalStartTime

                                                                                                                                                                                                                func (c *OrganizationsTimeSeriesListCall) IntervalStartTime(intervalStartTime string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                  IntervalStartTime sets the optional parameter "interval.startTime": The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.

                                                                                                                                                                                                                  func (*OrganizationsTimeSeriesListCall) OrderBy

                                                                                                                                                                                                                    OrderBy sets the optional parameter "orderBy": Unsupported: must be left blank. The points in each time series are currently returned in reverse time order (most recent to oldest).

                                                                                                                                                                                                                    func (*OrganizationsTimeSeriesListCall) PageSize

                                                                                                                                                                                                                      PageSize sets the optional parameter "pageSize": A positive number that is the maximum number of results to return. If page_size is empty or more than 100,000 results, the effective page_size is 100,000 results. If view is set to FULL, this is the maximum number of Points returned. If view is set to HEADERS, this is the maximum number of TimeSeries returned.

                                                                                                                                                                                                                      func (*OrganizationsTimeSeriesListCall) PageToken

                                                                                                                                                                                                                        PageToken sets the optional parameter "pageToken": If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.

                                                                                                                                                                                                                        func (*OrganizationsTimeSeriesListCall) Pages

                                                                                                                                                                                                                          Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                                                                                                                                          func (*OrganizationsTimeSeriesListCall) SecondaryAggregationAlignmentPeriod

                                                                                                                                                                                                                          func (c *OrganizationsTimeSeriesListCall) SecondaryAggregationAlignmentPeriod(secondaryAggregationAlignmentPeriod string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                            SecondaryAggregationAlignmentPeriod sets the optional parameter "secondaryAggregation.alignmentPeriod": The alignment_period specifies a time interval, in seconds, that is used to divide the data in all the time series into consistent blocks of time. This will be done before the per-series aligner can be applied to the data.The value must be at least 60 seconds. If a per-series aligner other than ALIGN_NONE is specified, this field is required or an error is returned. If no per-series aligner is specified, or the aligner ALIGN_NONE is specified, then this field is ignored.The maximum value of the alignment_period is 104 weeks (2 years) for charts, and 90,000 seconds (25 hours) for alerting policies.

                                                                                                                                                                                                                            func (*OrganizationsTimeSeriesListCall) SecondaryAggregationCrossSeriesReducer

                                                                                                                                                                                                                            func (c *OrganizationsTimeSeriesListCall) SecondaryAggregationCrossSeriesReducer(secondaryAggregationCrossSeriesReducer string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                              SecondaryAggregationCrossSeriesReducer sets the optional parameter "secondaryAggregation.crossSeriesReducer": The reduction operation to be used to combine time series into a single time series, where the value of each data point in the resulting series is a function of all the already aligned values in the input time series.Not all reducer operations can be applied to all time series. The valid choices depend on the metric_kind and the value_type of the original time series. Reduction can yield a time series with a different metric_kind or value_type than the input time series.Time series data must first be aligned (see per_series_aligner) in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified, and must not be ALIGN_NONE. An alignment_period must also be specified; otherwise, an error is returned.

                                                                                                                                                                                                                              Possible values:

                                                                                                                                                                                                                              "REDUCE_NONE" - No cross-time series reduction. The output of the
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              Aligner is returned.

                                                                                                                                                                                                                              "REDUCE_MEAN" - Reduce by computing the mean value across time
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                                                                                                                                              "REDUCE_MIN" - Reduce by computing the minimum value across time
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                                                              "REDUCE_MAX" - Reduce by computing the maximum value across time
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                                                              "REDUCE_SUM" - Reduce by computing the sum across time series for
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric and distribution values. The value_type of the output is the same as the value_type of the input.

                                                                                                                                                                                                                              "REDUCE_STDDEV" - Reduce by computing the standard deviation across
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics with numeric or distribution values. The value_type of the output is DOUBLE.

                                                                                                                                                                                                                              "REDUCE_COUNT" - Reduce by computing the number of data points
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of numeric, Boolean, distribution, and string value_type. The value_type of the output is INT64.

                                                                                                                                                                                                                              "REDUCE_COUNT_TRUE" - Reduce by computing the number of True-valued
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                                                                                                                                              "REDUCE_COUNT_FALSE" - Reduce by computing the number of
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              False-valued data points across time series for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The value_type of the output is INT64.

                                                                                                                                                                                                                              "REDUCE_FRACTION_TRUE" - Reduce by computing the ratio of the
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              number of True-valued data points to the total number of data points for each alignment period. This reducer is valid for DELTA and GAUGE metrics of Boolean value_type. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                                                                                                                                              "REDUCE_PERCENTILE_99" - Reduce by computing the 99th percentile
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                                                              "REDUCE_PERCENTILE_95" - Reduce by computing the 95th percentile
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                                                              "REDUCE_PERCENTILE_50" - Reduce by computing the 50th percentile
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                                                              "REDUCE_PERCENTILE_05" - Reduce by computing the 5th percentile
                                                                                                                                                                                                                              

                                                                                                                                                                                                                              (https://en.wikipedia.org/wiki/Percentile) of data points across time series for each alignment period. This reducer is valid for GAUGE and DELTA metrics of numeric and distribution type. The value of the output is DOUBLE.

                                                                                                                                                                                                                              func (*OrganizationsTimeSeriesListCall) SecondaryAggregationGroupByFields

                                                                                                                                                                                                                              func (c *OrganizationsTimeSeriesListCall) SecondaryAggregationGroupByFields(secondaryAggregationGroupByFields ...string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                                SecondaryAggregationGroupByFields sets the optional parameter "secondaryAggregation.groupByFields": The set of fields to preserve when cross_series_reducer is specified. The group_by_fields determine how the time series are partitioned into subsets prior to applying the aggregation operation. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The cross_series_reducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in group_by_fields are aggregated away. If group_by_fields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If cross_series_reducer is not defined, this field is ignored.

                                                                                                                                                                                                                                func (*OrganizationsTimeSeriesListCall) SecondaryAggregationPerSeriesAligner

                                                                                                                                                                                                                                func (c *OrganizationsTimeSeriesListCall) SecondaryAggregationPerSeriesAligner(secondaryAggregationPerSeriesAligner string) *OrganizationsTimeSeriesListCall

                                                                                                                                                                                                                                  SecondaryAggregationPerSeriesAligner sets the optional parameter "secondaryAggregation.perSeriesAligner": An Aligner describes how to bring the data points in a single time series into temporal alignment. Except for ALIGN_NONE, all alignments cause all the data points in an alignment_period to be mathematically grouped together, resulting in a single data point for each alignment_period with end timestamp at the end of the period.Not all alignment operations may be applied to all time series. The valid choices depend on the metric_kind and value_type of the original time series. Alignment can change the metric_kind or the value_type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If cross_series_reducer is specified, then per_series_aligner must be specified and not equal to ALIGN_NONE and alignment_period must be specified; otherwise, an error is returned.

                                                                                                                                                                                                                                  Possible values:

                                                                                                                                                                                                                                  "ALIGN_NONE" - No alignment. Raw data is returned. Not valid if
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  cross-series reduction is requested. The value_type of the result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_DELTA" - Align and convert to DELTA. The output is delta =
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  y1 - y0.This alignment is valid for CUMULATIVE and DELTA metrics. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_RATE" - Align and convert to a rate. The result is computed
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  as rate = (y1 - y0)/(t1 - t0), or "delta over time". Think of this aligner as providing the slope of the line that passes through the value at the start and at the end of the alignment_period.This aligner is valid for CUMULATIVE and DELTA metrics with numeric values. If the selected alignment period results in periods with no data, then the aligned value for such a period is created by interpolation. The output is a GAUGE metric with value_type DOUBLE.If, by "rate", you mean "percentage change", see the ALIGN_PERCENT_CHANGE aligner instead.

                                                                                                                                                                                                                                  "ALIGN_INTERPOLATE" - Align by interpolating between adjacent
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  points around the alignment period boundary. This aligner is valid for GAUGE metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_NEXT_OLDER" - Align by moving the most recent data point
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  before the end of the alignment period to the boundary at the end of the alignment period. This aligner is valid for GAUGE metrics. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_MIN" - Align the time series by returning the minimum value
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_MAX" - Align the time series by returning the maximum value
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_MEAN" - Align the time series by returning the mean value in
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the aligned result is DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_COUNT" - Align the time series by returning the number of
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric or Boolean values. The value_type of the aligned result is INT64.

                                                                                                                                                                                                                                  "ALIGN_SUM" - Align the time series by returning the sum of the
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric and distribution values. The value_type of the aligned result is the same as the value_type of the input.

                                                                                                                                                                                                                                  "ALIGN_STDDEV" - Align the time series by returning the standard
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  deviation of the values in each alignment period. This aligner is valid for GAUGE and DELTA metrics with numeric values. The value_type of the output is DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_COUNT_TRUE" - Align the time series by returning the number
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  of True values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                                                                                                                                                  "ALIGN_COUNT_FALSE" - Align the time series by returning the number
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  of False values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The value_type of the output is INT64.

                                                                                                                                                                                                                                  "ALIGN_FRACTION_TRUE" - Align the time series by returning the
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  ratio of the number of True values to the total number of values in each alignment period. This aligner is valid for GAUGE metrics with Boolean values. The output value is in the range 0.0, 1.0 and has value_type DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_PERCENTILE_99" - Align the time series by using percentile
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 99th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_PERCENTILE_95" - Align the time series by using percentile
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 95th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_PERCENTILE_50" - Align the time series by using percentile
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 50th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_PERCENTILE_05" - Align the time series by using percentile
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  aggregation (https://en.wikipedia.org/wiki/Percentile). The resulting data point in each alignment period is the 5th percentile of all data points in the period. This aligner is valid for GAUGE and DELTA metrics with distribution values. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                                                  "ALIGN_PERCENT_CHANGE" - Align and convert to a percentage change.
                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                  This aligner is valid for GAUGE and DELTA metrics with numeric values. This alignment returns ((current - previous)/previous) * 100, where the value of previous is determined based on the alignment_period.If the values of current and previous are both 0, then the returned value is 0. If only previous is 0, the returned value is infinity.A 10-minute moving mean is computed at each point of the alignment period prior to the above calculation to smooth the metric and prevent false positives from very short-lived spikes. The moving mean is only applicable for data whose values are >= 0. Any values < 0 are treated as a missing datapoint, and are ignored. While DELTA metrics are accepted by this alignment, special care should be taken that the values for the metric will always be positive. The output is a GAUGE metric with value_type DOUBLE.

                                                                                                                                                                                                                                  func (*OrganizationsTimeSeriesListCall) View

                                                                                                                                                                                                                                    View sets the optional parameter "view": Required. Specifies which information is returned about the time series.

                                                                                                                                                                                                                                    Possible values:

                                                                                                                                                                                                                                    "FULL" - Returns the identity of the metric(s), the time series,
                                                                                                                                                                                                                                    

                                                                                                                                                                                                                                    and the time series data.

                                                                                                                                                                                                                                    "HEADERS" - Returns the identity of the metric and the time series
                                                                                                                                                                                                                                    

                                                                                                                                                                                                                                    resource, but not the time series data.

                                                                                                                                                                                                                                    type OrganizationsTimeSeriesService

                                                                                                                                                                                                                                    type OrganizationsTimeSeriesService struct {
                                                                                                                                                                                                                                    	// contains filtered or unexported fields
                                                                                                                                                                                                                                    }

                                                                                                                                                                                                                                    func NewOrganizationsTimeSeriesService

                                                                                                                                                                                                                                    func NewOrganizationsTimeSeriesService(s *Service) *OrganizationsTimeSeriesService

                                                                                                                                                                                                                                    func (*OrganizationsTimeSeriesService) List

                                                                                                                                                                                                                                      List: Lists time series that match a filter. This method does not require a Workspace.

                                                                                                                                                                                                                                      - name: The project

                                                                                                                                                                                                                                      (https://cloud.google.com/monitoring/api/v3#project_name),
                                                                                                                                                                                                                                      organization or folder on which to execute the request. The format
                                                                                                                                                                                                                                      is: projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID]
                                                                                                                                                                                                                                      folders/[FOLDER_ID].
                                                                                                                                                                                                                                      

                                                                                                                                                                                                                                      type PerformanceThreshold

                                                                                                                                                                                                                                      type PerformanceThreshold struct {
                                                                                                                                                                                                                                      	// BasicSliPerformance: BasicSli to evaluate to judge window quality.
                                                                                                                                                                                                                                      	BasicSliPerformance *BasicSli `json:"basicSliPerformance,omitempty"`
                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                      	// Performance: RequestBasedSli to evaluate to judge window quality.
                                                                                                                                                                                                                                      	Performance *RequestBasedSli `json:"performance,omitempty"`
                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                      	// Threshold: If window performance >= threshold, the window is counted
                                                                                                                                                                                                                                      	// as good.
                                                                                                                                                                                                                                      	Threshold float64 `json:"threshold,omitempty"`
                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                      	// ForceSendFields is a list of field names (e.g. "BasicSliPerformance")
                                                                                                                                                                                                                                      	// to unconditionally include in API requests. By default, fields with
                                                                                                                                                                                                                                      	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                                                                      	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                                                                      	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                                                                      	// used to include empty fields in Patch requests.
                                                                                                                                                                                                                                      	ForceSendFields []string `json:"-"`
                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                      	// NullFields is a list of field names (e.g. "BasicSliPerformance") to
                                                                                                                                                                                                                                      	// include in API requests with the JSON null value. By default, fields
                                                                                                                                                                                                                                      	// with empty values are omitted from API requests. However, any field
                                                                                                                                                                                                                                      	// with an empty value appearing in NullFields will be sent to the
                                                                                                                                                                                                                                      	// server as null. It is an error if a field in this list has a
                                                                                                                                                                                                                                      	// non-empty value. This may be used to include null fields in Patch
                                                                                                                                                                                                                                      	// requests.
                                                                                                                                                                                                                                      	NullFields []string `json:"-"`
                                                                                                                                                                                                                                      }

                                                                                                                                                                                                                                        PerformanceThreshold: A PerformanceThreshold is used when each window is good when that window has a sufficiently high performance.

                                                                                                                                                                                                                                        func (*PerformanceThreshold) MarshalJSON

                                                                                                                                                                                                                                        func (s *PerformanceThreshold) MarshalJSON() ([]byte, error)

                                                                                                                                                                                                                                        func (*PerformanceThreshold) UnmarshalJSON

                                                                                                                                                                                                                                        func (s *PerformanceThreshold) UnmarshalJSON(data []byte) error

                                                                                                                                                                                                                                        type Point

                                                                                                                                                                                                                                        type Point struct {
                                                                                                                                                                                                                                        	// Interval: The time interval to which the data point applies. For
                                                                                                                                                                                                                                        	// GAUGE metrics, the start time is optional, but if it is supplied, it
                                                                                                                                                                                                                                        	// must equal the end time. For DELTA metrics, the start and end time
                                                                                                                                                                                                                                        	// should specify a non-zero interval, with subsequent points specifying
                                                                                                                                                                                                                                        	// contiguous and non-overlapping intervals. For CUMULATIVE metrics, the
                                                                                                                                                                                                                                        	// start and end time should specify a non-zero interval, with
                                                                                                                                                                                                                                        	// subsequent points specifying the same start time and increasing end
                                                                                                                                                                                                                                        	// times, until an event resets the cumulative value to zero and sets a
                                                                                                                                                                                                                                        	// new start time for the following points.
                                                                                                                                                                                                                                        	Interval *TimeInterval `json:"interval,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// Value: The value of the data point.
                                                                                                                                                                                                                                        	Value *TypedValue `json:"value,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// ForceSendFields is a list of field names (e.g. "Interval") to
                                                                                                                                                                                                                                        	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                                                                        	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                                                                        	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                                                                        	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                                                                        	// used to include empty fields in Patch requests.
                                                                                                                                                                                                                                        	ForceSendFields []string `json:"-"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// NullFields is a list of field names (e.g. "Interval") to include in
                                                                                                                                                                                                                                        	// API requests with the JSON null value. By default, fields with empty
                                                                                                                                                                                                                                        	// values are omitted from API requests. However, any field with an
                                                                                                                                                                                                                                        	// empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                                                                        	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                                                                        	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                                                                        	NullFields []string `json:"-"`
                                                                                                                                                                                                                                        }

                                                                                                                                                                                                                                          Point: A single data point in a time series.

                                                                                                                                                                                                                                          func (*Point) MarshalJSON

                                                                                                                                                                                                                                          func (s *Point) MarshalJSON() ([]byte, error)

                                                                                                                                                                                                                                          type PointData

                                                                                                                                                                                                                                          type PointData struct {
                                                                                                                                                                                                                                          	// TimeInterval: The time interval associated with the point.
                                                                                                                                                                                                                                          	TimeInterval *TimeInterval `json:"timeInterval,omitempty"`
                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                          	// Values: The values that make up the point.
                                                                                                                                                                                                                                          	Values []*TypedValue `json:"values,omitempty"`
                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                          	// ForceSendFields is a list of field names (e.g. "TimeInterval") to
                                                                                                                                                                                                                                          	// unconditionally include in API requests. By default, fields with
                                                                                                                                                                                                                                          	// empty values are omitted from API requests. However, any non-pointer,
                                                                                                                                                                                                                                          	// non-interface field appearing in ForceSendFields will be sent to the
                                                                                                                                                                                                                                          	// server regardless of whether the field is empty or not. This may be
                                                                                                                                                                                                                                          	// used to include empty fields in Patch requests.
                                                                                                                                                                                                                                          	ForceSendFields []string `json:"-"`
                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                          	// NullFields is a list of field names (e.g. "TimeInterval") to include
                                                                                                                                                                                                                                          	// in API requests with the JSON null value. By default, fields with
                                                                                                                                                                                                                                          	// empty values are omitted from API requests. However, any field with
                                                                                                                                                                                                                                          	// an empty value appearing in NullFields will be sent to the server as
                                                                                                                                                                                                                                          	// null. It is an error if a field in this list has a non-empty value.
                                                                                                                                                                                                                                          	// This may be used to include null fields in Patch requests.
                                                                                                                                                                                                                                          	NullFields []string `json:"-"`
                                                                                                                                                                                                                                          }

                                                                                                                                                                                                                                            PointData: A point's value columns and time interval. Each point has one or more point values corresponding to the entries in point_descriptors field in the TimeSeriesDescriptor associated with this object.

                                                                                                                                                                                                                                            func (*PointData) MarshalJSON

                                                                                                                                                                                                                                            func (s *PointData) MarshalJSON() ([]byte, error)

                                                                                                                                                                                                                                            type ProjectsAlertPoliciesCreateCall

                                                                                                                                                                                                                                            type ProjectsAlertPoliciesCreateCall struct {
                                                                                                                                                                                                                                            	// contains filtered or unexported fields
                                                                                                                                                                                                                                            }

                                                                                                                                                                                                                                            func (*ProjectsAlertPoliciesCreateCall) Context

                                                                                                                                                                                                                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                              func (*ProjectsAlertPoliciesCreateCall) Do

                                                                                                                                                                                                                                                Do executes the "monitoring.projects.alertPolicies.create" call. Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *AlertPolicy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                func (*ProjectsAlertPoliciesCreateCall) Fields

                                                                                                                                                                                                                                                  Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                  func (*ProjectsAlertPoliciesCreateCall) Header

                                                                                                                                                                                                                                                    Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                    type ProjectsAlertPoliciesDeleteCall

                                                                                                                                                                                                                                                    type ProjectsAlertPoliciesDeleteCall struct {
                                                                                                                                                                                                                                                    	// contains filtered or unexported fields
                                                                                                                                                                                                                                                    }

                                                                                                                                                                                                                                                    func (*ProjectsAlertPoliciesDeleteCall) Context

                                                                                                                                                                                                                                                      Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                      func (*ProjectsAlertPoliciesDeleteCall) Do

                                                                                                                                                                                                                                                        Do executes the "monitoring.projects.alertPolicies.delete" call. Exactly one of *Empty or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Empty.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                        func (*ProjectsAlertPoliciesDeleteCall) Fields

                                                                                                                                                                                                                                                          Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                          func (*ProjectsAlertPoliciesDeleteCall) Header

                                                                                                                                                                                                                                                            Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                            type ProjectsAlertPoliciesGetCall

                                                                                                                                                                                                                                                            type ProjectsAlertPoliciesGetCall struct {
                                                                                                                                                                                                                                                            	// contains filtered or unexported fields
                                                                                                                                                                                                                                                            }

                                                                                                                                                                                                                                                            func (*ProjectsAlertPoliciesGetCall) Context

                                                                                                                                                                                                                                                              Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                              func (*ProjectsAlertPoliciesGetCall) Do

                                                                                                                                                                                                                                                                Do executes the "monitoring.projects.alertPolicies.get" call. Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *AlertPolicy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                                func (*ProjectsAlertPoliciesGetCall) Fields

                                                                                                                                                                                                                                                                  Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                                  func (*ProjectsAlertPoliciesGetCall) Header

                                                                                                                                                                                                                                                                    Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                                    func (*ProjectsAlertPoliciesGetCall) IfNoneMatch

                                                                                                                                                                                                                                                                      IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                                                                                                                                                                      type ProjectsAlertPoliciesListCall

                                                                                                                                                                                                                                                                      type ProjectsAlertPoliciesListCall struct {
                                                                                                                                                                                                                                                                      	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                      }

                                                                                                                                                                                                                                                                      func (*ProjectsAlertPoliciesListCall) Context

                                                                                                                                                                                                                                                                        Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                                        func (*ProjectsAlertPoliciesListCall) Do

                                                                                                                                                                                                                                                                          Do executes the "monitoring.projects.alertPolicies.list" call. Exactly one of *ListAlertPoliciesResponse or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *ListAlertPoliciesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                                          func (*ProjectsAlertPoliciesListCall) Fields

                                                                                                                                                                                                                                                                            Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                                            func (*ProjectsAlertPoliciesListCall) Filter

                                                                                                                                                                                                                                                                              Filter sets the optional parameter "filter": If provided, this field specifies the criteria that must be met by alert policies to be included in the response.For more details, see sorting and filtering (https://cloud.google.com/monitoring/api/v3/sorting-and-filtering).

                                                                                                                                                                                                                                                                              func (*ProjectsAlertPoliciesListCall) Header

                                                                                                                                                                                                                                                                                Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                                                func (*ProjectsAlertPoliciesListCall) IfNoneMatch

                                                                                                                                                                                                                                                                                  IfNoneMatch sets the optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request. Use googleapi.IsNotModified to check whether the response error from Do is the result of In-None-Match.

                                                                                                                                                                                                                                                                                  func (*ProjectsAlertPoliciesListCall) OrderBy

                                                                                                                                                                                                                                                                                    OrderBy sets the optional parameter "orderBy": A comma-separated list of fields by which to sort the result. Supports the same set of field references as the filter field. Entries can be prefixed with a minus sign to sort by the field in descending order.For more details, see sorting and filtering (https://cloud.google.com/monitoring/api/v3/sorting-and-filtering).

                                                                                                                                                                                                                                                                                    func (*ProjectsAlertPoliciesListCall) PageSize

                                                                                                                                                                                                                                                                                      PageSize sets the optional parameter "pageSize": The maximum number of results to return in a single response.

                                                                                                                                                                                                                                                                                      func (*ProjectsAlertPoliciesListCall) PageToken

                                                                                                                                                                                                                                                                                        PageToken sets the optional parameter "pageToken": If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return more results from the previous method call.

                                                                                                                                                                                                                                                                                        func (*ProjectsAlertPoliciesListCall) Pages

                                                                                                                                                                                                                                                                                          Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

                                                                                                                                                                                                                                                                                          type ProjectsAlertPoliciesPatchCall

                                                                                                                                                                                                                                                                                          type ProjectsAlertPoliciesPatchCall struct {
                                                                                                                                                                                                                                                                                          	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                          }

                                                                                                                                                                                                                                                                                          func (*ProjectsAlertPoliciesPatchCall) Context

                                                                                                                                                                                                                                                                                            Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                                                            func (*ProjectsAlertPoliciesPatchCall) Do

                                                                                                                                                                                                                                                                                              Do executes the "monitoring.projects.alertPolicies.patch" call. Exactly one of *AlertPolicy or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *AlertPolicy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                                                              func (*ProjectsAlertPoliciesPatchCall) Fields

                                                                                                                                                                                                                                                                                                Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                                                                func (*ProjectsAlertPoliciesPatchCall) Header

                                                                                                                                                                                                                                                                                                  Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                                                                  func (*ProjectsAlertPoliciesPatchCall) UpdateMask

                                                                                                                                                                                                                                                                                                    UpdateMask sets the optional parameter "updateMask": A list of alerting policy field names. If this field is not empty, each listed field in the existing alerting policy is set to the value of the corresponding field in the supplied policy (alert_policy), or to the field's default value if the field is not in the supplied alerting policy. Fields not listed retain their previous value.Examples of valid field masks include display_name, documentation, documentation.content, documentation.mime_type, user_labels, user_label.nameofkey, enabled, conditions, combiner, etc.If this field is empty, then the supplied alerting policy replaces the existing policy. It is the same as deleting the existing policy and adding the supplied policy, except for the following: The new policy will have the same [ALERT_POLICY_ID] as the former policy. This gives you continuity with the former policy in your notifications and incidents. Conditions in the new policy will keep their former [CONDITION_ID] if the supplied condition includes the name field with that [CONDITION_ID]. If the supplied condition omits the name field, then a new [CONDITION_ID] is created.

                                                                                                                                                                                                                                                                                                    type ProjectsAlertPoliciesService

                                                                                                                                                                                                                                                                                                    type ProjectsAlertPoliciesService struct {
                                                                                                                                                                                                                                                                                                    	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                                    }

                                                                                                                                                                                                                                                                                                    func NewProjectsAlertPoliciesService

                                                                                                                                                                                                                                                                                                    func NewProjectsAlertPoliciesService(s *Service) *ProjectsAlertPoliciesService

                                                                                                                                                                                                                                                                                                    func (*ProjectsAlertPoliciesService) Create

                                                                                                                                                                                                                                                                                                      Create: Creates a new alerting policy.

                                                                                                                                                                                                                                                                                                      - name: The project

                                                                                                                                                                                                                                                                                                      (https://cloud.google.com/monitoring/api/v3#project_name) in which
                                                                                                                                                                                                                                                                                                      to create the alerting policy. The format is:
                                                                                                                                                                                                                                                                                                      projects/[PROJECT_ID_OR_NUMBER] Note that this field names the
                                                                                                                                                                                                                                                                                                      parent container in which the alerting policy will be written, not
                                                                                                                                                                                                                                                                                                      the name of the created policy. |name| must be a host project of a
                                                                                                                                                                                                                                                                                                      workspace, otherwise INVALID_ARGUMENT error will return. The
                                                                                                                                                                                                                                                                                                      alerting policy that is returned will have a name that contains a
                                                                                                                                                                                                                                                                                                      normalized representation of this name as a prefix but adds a
                                                                                                                                                                                                                                                                                                      suffix of the form /alertPolicies/[ALERT_POLICY_ID], identifying
                                                                                                                                                                                                                                                                                                      the policy in the container.
                                                                                                                                                                                                                                                                                                      

                                                                                                                                                                                                                                                                                                      func (*ProjectsAlertPoliciesService) Delete

                                                                                                                                                                                                                                                                                                        Delete: Deletes an alerting policy.

                                                                                                                                                                                                                                                                                                        - name: The alerting policy to delete. The format is:

                                                                                                                                                                                                                                                                                                        projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID] For
                                                                                                                                                                                                                                                                                                        more information, see AlertPolicy.
                                                                                                                                                                                                                                                                                                        

                                                                                                                                                                                                                                                                                                        func (*ProjectsAlertPoliciesService) Get

                                                                                                                                                                                                                                                                                                          Get: Gets a single alerting policy.

                                                                                                                                                                                                                                                                                                          - name: The alerting policy to retrieve. The format is:

                                                                                                                                                                                                                                                                                                          projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID].
                                                                                                                                                                                                                                                                                                          

                                                                                                                                                                                                                                                                                                          func (*ProjectsAlertPoliciesService) List

                                                                                                                                                                                                                                                                                                            List: Lists the existing alerting policies for the workspace.

                                                                                                                                                                                                                                                                                                            - name: The project

                                                                                                                                                                                                                                                                                                            (https://cloud.google.com/monitoring/api/v3#project_name) whose
                                                                                                                                                                                                                                                                                                            alert policies are to be listed. The format is:
                                                                                                                                                                                                                                                                                                            projects/[PROJECT_ID_OR_NUMBER] Note that this field names the
                                                                                                                                                                                                                                                                                                            parent container in which the alerting policies to be listed are
                                                                                                                                                                                                                                                                                                            stored. To retrieve a single alerting policy by name, use the
                                                                                                                                                                                                                                                                                                            GetAlertPolicy operation, instead.
                                                                                                                                                                                                                                                                                                            

                                                                                                                                                                                                                                                                                                            func (*ProjectsAlertPoliciesService) Patch

                                                                                                                                                                                                                                                                                                              Patch: Updates an alerting policy. You can either replace the entire policy with a new one or replace only certain fields in the current alerting policy by specifying the fields to be updated via updateMask. Returns the updated alerting policy.

                                                                                                                                                                                                                                                                                                              - name: Required if the policy exists. The resource name for this

                                                                                                                                                                                                                                                                                                              policy. The format is:
                                                                                                                                                                                                                                                                                                              projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]
                                                                                                                                                                                                                                                                                                              [ALERT_POLICY_ID] is assigned by Stackdriver Monitoring when the
                                                                                                                                                                                                                                                                                                              policy is created. When calling the alertPolicies.create method, do
                                                                                                                                                                                                                                                                                                              not include the name field in the alerting policy passed as part of
                                                                                                                                                                                                                                                                                                              the request.
                                                                                                                                                                                                                                                                                                              

                                                                                                                                                                                                                                                                                                              type ProjectsCollectdTimeSeriesCreateCall

                                                                                                                                                                                                                                                                                                              type ProjectsCollectdTimeSeriesCreateCall struct {
                                                                                                                                                                                                                                                                                                              	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                                              }

                                                                                                                                                                                                                                                                                                              func (*ProjectsCollectdTimeSeriesCreateCall) Context

                                                                                                                                                                                                                                                                                                                Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                                                                                func (*ProjectsCollectdTimeSeriesCreateCall) Do

                                                                                                                                                                                                                                                                                                                  Do executes the "monitoring.projects.collectdTimeSeries.create" call. Exactly one of *CreateCollectdTimeSeriesResponse or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *CreateCollectdTimeSeriesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                                                                                  func (*ProjectsCollectdTimeSeriesCreateCall) Fields

                                                                                                                                                                                                                                                                                                                    Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                                                                                    func (*ProjectsCollectdTimeSeriesCreateCall) Header

                                                                                                                                                                                                                                                                                                                      Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                                                                                      type ProjectsCollectdTimeSeriesService

                                                                                                                                                                                                                                                                                                                      type ProjectsCollectdTimeSeriesService struct {
                                                                                                                                                                                                                                                                                                                      	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                                                      }

                                                                                                                                                                                                                                                                                                                      func NewProjectsCollectdTimeSeriesService

                                                                                                                                                                                                                                                                                                                      func NewProjectsCollectdTimeSeriesService(s *Service) *ProjectsCollectdTimeSeriesService

                                                                                                                                                                                                                                                                                                                      func (*ProjectsCollectdTimeSeriesService) Create

                                                                                                                                                                                                                                                                                                                        Create: Stackdriver Monitoring Agent only: Creates a new time series.This method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.

                                                                                                                                                                                                                                                                                                                        - name: The project

                                                                                                                                                                                                                                                                                                                        (https://cloud.google.com/monitoring/api/v3#project_name) in which
                                                                                                                                                                                                                                                                                                                        to create the time series. The format is:
                                                                                                                                                                                                                                                                                                                        projects/[PROJECT_ID_OR_NUMBER].
                                                                                                                                                                                                                                                                                                                        

                                                                                                                                                                                                                                                                                                                        type ProjectsGroupsCreateCall

                                                                                                                                                                                                                                                                                                                        type ProjectsGroupsCreateCall struct {
                                                                                                                                                                                                                                                                                                                        	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                                                        }

                                                                                                                                                                                                                                                                                                                        func (*ProjectsGroupsCreateCall) Context

                                                                                                                                                                                                                                                                                                                          Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                                                                                          func (*ProjectsGroupsCreateCall) Do

                                                                                                                                                                                                                                                                                                                            Do executes the "monitoring.projects.groups.create" call. Exactly one of *Group or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Group.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

                                                                                                                                                                                                                                                                                                                            func (*ProjectsGroupsCreateCall) Fields

                                                                                                                                                                                                                                                                                                                              Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more information.

                                                                                                                                                                                                                                                                                                                              func (*ProjectsGroupsCreateCall) Header

                                                                                                                                                                                                                                                                                                                              func (c *ProjectsGroupsCreateCall) Header() http.Header

                                                                                                                                                                                                                                                                                                                                Header returns an http.Header that can be modified by the caller to add HTTP headers to the request.

                                                                                                                                                                                                                                                                                                                                func (*ProjectsGroupsCreateCall) ValidateOnly

                                                                                                                                                                                                                                                                                                                                func (c *ProjectsGroupsCreateCall) ValidateOnly(validateOnly bool) *ProjectsGroupsCreateCall

                                                                                                                                                                                                                                                                                                                                  ValidateOnly sets the optional parameter "validateOnly": If true, validate this request but do not create the group.

                                                                                                                                                                                                                                                                                                                                  type ProjectsGroupsDeleteCall

                                                                                                                                                                                                                                                                                                                                  type ProjectsGroupsDeleteCall struct {
                                                                                                                                                                                                                                                                                                                                  	// contains filtered or unexported fields
                                                                                                                                                                                                                                                                                                                                  }

                                                                                                                                                                                                                                                                                                                                  func (*ProjectsGroupsDeleteCall) Context

                                                                                                                                                                                                                                                                                                                                    Context sets the context to be used in this call's Do method. Any pending HTTP request will be aborted if the provided context is canceled.

                                                                                                                                                                                                                                                                                                                                    func (*ProjectsGroupsDeleteCall) Do

                                                                                                                                                                                                                                                                                                                                      Do executes the "monitoring.projects.groups.delete" call. Exactly one of *Empty or error will be non-nil. Any non-2xx status code is an error. Response headers are in either *Empty.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.