class Google::Apis::MonitoringV3::Service

A Service is a discrete, autonomous, and network-accessible unit, designed to solve an individual concern (Wikipedia (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.

Attributes

app_engine[RW]

App Engine service. Learn more at cloud.google.com/appengine. Corresponds to the JSON property `appEngine` @return [Google::Apis::MonitoringV3::AppEngine]

cloud_endpoints[RW]

Cloud Endpoints service. Learn more at cloud.google.com/endpoints. Corresponds to the JSON property `cloudEndpoints` @return [Google::Apis::MonitoringV3::CloudEndpoints]

cloud_run[RW]

Cloud Run service. Learn more at cloud.google.com/run. Corresponds to the JSON property `cloudRun` @return [Google::Apis::MonitoringV3::CloudRun]

cluster_istio[RW]

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. Corresponds to the JSON property `clusterIstio` @return [Google::Apis::MonitoringV3::ClusterIstio]

custom[RW]

Custom view of service telemetry. Currently a place-holder pending final design. Corresponds to the JSON property `custom` @return [Google::Apis::MonitoringV3::Custom]

display_name[RW]

Name used for UI elements listing this Service. Corresponds to the JSON property `displayName` @return [String]

gke_namespace[RW]

GKE Namespace. The field names correspond to the resource metadata labels on monitored resources that fall under a namespace (for example, k8s_container or k8s_pod). Corresponds to the JSON property `gkeNamespace` @return [Google::Apis::MonitoringV3::GkeNamespace]

gke_service[RW]

GKE Service. The “service” here represents a Kubernetes service object (https:/ /kubernetes.io/docs/concepts/services-networking/service). The field names correspond to the resource labels on k8s_service monitored resources (https:// cloud.google.com/monitoring/api/resources#tag_k8s_service). Corresponds to the JSON property `gkeService` @return [Google::Apis::MonitoringV3::GkeService]

gke_workload[RW]

A GKE Workload (Deployment, StatefulSet, etc). The field names correspond to the metadata labels on monitored resources that fall under a workload (for example, k8s_container or k8s_pod). Corresponds to the JSON property `gkeWorkload` @return [Google::Apis::MonitoringV3::GkeWorkload]

istio_canonical_service[RW]

Canonical service scoped to an Istio mesh. Anthos clusters running ASM >= 1.6. 8 will have their services ingested as this type. Corresponds to the JSON property `istioCanonicalService` @return [Google::Apis::MonitoringV3::IstioCanonicalService]

mesh_istio[RW]

Istio service scoped to an Istio mesh. Anthos clusters running ASM < 1.6.8 will have their services ingested as this type. Corresponds to the JSON property `meshIstio` @return [Google::Apis::MonitoringV3::MeshIstio]

name[RW]

Resource name for this Service. The format is: projects// services/ Corresponds to the JSON property `name` @return [String]

telemetry[RW]

Configuration for how to query telemetry on a Service. Corresponds to the JSON property `telemetry` @return [Google::Apis::MonitoringV3::Telemetry]

user_labels[RW]

Labels which have been used to annotate the service. Label keys must start with a letter. Label keys and values may contain lowercase letters, numbers, underscores, and dashes. Label keys and values have a maximum length of 63 characters, and must be less than 128 bytes in size. Up to 64 label entries may be stored. For labels which do not have a semantic value, the empty string may be supplied for the label value. Corresponds to the JSON property `userLabels` @return [Hash<String,String>]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/monitoring_v3/classes.rb, line 3738
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/monitoring_v3/classes.rb, line 3743
def update!(**args)
  @app_engine = args[:app_engine] if args.key?(:app_engine)
  @cloud_endpoints = args[:cloud_endpoints] if args.key?(:cloud_endpoints)
  @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
  @cluster_istio = args[:cluster_istio] if args.key?(:cluster_istio)
  @custom = args[:custom] if args.key?(:custom)
  @display_name = args[:display_name] if args.key?(:display_name)
  @gke_namespace = args[:gke_namespace] if args.key?(:gke_namespace)
  @gke_service = args[:gke_service] if args.key?(:gke_service)
  @gke_workload = args[:gke_workload] if args.key?(:gke_workload)
  @istio_canonical_service = args[:istio_canonical_service] if args.key?(:istio_canonical_service)
  @mesh_istio = args[:mesh_istio] if args.key?(:mesh_istio)
  @name = args[:name] if args.key?(:name)
  @telemetry = args[:telemetry] if args.key?(:telemetry)
  @user_labels = args[:user_labels] if args.key?(:user_labels)
end