...

Text file src/github.com/GoogleCloudPlatform/k8s-config-connector/crds/monitoring_v1beta1_monitoringservicelevelobjective.yaml

Documentation: github.com/GoogleCloudPlatform/k8s-config-connector/crds

     1# Copyright 2020 Google LLC
     2#
     3# Licensed under the Apache License, Version 2.0 (the "License");
     4# you may not use this file except in compliance with the License.
     5# You may obtain a copy of the License at
     6#
     7#     http://www.apache.org/licenses/LICENSE-2.0
     8#
     9# Unless required by applicable law or agreed to in writing, software
    10# distributed under the License is distributed on an "AS IS" BASIS,
    11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12# See the License for the specific language governing permissions and
    13# limitations under the License.
    14
    15apiVersion: apiextensions.k8s.io/v1
    16kind: CustomResourceDefinition
    17metadata:
    18  annotations:
    19    cnrm.cloud.google.com/version: 1.106.0
    20  creationTimestamp: null
    21  labels:
    22    cnrm.cloud.google.com/dcl2crd: "true"
    23    cnrm.cloud.google.com/managed-by-kcc: "true"
    24    cnrm.cloud.google.com/stability-level: stable
    25    cnrm.cloud.google.com/system: "true"
    26  name: monitoringservicelevelobjectives.monitoring.cnrm.cloud.google.com
    27spec:
    28  group: monitoring.cnrm.cloud.google.com
    29  names:
    30    categories:
    31    - gcp
    32    kind: MonitoringServiceLevelObjective
    33    plural: monitoringservicelevelobjectives
    34    shortNames:
    35    - gcpmonitoringservicelevelobjective
    36    - gcpmonitoringservicelevelobjectives
    37    singular: monitoringservicelevelobjective
    38  scope: Namespaced
    39  versions:
    40  - additionalPrinterColumns:
    41    - jsonPath: .metadata.creationTimestamp
    42      name: Age
    43      type: date
    44    - description: When 'True', the most recent reconcile of the resource succeeded
    45      jsonPath: .status.conditions[?(@.type=='Ready')].status
    46      name: Ready
    47      type: string
    48    - description: The reason for the value in 'Ready'
    49      jsonPath: .status.conditions[?(@.type=='Ready')].reason
    50      name: Status
    51      type: string
    52    - description: The last transition time for the value in 'Status'
    53      jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
    54      name: Status Age
    55      type: date
    56    name: v1beta1
    57    schema:
    58      openAPIV3Schema:
    59        properties:
    60          apiVersion:
    61            description: 'apiVersion defines the versioned schema of this representation
    62              of an object. Servers should convert recognized schemas to the latest
    63              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
    64            type: string
    65          kind:
    66            description: 'kind is a string value representing the REST resource this
    67              object represents. Servers may infer this from the endpoint the client
    68              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
    69            type: string
    70          metadata:
    71            type: object
    72          spec:
    73            properties:
    74              calendarPeriod:
    75                description: 'A calendar period, semantically "since the start of
    76                  the current ``". At this time, only `DAY`, `WEEK`, `FORTNIGHT`,
    77                  and `MONTH` are supported. Possible values: CALENDAR_PERIOD_UNSPECIFIED,
    78                  DAY, WEEK, FORTNIGHT, MONTH, QUARTER, HALF, YEAR'
    79                type: string
    80              displayName:
    81                description: Name used for UI elements listing this SLO.
    82                type: string
    83              goal:
    84                description: The fraction of service that must be good in order for
    85                  this objective to be met. `0 < goal <= 0.999`.
    86                format: double
    87                type: number
    88              projectRef:
    89                description: Immutable. The Project that this resource belongs to.
    90                oneOf:
    91                - not:
    92                    required:
    93                    - external
    94                  required:
    95                  - name
    96                - not:
    97                    anyOf:
    98                    - required:
    99                      - name
   100                    - required:
   101                      - namespace
   102                  required:
   103                  - external
   104                properties:
   105                  external:
   106                    description: |-
   107                      The project for the resource
   108
   109                      Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).
   110                    type: string
   111                  name:
   112                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   113                    type: string
   114                  namespace:
   115                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   116                    type: string
   117                type: object
   118              resourceID:
   119                description: Immutable. Optional. The name of the resource. Used for
   120                  creation and acquisition. When unset, the value of `metadata.name`
   121                  is used as the default.
   122                type: string
   123              rollingPeriod:
   124                description: A rolling time period, semantically "in the past ``".
   125                  Must be an integer multiple of 1 day no larger than 30 days.
   126                type: string
   127              serviceLevelIndicator:
   128                description: The definition of good service, used to measure and calculate
   129                  the quality of the `Service`'s performance with respect to a single
   130                  aspect of service quality.
   131                properties:
   132                  basicSli:
   133                    description: Basic SLI on a well-known service type.
   134                    properties:
   135                      availability:
   136                        description: Good service is defined to be the count of requests
   137                          made to this service that return successfully.
   138                        type: object
   139                        x-kubernetes-preserve-unknown-fields: true
   140                      latency:
   141                        description: Good service is defined to be the count of requests
   142                          made to this service that are fast enough with respect to
   143                          `latency.threshold`.
   144                        properties:
   145                          experience:
   146                            description: 'A description of the experience associated
   147                              with failing requests. Possible values: LATENCY_EXPERIENCE_UNSPECIFIED,
   148                              DELIGHTING, SATISFYING, ANNOYING'
   149                            type: string
   150                          threshold:
   151                            description: Good service is defined to be the count of
   152                              requests made to this service that return in no more
   153                              than `threshold`.
   154                            type: string
   155                        type: object
   156                      location:
   157                        description: 'OPTIONAL: The set of locations to which this
   158                          SLI is relevant. Telemetry from other locations will not
   159                          be used to calculate performance for this SLI. If omitted,
   160                          this SLI applies to all locations in which the Service has
   161                          activity. For service types that don''t support breaking
   162                          down by location, setting this field will result in an error.'
   163                        items:
   164                          type: string
   165                        type: array
   166                      method:
   167                        description: 'OPTIONAL: The set of RPCs to which this SLI
   168                          is relevant. Telemetry from other methods will not be used
   169                          to calculate performance for this SLI. If omitted, this
   170                          SLI applies to all the Service''s methods. For service types
   171                          that don''t support breaking down by method, setting this
   172                          field will result in an error.'
   173                        items:
   174                          type: string
   175                        type: array
   176                      operationAvailability:
   177                        description: Good service is defined to be the count of operations
   178                          performed by this service that return successfully
   179                        type: object
   180                        x-kubernetes-preserve-unknown-fields: true
   181                      operationLatency:
   182                        description: Good service is defined to be the count of operations
   183                          performed by this service that are fast enough with respect
   184                          to `operation_latency.threshold`.
   185                        properties:
   186                          experience:
   187                            description: 'A description of the experience associated
   188                              with failing requests. Possible values: LATENCY_EXPERIENCE_UNSPECIFIED,
   189                              DELIGHTING, SATISFYING, ANNOYING'
   190                            type: string
   191                          threshold:
   192                            description: Good service is defined to be the count of
   193                              operations that are completed in no more than `threshold`.
   194                            type: string
   195                        type: object
   196                      version:
   197                        description: 'OPTIONAL: The set of API versions to which this
   198                          SLI is relevant. Telemetry from other API versions will
   199                          not be used to calculate performance for this SLI. If omitted,
   200                          this SLI applies to all API versions. For service types
   201                          that don''t support breaking down by version, setting this
   202                          field will result in an error.'
   203                        items:
   204                          type: string
   205                        type: array
   206                    type: object
   207                  requestBased:
   208                    description: Request-based SLIs
   209                    properties:
   210                      distributionCut:
   211                        description: '`distribution_cut` is used when `good_service`
   212                          is a count of values aggregated in a `Distribution` that
   213                          fall into a good range. The `total_service` is the total
   214                          count of all values aggregated in the `Distribution`.'
   215                        properties:
   216                          distributionFilter:
   217                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   218                              specifying a `TimeSeries` aggregating values. Must have
   219                              `ValueType = DISTRIBUTION` and `MetricKind = DELTA`
   220                              or `MetricKind = CUMULATIVE`.
   221                            type: string
   222                          range:
   223                            description: Range of values considered "good." For a
   224                              one-sided range, set one bound to an infinite value.
   225                            properties:
   226                              max:
   227                                description: Range maximum.
   228                                format: double
   229                                type: number
   230                              min:
   231                                description: Range minimum.
   232                                format: double
   233                                type: number
   234                            type: object
   235                        type: object
   236                      goodTotalRatio:
   237                        description: '`good_total_ratio` is used when the ratio of
   238                          `good_service` to `total_service` is computed from two `TimeSeries`.'
   239                        properties:
   240                          badServiceFilter:
   241                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   242                              specifying a `TimeSeries` quantifying bad service, either
   243                              demanded service that was not provided or demanded service
   244                              that was of inadequate quality. Must have `ValueType
   245                              = DOUBLE` or `ValueType = INT64` and must have `MetricKind
   246                              = DELTA` or `MetricKind = CUMULATIVE`.
   247                            type: string
   248                          goodServiceFilter:
   249                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   250                              specifying a `TimeSeries` quantifying good service provided.
   251                              Must have `ValueType = DOUBLE` or `ValueType = INT64`
   252                              and must have `MetricKind = DELTA` or `MetricKind =
   253                              CUMULATIVE`.
   254                            type: string
   255                          totalServiceFilter:
   256                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   257                              specifying a `TimeSeries` quantifying total demanded
   258                              service. Must have `ValueType = DOUBLE` or `ValueType
   259                              = INT64` and must have `MetricKind = DELTA` or `MetricKind
   260                              = CUMULATIVE`.
   261                            type: string
   262                        type: object
   263                    type: object
   264                  windowsBased:
   265                    description: Windows-based SLIs
   266                    properties:
   267                      goodBadMetricFilter:
   268                        description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   269                          specifying a `TimeSeries` with `ValueType = BOOL`. The window
   270                          is good if any `true` values appear in the window.
   271                        type: string
   272                      goodTotalRatioThreshold:
   273                        description: A window is good if its `performance` is high
   274                          enough.
   275                        properties:
   276                          basicSliPerformance:
   277                            description: '`BasicSli` to evaluate to judge window quality.'
   278                            properties:
   279                              availability:
   280                                description: Good service is defined to be the count
   281                                  of requests made to this service that return successfully.
   282                                type: object
   283                                x-kubernetes-preserve-unknown-fields: true
   284                              latency:
   285                                description: Good service is defined to be the count
   286                                  of requests made to this service that are fast enough
   287                                  with respect to `latency.threshold`.
   288                                properties:
   289                                  experience:
   290                                    description: 'A description of the experience
   291                                      associated with failing requests. Possible values:
   292                                      LATENCY_EXPERIENCE_UNSPECIFIED, DELIGHTING,
   293                                      SATISFYING, ANNOYING'
   294                                    type: string
   295                                  threshold:
   296                                    description: Good service is defined to be the
   297                                      count of requests made to this service that
   298                                      return in no more than `threshold`.
   299                                    type: string
   300                                type: object
   301                              location:
   302                                description: 'OPTIONAL: The set of locations to which
   303                                  this SLI is relevant. Telemetry from other locations
   304                                  will not be used to calculate performance for this
   305                                  SLI. If omitted, this SLI applies to all locations
   306                                  in which the Service has activity. For service types
   307                                  that don''t support breaking down by location, setting
   308                                  this field will result in an error.'
   309                                items:
   310                                  type: string
   311                                type: array
   312                              method:
   313                                description: 'OPTIONAL: The set of RPCs to which this
   314                                  SLI is relevant. Telemetry from other methods will
   315                                  not be used to calculate performance for this SLI.
   316                                  If omitted, this SLI applies to all the Service''s
   317                                  methods. For service types that don''t support breaking
   318                                  down by method, setting this field will result in
   319                                  an error.'
   320                                items:
   321                                  type: string
   322                                type: array
   323                              operationAvailability:
   324                                description: Good service is defined to be the count
   325                                  of operations performed by this service that return
   326                                  successfully
   327                                type: object
   328                                x-kubernetes-preserve-unknown-fields: true
   329                              operationLatency:
   330                                description: Good service is defined to be the count
   331                                  of operations performed by this service that are
   332                                  fast enough with respect to `operation_latency.threshold`.
   333                                properties:
   334                                  experience:
   335                                    description: 'A description of the experience
   336                                      associated with failing requests. Possible values:
   337                                      LATENCY_EXPERIENCE_UNSPECIFIED, DELIGHTING,
   338                                      SATISFYING, ANNOYING'
   339                                    type: string
   340                                  threshold:
   341                                    description: Good service is defined to be the
   342                                      count of operations that are completed in no
   343                                      more than `threshold`.
   344                                    type: string
   345                                type: object
   346                              version:
   347                                description: 'OPTIONAL: The set of API versions to
   348                                  which this SLI is relevant. Telemetry from other
   349                                  API versions will not be used to calculate performance
   350                                  for this SLI. If omitted, this SLI applies to all
   351                                  API versions. For service types that don''t support
   352                                  breaking down by version, setting this field will
   353                                  result in an error.'
   354                                items:
   355                                  type: string
   356                                type: array
   357                            type: object
   358                          performance:
   359                            description: '`RequestBasedSli` to evaluate to judge window
   360                              quality.'
   361                            properties:
   362                              distributionCut:
   363                                description: '`distribution_cut` is used when `good_service`
   364                                  is a count of values aggregated in a `Distribution`
   365                                  that fall into a good range. The `total_service`
   366                                  is the total count of all values aggregated in the
   367                                  `Distribution`.'
   368                                properties:
   369                                  distributionFilter:
   370                                    description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   371                                      specifying a `TimeSeries` aggregating values.
   372                                      Must have `ValueType = DISTRIBUTION` and `MetricKind
   373                                      = DELTA` or `MetricKind = CUMULATIVE`.
   374                                    type: string
   375                                  range:
   376                                    description: Range of values considered "good."
   377                                      For a one-sided range, set one bound to an infinite
   378                                      value.
   379                                    properties:
   380                                      max:
   381                                        description: Range maximum.
   382                                        format: double
   383                                        type: number
   384                                      min:
   385                                        description: Range minimum.
   386                                        format: double
   387                                        type: number
   388                                    type: object
   389                                type: object
   390                              goodTotalRatio:
   391                                description: '`good_total_ratio` is used when the
   392                                  ratio of `good_service` to `total_service` is computed
   393                                  from two `TimeSeries`.'
   394                                properties:
   395                                  badServiceFilter:
   396                                    description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   397                                      specifying a `TimeSeries` quantifying bad service,
   398                                      either demanded service that was not provided
   399                                      or demanded service that was of inadequate quality.
   400                                      Must have `ValueType = DOUBLE` or `ValueType
   401                                      = INT64` and must have `MetricKind = DELTA`
   402                                      or `MetricKind = CUMULATIVE`.
   403                                    type: string
   404                                  goodServiceFilter:
   405                                    description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   406                                      specifying a `TimeSeries` quantifying good service
   407                                      provided. Must have `ValueType = DOUBLE` or
   408                                      `ValueType = INT64` and must have `MetricKind
   409                                      = DELTA` or `MetricKind = CUMULATIVE`.
   410                                    type: string
   411                                  totalServiceFilter:
   412                                    description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   413                                      specifying a `TimeSeries` quantifying total
   414                                      demanded service. Must have `ValueType = DOUBLE`
   415                                      or `ValueType = INT64` and must have `MetricKind
   416                                      = DELTA` or `MetricKind = CUMULATIVE`.
   417                                    type: string
   418                                type: object
   419                            type: object
   420                          threshold:
   421                            description: If window `performance >= threshold`, the
   422                              window is counted as good.
   423                            format: double
   424                            type: number
   425                        type: object
   426                      metricMeanInRange:
   427                        description: A window is good if the metric's value is in
   428                          a good range, averaged across returned streams.
   429                        properties:
   430                          range:
   431                            description: Range of values considered "good." For a
   432                              one-sided range, set one bound to an infinite value.
   433                            properties:
   434                              max:
   435                                description: Range maximum.
   436                                format: double
   437                                type: number
   438                              min:
   439                                description: Range minimum.
   440                                format: double
   441                                type: number
   442                            type: object
   443                          timeSeries:
   444                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   445                              specifying the `TimeSeries` to use for evaluating window
   446                              quality.
   447                            type: string
   448                        type: object
   449                      metricSumInRange:
   450                        description: A window is good if the metric's value is in
   451                          a good range, summed across returned streams.
   452                        properties:
   453                          range:
   454                            description: Range of values considered "good." For a
   455                              one-sided range, set one bound to an infinite value.
   456                            properties:
   457                              max:
   458                                description: Range maximum.
   459                                format: double
   460                                type: number
   461                              min:
   462                                description: Range minimum.
   463                                format: double
   464                                type: number
   465                            type: object
   466                          timeSeries:
   467                            description: A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
   468                              specifying the `TimeSeries` to use for evaluating window
   469                              quality.
   470                            type: string
   471                        type: object
   472                      windowPeriod:
   473                        description: Duration over which window quality is evaluated.
   474                          Must be an integer fraction of a day and at least `60s`.
   475                        type: string
   476                    type: object
   477                type: object
   478              serviceRef:
   479                description: Immutable.
   480                oneOf:
   481                - not:
   482                    required:
   483                    - external
   484                  required:
   485                  - name
   486                - not:
   487                    anyOf:
   488                    - required:
   489                      - name
   490                    - required:
   491                      - namespace
   492                  required:
   493                  - external
   494                properties:
   495                  external:
   496                    description: |-
   497                      The service for the resource
   498
   499                      Allowed value: The Google Cloud resource name of a `MonitoringService` resource (format: `projects/{{project}}/services/{{name}}`).
   500                    type: string
   501                  name:
   502                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   503                    type: string
   504                  namespace:
   505                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   506                    type: string
   507                type: object
   508            required:
   509            - goal
   510            - projectRef
   511            - serviceRef
   512            type: object
   513          status:
   514            properties:
   515              conditions:
   516                description: Conditions represent the latest available observation
   517                  of the resource's current state.
   518                items:
   519                  properties:
   520                    lastTransitionTime:
   521                      description: Last time the condition transitioned from one status
   522                        to another.
   523                      type: string
   524                    message:
   525                      description: Human-readable message indicating details about
   526                        last transition.
   527                      type: string
   528                    reason:
   529                      description: Unique, one-word, CamelCase reason for the condition's
   530                        last transition.
   531                      type: string
   532                    status:
   533                      description: Status is the status of the condition. Can be True,
   534                        False, Unknown.
   535                      type: string
   536                    type:
   537                      description: Type is the type of the condition.
   538                      type: string
   539                  type: object
   540                type: array
   541              createTime:
   542                description: Time stamp of the `Create` or most recent `Update` command
   543                  on this `Slo`.
   544                format: date-time
   545                type: string
   546              deleteTime:
   547                description: Time stamp of the `Update` or `Delete` command that made
   548                  this no longer a current `Slo`. This field is not populated in `ServiceLevelObjective`s
   549                  returned from calls to `GetServiceLevelObjective` and `ListServiceLevelObjectives`,
   550                  because it is always empty in the current version. It is populated
   551                  in `ServiceLevelObjective`s representing previous versions in the
   552                  output of `ListServiceLevelObjectiveVersions`. Because all old configuration
   553                  versions are stored, `Update` operations mark the obsoleted version
   554                  as deleted.
   555                format: date-time
   556                type: string
   557              observedGeneration:
   558                description: ObservedGeneration is the generation of the resource
   559                  that was most recently observed by the Config Connector controller.
   560                  If this is equal to metadata.generation, then that means that the
   561                  current reported status reflects the most recent desired state of
   562                  the resource.
   563                type: integer
   564              serviceManagementOwned:
   565                description: Output only. If set, this SLO is managed at the [Service
   566                  Management](https://cloud.google.com/service-management/overview)
   567                  level. Therefore the service yaml file is the source of truth for
   568                  this SLO, and API `Update` and `Delete` operations are forbidden.
   569                type: boolean
   570            type: object
   571        required:
   572        - spec
   573        type: object
   574    served: true
   575    storage: true
   576    subresources:
   577      status: {}
   578status:
   579  acceptedNames:
   580    kind: ""
   581    plural: ""
   582  conditions: []
   583  storedVersions: []

View as plain text