类:Mongo::Srv::Monitor Private

继承:
对象
  • 对象
显示全部
包括:
BackgroundThread , Loggable
定义于:
构建/ruby-driver-v2.19/lib/ mongo /srv/ 监控.rb

Overview

此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。

定期检索集群的 SRV URI 的 SRV 记录,并将 SRV 查找结果设置为集群的服务器列表。

如果在 SRV 查找期间遇到错误,或者 SRV 记录无效或出于安全原因不允许,则会记录警告并继续监控。

常量摘要折叠

MIN_SCAN_INTERVAL =

此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。

60
DEFAULT_TIMEOUT =

此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。

10

Loggable中包含的常量

Loggable::PREFIX

实例属性摘要折叠

实例方法摘要折叠

包含在BackgroundThread中的方法

#run! , #running?#stop!

Loggable中包含的方法

#log_debug#log_error#log_ Fatal#log_info#log_warn#logger

构造函数详情

#initialize (cluster, **opts) ⇒监控

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

创建 SRV监控。

参数:

  • 集群 (集群)

    集群。

  • opts (哈希)

    一组可自定义的选项

选项哈希 ( **opts ):

  • :timeout 浮点

    用于 DNS 查找的超时时间。

  • :srv_uri ( URI::SRVProtocol )

    要监控的 SRV URI。

  • :resolv_options 哈希

    仅供内部驱动程序使用。 传递给 Resolv::DNS 构造函数以进行 SRV 查找的选项。



45
46
47
48
49
50
51
52
53
54
# File 'build/Ruby-driver-v 2.19 /lib/mongo/srv/monitor.rb', 第45行

def 初始化(集群, **opts)
  @cluster = 集群
  除非 @srv_uri = opts.删除(:srv_uri)
    提高 ArgumentError, ' SRV URI is required '
  end
  @options = opts.冻结
  @resolver = Srv::解析程序.new(**opts)
  @last_result = @srv_uri.srv_result
  @stop_semaphore = 信号量.new
end

实例属性详细信息

# cluster对象(只读)

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。



58
59
60
# File 'build/Ruby-driver-v 2.19 /lib/mongo/srv/monitor.rb', 第58行

def 集群
  @cluster
end

# last_resultSrv::Result (只读)

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回上次已知的 SRV 查找结果。 用于确定 SRV 查找之间的间隔,该间隔取决于 SRV DNS 记录的 TTL 值。

返回:

  • ( Srv::Result )

    上次已知的 SRV 查找结果。 用于确定 SRV 查找之间的间隔,该间隔取决于 SRV DNS 记录的 TTL 值。



63
64
65
# File 'build/Ruby-driver-v 2.19 /lib/mongo/srv/monitor.rb', 第63行

def last_result
  @last_result
end

# options对象(只读)

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。



56
57
58
# File 'build/Ruby-driver-v 2.19 /lib/mongo/srv/monitor.rb', 第56行

def 选项
  @options
end