def apply(self): stub = metric_descriptor_pb2_grpc.MonitoringMetricDescriptorServiceStub( channel.Channel()) request = metric_descriptor_pb2.ApplyMonitoringMetricDescriptorRequest( ) if Primitive.to_proto(self.type): request.resource.type = Primitive.to_proto(self.type) if MetricDescriptorLabelsArray.to_proto(self.labels): request.resource.labels.extend( MetricDescriptorLabelsArray.to_proto(self.labels)) if MetricDescriptorMetricKindEnum.to_proto(self.metric_kind): request.resource.metric_kind = MetricDescriptorMetricKindEnum.to_proto( self.metric_kind) if MetricDescriptorValueTypeEnum.to_proto(self.value_type): request.resource.value_type = MetricDescriptorValueTypeEnum.to_proto( self.value_type) if Primitive.to_proto(self.unit): request.resource.unit = Primitive.to_proto(self.unit) if Primitive.to_proto(self.description): request.resource.description = Primitive.to_proto(self.description) if Primitive.to_proto(self.display_name): request.resource.display_name = Primitive.to_proto( self.display_name) if MetricDescriptorMetadata.to_proto(self.metadata): request.resource.metadata.CopyFrom( MetricDescriptorMetadata.to_proto(self.metadata)) else: request.resource.ClearField("metadata") if MetricDescriptorLaunchStageEnum.to_proto(self.launch_stage): request.resource.launch_stage = MetricDescriptorLaunchStageEnum.to_proto( self.launch_stage) if Primitive.to_proto(self.project): request.resource.project = Primitive.to_proto(self.project) request.service_account_file = self.service_account_file response = stub.ApplyMonitoringMetricDescriptor(request) self.self_link = Primitive.from_proto(response.self_link) self.type = Primitive.from_proto(response.type) self.labels = MetricDescriptorLabelsArray.from_proto(response.labels) self.metric_kind = MetricDescriptorMetricKindEnum.from_proto( response.metric_kind) self.value_type = MetricDescriptorValueTypeEnum.from_proto( response.value_type) self.unit = Primitive.from_proto(response.unit) self.description = Primitive.from_proto(response.description) self.display_name = Primitive.from_proto(response.display_name) self.metadata = MetricDescriptorMetadata.from_proto(response.metadata) self.launch_stage = MetricDescriptorLaunchStageEnum.from_proto( response.launch_stage) self.monitored_resource_types = Primitive.from_proto( response.monitored_resource_types) self.project = Primitive.from_proto(response.project)
def list(self, project, service_account_file=""): stub = metric_descriptor_pb2_grpc.MonitoringMetricDescriptorServiceStub( channel.Channel()) request = metric_descriptor_pb2.ListMonitoringMetricDescriptorRequest() request.service_account_file = service_account_file request.Project = project return stub.ListMonitoringMetricDescriptor(request).items
def delete(self, project, type, service_account_file=""): stub = metric_descriptor_pb2_grpc.MonitoringMetricDescriptorServiceStub( channel.Channel()) request = metric_descriptor_pb2.DeleteMonitoringMetricDescriptorRequest( ) request.service_account_file = service_account_file request.Project = project request.Type = type response = stub.DeleteMonitoringMetricDescriptor(request)