Class: Google::Cloud::Monitoring::V3::NotificationChannelServiceClient
- Inherits:
-
Object
- Object
- Google::Cloud::Monitoring::V3::NotificationChannelServiceClient
- Defined in:
- lib/google/cloud/monitoring/v3/notification_channel_service_client.rb
Overview
The Notification Channel API provides access to configuration that controls how messages related to incidents are sent.
Constant Summary collapse
- SERVICE_ADDRESS =
The default address of the service.
"monitoring.googleapis.com".freeze
- DEFAULT_SERVICE_PORT =
The default port of the service.
443
- GRPC_INTERCEPTORS =
The default set of gRPC interceptors.
[]
- DEFAULT_TIMEOUT =
30
- ALL_SCOPES =
The scopes needed to make gRPC calls to all of the methods defined in this service.
[ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read", "https://www.googleapis.com/auth/monitoring.write" ].freeze
Class Method Summary collapse
-
.notification_channel_descriptor_path(project, channel_descriptor) ⇒ String
Returns a fully-qualified notification_channel_descriptor resource name string.
-
.notification_channel_path(project, notification_channel) ⇒ String
Returns a fully-qualified notification_channel resource name string.
-
.project_path(project) ⇒ String
Returns a fully-qualified project resource name string.
Instance Method Summary collapse
-
#create_notification_channel(name, notification_channel, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.
-
#delete_notification_channel(name, force: nil, options: nil) {|result, operation| ... } ⇒ Object
Deletes a notification channel.
-
#get_notification_channel(name, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Gets a single notification channel.
-
#get_notification_channel_descriptor(name, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannelDescriptor
Gets a single channel descriptor.
-
#initialize(credentials: nil, scopes: ALL_SCOPES, client_config: {}, timeout: DEFAULT_TIMEOUT, metadata: nil, exception_transformer: nil, lib_name: nil, lib_version: "") ⇒ NotificationChannelServiceClient
constructor
A new instance of NotificationChannelServiceClient.
-
#list_notification_channel_descriptors(name, page_size: nil, options: nil) {|result, operation| ... } ⇒ Google::Gax::PagedEnumerable<Google::Monitoring::V3::NotificationChannelDescriptor>
Lists the descriptors for supported channel types.
-
#list_notification_channels(name, filter: nil, order_by: nil, page_size: nil, options: nil) {|result, operation| ... } ⇒ Google::Gax::PagedEnumerable<Google::Monitoring::V3::NotificationChannel>
Lists the notification channels that have been created for the project.
-
#update_notification_channel(notification_channel, update_mask: nil, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Updates a notification channel.
Constructor Details
#initialize(credentials: nil, scopes: ALL_SCOPES, client_config: {}, timeout: DEFAULT_TIMEOUT, metadata: nil, exception_transformer: nil, lib_name: nil, lib_version: "") ⇒ NotificationChannelServiceClient
Returns a new instance of NotificationChannelServiceClient
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 155 def initialize \ credentials: nil, scopes: ALL_SCOPES, client_config: {}, timeout: DEFAULT_TIMEOUT, metadata: nil, exception_transformer: nil, lib_name: nil, lib_version: "" # These require statements are intentionally placed here to initialize # the gRPC module only when it's required. # See https://github.com/googleapis/toolkit/issues/446 require "google/gax/grpc" require "google/monitoring/v3/notification_service_services_pb" credentials ||= Google::Cloud::Monitoring::V3::Credentials.default if credentials.is_a?(String) || credentials.is_a?(Hash) updater_proc = Google::Cloud::Monitoring::V3::Credentials.new(credentials).updater_proc end if credentials.is_a?(GRPC::Core::Channel) channel = credentials end if credentials.is_a?(GRPC::Core::ChannelCredentials) chan_creds = credentials end if credentials.is_a?(Proc) updater_proc = credentials end if credentials.is_a?(Google::Auth::Credentials) updater_proc = credentials.updater_proc end package_version = Gem.loaded_specs['google-cloud-monitoring'].version.version google_api_client = "gl-ruby/#{RUBY_VERSION}" google_api_client << " #{lib_name}/#{lib_version}" if lib_name google_api_client << " gapic/#{package_version} gax/#{Google::Gax::VERSION}" google_api_client << " grpc/#{GRPC::VERSION}" google_api_client.freeze headers = { :"x-goog-api-client" => google_api_client } headers.merge!() unless .nil? client_config_file = Pathname.new(__dir__).join( "notification_channel_service_client_config.json" ) defaults = client_config_file.open do |f| Google::Gax.construct_settings( "google.monitoring.v3.NotificationChannelService", JSON.parse(f.read), client_config, Google::Gax::Grpc::STATUS_CODE_NAMES, timeout, page_descriptors: PAGE_DESCRIPTORS, errors: Google::Gax::Grpc::API_ERRORS, metadata: headers ) end # Allow overriding the service path/port in subclasses. service_path = self.class::SERVICE_ADDRESS port = self.class::DEFAULT_SERVICE_PORT interceptors = self.class::GRPC_INTERCEPTORS @notification_channel_service_stub = Google::Gax::Grpc.create_stub( service_path, port, chan_creds: chan_creds, channel: channel, updater_proc: updater_proc, scopes: scopes, interceptors: interceptors, &Google::Monitoring::V3::NotificationChannelService::Stub.method(:new) ) @list_notification_channel_descriptors = Google::Gax.create_api_call( @notification_channel_service_stub.method(:list_notification_channel_descriptors), defaults["list_notification_channel_descriptors"], exception_transformer: exception_transformer ) @get_notification_channel_descriptor = Google::Gax.create_api_call( @notification_channel_service_stub.method(:get_notification_channel_descriptor), defaults["get_notification_channel_descriptor"], exception_transformer: exception_transformer ) @list_notification_channels = Google::Gax.create_api_call( @notification_channel_service_stub.method(:list_notification_channels), defaults["list_notification_channels"], exception_transformer: exception_transformer ) @get_notification_channel = Google::Gax.create_api_call( @notification_channel_service_stub.method(:get_notification_channel), defaults["get_notification_channel"], exception_transformer: exception_transformer ) @create_notification_channel = Google::Gax.create_api_call( @notification_channel_service_stub.method(:create_notification_channel), defaults["create_notification_channel"], exception_transformer: exception_transformer ) @update_notification_channel = Google::Gax.create_api_call( @notification_channel_service_stub.method(:update_notification_channel), defaults["update_notification_channel"], exception_transformer: exception_transformer ) @delete_notification_channel = Google::Gax.create_api_call( @notification_channel_service_stub.method(:delete_notification_channel), defaults["delete_notification_channel"], exception_transformer: exception_transformer ) end |
Class Method Details
.notification_channel_descriptor_path(project, channel_descriptor) ⇒ String
Returns a fully-qualified notification_channel_descriptor resource name string.
119 120 121 122 123 124 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 119 def self.notification_channel_descriptor_path project, channel_descriptor NOTIFICATION_CHANNEL_DESCRIPTOR_PATH_TEMPLATE.render( :"project" => project, :"channel_descriptor" => channel_descriptor ) end |
.notification_channel_path(project, notification_channel) ⇒ String
Returns a fully-qualified notification_channel resource name string.
108 109 110 111 112 113 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 108 def self.notification_channel_path project, notification_channel NOTIFICATION_CHANNEL_PATH_TEMPLATE.render( :"project" => project, :"notification_channel" => notification_channel ) end |
.project_path(project) ⇒ String
Returns a fully-qualified project resource name string.
98 99 100 101 102 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 98 def self.project_path project PROJECT_PATH_TEMPLATE.render( :"project" => project ) end |
Instance Method Details
#create_notification_channel(name, notification_channel, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.
508 509 510 511 512 513 514 515 516 517 518 519 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 508 def create_notification_channel \ name, notification_channel, options: nil, &block req = { name: name, notification_channel: notification_channel }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::CreateNotificationChannelRequest) @create_notification_channel.call(req, , &block) end |
#delete_notification_channel(name, force: nil, options: nil) {|result, operation| ... } ⇒ Object
Deletes a notification channel.
589 590 591 592 593 594 595 596 597 598 599 600 601 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 589 def delete_notification_channel \ name, force: nil, options: nil, &block req = { name: name, force: force }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::DeleteNotificationChannelRequest) @delete_notification_channel.call(req, , &block) nil end |
#get_notification_channel(name, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.
463 464 465 466 467 468 469 470 471 472 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 463 def get_notification_channel \ name, options: nil, &block req = { name: name }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::GetNotificationChannelRequest) @get_notification_channel.call(req, , &block) end |
#get_notification_channel_descriptor(name, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannelDescriptor
Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.
352 353 354 355 356 357 358 359 360 361 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 352 def get_notification_channel_descriptor \ name, options: nil, &block req = { name: name }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::GetNotificationChannelDescriptorRequest) @get_notification_channel_descriptor.call(req, , &block) end |
#list_notification_channel_descriptors(name, page_size: nil, options: nil) {|result, operation| ... } ⇒ Google::Gax::PagedEnumerable<Google::Monitoring::V3::NotificationChannelDescriptor>
Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.
318 319 320 321 322 323 324 325 326 327 328 329 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 318 def list_notification_channel_descriptors \ name, page_size: nil, options: nil, &block req = { name: name, page_size: page_size }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::ListNotificationChannelDescriptorsRequest) @list_notification_channel_descriptors.call(req, , &block) end |
#list_notification_channels(name, filter: nil, order_by: nil, page_size: nil, options: nil) {|result, operation| ... } ⇒ Google::Gax::PagedEnumerable<Google::Monitoring::V3::NotificationChannel>
Lists the notification channels that have been created for the project.
422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 422 def list_notification_channels \ name, filter: nil, order_by: nil, page_size: nil, options: nil, &block req = { name: name, filter: filter, order_by: order_by, page_size: page_size }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::ListNotificationChannelsRequest) @list_notification_channels.call(req, , &block) end |
#update_notification_channel(notification_channel, update_mask: nil, options: nil) {|result, operation| ... } ⇒ Google::Monitoring::V3::NotificationChannel
Updates a notification channel. Fields not specified in the field mask remain unchanged.
552 553 554 555 556 557 558 559 560 561 562 563 |
# File 'lib/google/cloud/monitoring/v3/notification_channel_service_client.rb', line 552 def update_notification_channel \ notification_channel, update_mask: nil, options: nil, &block req = { notification_channel: notification_channel, update_mask: update_mask }.delete_if { |_, v| v.nil? } req = Google::Gax::to_proto(req, Google::Monitoring::V3::UpdateNotificationChannelRequest) @update_notification_channel.call(req, , &block) end |