モジュール: Mongo::Monitoring::Subscriptable

次のドキュメントに含まれます。
Mongo::モニタリンググローバル
定義:
build/ruby-Driver-v 2.19 /lib/mongo/monitoring.rb

Overview

モニタリング サブスクライブとグローバル イベント サブスクライブとの間で一般的なサブスクライブ メソッドが含まれています。

以来

  • 2.6.0

インスタンス メソッドの概要を折りたたむ

インスタンス メソッドの詳細

サブスクライブ(トピック、サブスクライブ) =オブジェクト

注:

同じリスナーを同じトピックでサブスクライブすることが可能

イベント トピックのリスナーをサブスクライブします。

複数回、その場合、リスナーはサブスクライブされている回数だけ呼び出され、サブスクライブを解除するには同じ回数のアンサブスクライブ呼び出しが必要になります。

例:

トピックにサブスクライブします。

monitoring.subscribe(QUERY, subscriber)

トピックをグローバルにサブスクライブします。

Monitoring::Global.subscribe(QUERY, subscriber)

パラメーター:

  • topic ( string )

    イベントのトピック。

  • サブスクライブ オブジェクト

    イベントを取り扱うサブスクライブ。

以来

  • 2.1.0



105
106
107
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/monitoring.rb' の場合は105行

デフォルト サブスクライブ(topic, サブスクライブ)
  providers_for(topic).プッシュ(サブスクライブ)
end

サブスクライブ層] string [] ハッシュ未満

すべてのサブスクライブを取得します。

例:

すべてのサブスクライブを取得します。

monitoring.subscribers

すべてのグローバル サブスクライブを取得します。

Mongo::Monitoring::Global.subscribers

次の値を返します。

  • ( Hash < string 、 Object> )

    サブスクライブ。

以来

  • 2.1.0



157
158
159
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/monitoring.rb' の場合は157行

デフォルト サブスクライブ
  @subscribers ||= {}
end

サブスクライブ数は? (トピック) = truefalse

特定のイベントのサブスクライブが存在するかどうかを判断します。

例:

サブスクライブメンバーはありますか。

monitoring.subscribers?(COMMAND)

グローバル サブスクライブ者はしていますか。

Mongo::Monitoring::Global.subscribers?(COMMAND)

パラメーター:

  • topic ( string )

    イベントのトピック。

次の値を返します。

  • truefalse

    トピックのサブスクライブが存在する場合。

以来

  • 2.1.0



174
175
176
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/monitoring.rb' の場合は174行

デフォルト サブスクライブしますか?(topic)
  !providers_for(topic).空の場合
end

# unsubscribe (トピック、サブスクライブ) =オブジェクト

注:

グローバル サブスクライブ レジストリは、クライアントごとのサブスクライブ レジストリとは別です。 同じサブスクライブを、特定のクライアントからのイベントだけでなくグローバルにサブスクライブすることもできます。グローバルにサブスクライブを解除しても、明示的にサブスクライブされていたクライアントからそのサブスクライブを解除することは ありません 。

注:

現在、クライアントが作成されるたびに、グローバル サブスクライブのリストはクライアントにコピーされます。 したがって、サブスクライブをグローバルにサブスクライブしても、既存のクライアントには影響しません。サブスクライブされていないサブスクライブにイベントは引き続き送信されます。

イベント トピックからリスナーのサブスクライブを解除します。

リスナーがイベント トピックに複数回サブスクライブされている場合、この呼び出しは 1 つのサブスクライブを削除します。

リスナーがトピックにサブスクライブしていない場合、この操作は実行されず、例外は発生しません。

例:

トピックからサブスクライブを解除します。

monitoring.unsubscribe(QUERY, subscriber)

トピックからグローバルにサブスクライブを解除します。

Mongo::Monitoring::Global.unsubscribe(QUERY, subscriber)

パラメーター:

  • topic ( string )

    イベントのトピック。

  • サブスクライブ オブジェクト

    サブスクライブを解除するサブスクライブ。

以来

  • 2.6.0



138
139
140
141
142
143
144
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/monitoring.rb' の場合は138行

デフォルト サブスクライブ解除(topic, サブスクライブ)
  Subs = providers_for(topic)
  index = Subs.index(サブスクライブ)
  場合 index
    Subs.delete_at(index)
  end
end