クラス: Mongo::Monitoring

継承:
オブジェクト
  • オブジェクト
すべて表示
次のことが含まれます。
IDサブスクライブ可能
定義:
lib/mongo/monitoring.rb


、lib/mongo/monitoring/pushable.rb、lib/mongo/monitoring/イベント/secure.rb、lib/mongo/monitoring/イベント/cmap/base.rb、lib/mongo/monitoring/

cmap_log_subscriber.rb、lib/mongo/monitoring/イベント/server_closed.rb、lib/mongo/monitoring/sam_log_subscriber.rb、lib/mongo/monitoring/イベント/command_failed.rb、lib/mongo/monitoring/イベント/server_opening.rb、






lib/mongo/monitoring/イベント/cmap/Pool_ready.rb、lib/mongo/monitoring/イベント/command_started.rb、lib/mongo/monitoring/イベント/toplog_closed.rb、lib/mongo/monitoring/command_log_subscriber.rb、lib/
mongo/monitoring/イベント/cmap/Pool_closed.rb、lib/mongo/monitoring/イベント/toplog_changed.rb、lib/mongo/monitoring/イベント/toplog_opening.rb、lib/mongo/monitoring/イベント/cmap/Pool_client.rb、




lib/mongo/monitoring/イベント/cmap/Pool_creed.rb、lib/mongo/monitoring/イベント/command_succeeded.rb、lib/mongo/monitoring/イベント/cmap/
connection_ready.rb、lib/mongo/monitoring/unified_sted_log_subscriber.rb、

lib/mongo/monit oring/イベント/cmap/
connection_closed.rb、lib/mongo/monitoring/server_closed_log_subscriber.rb、lib/mongo/monitoring/イベント/cmap/

connection_creed.rb、lib/mongo/monitoring/イベント/server_ heartbeat_failed.rb、lib/mongo/


Monitoring/server_opening_log_subscriber.rb、lib/mongo/monitoring/イベント/server_
heartbeat_started.rb、lib/mongo/monitoring/toployment_log_subscriber.rb、lib/mongo/monitoring/topquality_log_subscriber.rb、lib/mongo/monitoring/topquality_log_subscriber.rb、lib/

mongo/monitoring/イベント/cmap/
connection_checked_in.rb、lib/mongo/monitoring/イベント/server_description_changed.rb、lib/mongo/monitoring/イベント/server_
heartbeat_succeeded.rb、lib/mongo/monitoring/イベント/cmap/
connection_checked_out.rb、
lib/mongo/monitoring/イベント/cmap/
connection_check_out_failed.rb、lib/mongo/monitoring/イベント/cmap/
connection_check_out_started.rb、lib/mongo/monitoring/server_description_changed_log_subscriber.rb

Overview

クラスはパフォーマンス モニタリング API の動作を定義します。

以来

  • 2.1.0

名前空間で定義済み

Modules: イベント グローバル 公開可能 、 サブスクリプション可能なクラス: CmapLogSubscriber コマンド ログ サブスクリプション、 SDAMLogSubscripter ServerClosedLogSubscripter Server Description ChangedLogSubscripter 、 Server startingLogSubsubscripter 、 トポロジー 変更された LogSubscripter 、 トポロジー 効果の サブスクライブ 、 UnifiedSamLogSubscriber

定数の概要の削減

コマンド =

コマンドのトピック。

以来

  • 2.1.0

'コマンド'
CONNECTION_POOL =

接続プールのトピック。

以来

  • 2.9.0

'接続プール'
SERVER_CLOSED =

サーバーがトピックを閉じました。

以来

  • 2.4.0

'ServerClosed'
SERVER_DESCRIPTION_CHAGED =

サーバーの説明が変更されたトピック。

以来

  • 2.4.0

'Server Description Changed'
SERVER_OPENING =

サーバー オープン トピック。

以来

  • 2.4.0

'ServerOnce'
TOLOGY_CHANED =

トポロジーが変更されたトピック。

以来

  • 2.4.0

'トポロジーが変更された'
TOLOGY_CLOSED =

トポロジーが閉じたトピック。

以来

  • 2.4.0

'トポロジーが閉じました'
TOLOGY_OPENING =

トポロジーの開始トピック。

以来

  • 2.4.0

'トポロジー開始'
SERVER_HEARTBエンジン =

サーバー ハートビートが開始されたトピック。

以来

  • 2.7.0

'Serverハートビート'

インスタンス属性の概要を折りたたむ

クラスメソッドの概要を折りたたむ

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

サブスクリプションに含まれるメソッド

サブスクライブサブスクリプションサブスクリプション?#unsubscribe

IDに含まれるメソッド

次が含まれます:

コンストラクターの詳細

#初期化(オプション = {}) =監視

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

監視を初期化します。

例:

新しいモニタリングを作成します。

Monitoring.new(:monitoring => true)

パラメーター:

  • options ハッシュ (デフォルトは{}です)

    オプション。 クライアント コンストラクターはそのオプションをモニタリング コンストラクターに転送しますが、モニタリングはクライアントによって認識されたオプションのサブセットのみを認識します。

オプション ハッシュ( options ):

  • :monitoring truefalse

    false が指定されている場合、モニタリング インスタンスはグローバル モニタリング イベント サブスクライブなしで初期化され、SDAM イベントを公開しません。 コマンド モニタリング イベントは引き続き公開され、ドライバーは引き続き SDAM を実行し、そのクラスターを監視してサーバー選択を実行します。 SDAM イベントの組み込みドライバー ログ記録は、SDAM イベント サブスクライブを通じて実装されているため、無効になります。 Client#subscribe はすべてのイベント タイプで成功しますが、SDAM イベントへのサブスクライブは呼び出されません。 false 以外の値を指定すると、通常の SDAM イベント公開を実行するデフォルトの動作になります。

以来

  • 2.1.0



218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
# ファイル 'lib/mongo/monitoring.rb', 行 218

デフォルト 初期化(options = {})
  @options = options
  return ただし、 options[:monitoring] != false

  グローバル.サブスクライブ. 行う |topic, サブスクライブ|
    サブスクライブ. 行う |サブスクライブ|
      サブスクライブ(topic, サブスクライブ)
    end
  end
  サブスクライブ(コマンド, コマンドログサブスクライブ.新着情報(options))
  CMAP イベントはデフォルトではログに記録されません。これは次が作成するためです。
  ドライバーによって実行されるすべての操作のログ エントリの数。
  #subscribe(CONNECTION_POOL, CmapLogSubscriber.new(options))
  サブスクライブ(SERVER_OPENING, ServerOpenLogSubscripter.新着情報(options))
  サブスクライブ(SERVER_CLOSED, ServerClosedLogSubscripter.新着情報(options))
  サブスクライブ(SERVER_DESCRIPTION_CHAGED, Server Description ChangedLogSubscripter.新着情報(options))
  サブスクライブ(TOLOGY_OPENING, トポロジーを開くためのログサブスクライブ.新着情報(options))
  サブスクライブ(TOLOGY_CHANED, トポロジー変更ログサブスクライブ.新着情報(options))
  サブスクライブ(TOLOGY_CLOSED, トポロジーが閉じたログサブスクライブ.新着情報(options))
end

インスタンス属性の詳細

#オプション=オブジェクト(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

以来

  • 2.1.0



240
241
242
# ファイル 'lib/mongo/monitoring.rb', 行 240

デフォルト options
  @options
end

クラスメソッドの詳細

next_operation_id =整数

イベントをまとめるための一意の操作 ID を生成するために使用されます。

例:

次の操作 ID を取得します。

Monitoring.next_operation_id

次の値を返します。

  • (整数)

    次の操作 ID。

以来

  • 2.1.0



77
78
79
# ファイル 'lib/mongo/monitoring.rb', 行 77

デフォルト 自己.next_operation_id
  next_id
end

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

失敗しました(トピック、イベント)=オブジェクト

失敗したイベントを公開します。

このメソッドは、 コマンド イベントや ハートビート イベントなど、開始/成功/失敗したイベントを含むイベントタイプに使用されます。

例:

失敗したイベントを公開します。

monitoring.failed(COMMAND, event)

パラメーター:

  • topic ( string )

    イベントのトピック。

  • イベント イベント

    公開するイベント。

以来

  • 2.1.0



304
305
306
# ファイル 'lib/mongo/monitoring.rb', 行 304

デフォルト 失敗(topic, イベント)
  providers_for(topic). { |サブスクライブ| サブスクライブ.失敗(イベント) }
end

#monitoring?Boolean

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

次の値を返します。

  • ブール値

以来

  • 2.1.0



243
244
245
# ファイル 'lib/mongo/monitoring.rb', 行 243

デフォルト 監視
  options[:monitoring] != false
end

#公開_ハートビート(サーバー、待機:false) =================================

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

以来

  • 2.1.0



309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
# ファイル 'lib/mongo/monitoring.rb', 行 309

デフォルト 公開ハートビート(サーバー, 次の操作を待機しました。 false)
  場合 監視
    start_event = イベント::Server heartbeatStarted.新着情報(
      サーバー.address, 次の操作を待機しました。 待機しました
    )
    開始(SERVER_HEARTBエンジン, start_event)
  end

  # ハートビートの成功/失敗したイベントで公開する期間は
  ハートビート全体に費やされた時間。 これには時間が含まれる可能性があります
  時間だけでなくソケットを接続するための#(TLS ハンドシェイクを含む)
  hello 呼び出し自体に費やされた#。
  https://github.com/mongodb/specions/lob/ Master/source/server-discovery-and-monitoring/server-discovery-and-monitoring-logging-and-monitoring.md の仕様
  # では、ここで公開されている期間が「送信」から開始される必要があります。
  # メッセージ」(hello)。 この要件は次の場合には意味がありません。
  #たとえば、サーバーに接続することはできませんでした
  # のため、hello は送信されませんでした。
  start_time = Utils.MongoDB_time

  begin
    結果 = ノードの数
  ヘルプ 標準エラー => e
    場合 監視
      イベント = イベント::ServerハートビートFailed.新着情報(
        サーバー.address,
        Utils.MongoDB_time - start_time,
        e,
        次の操作を待機しました。 待機しました,
        start_event: start_event
      )
      失敗(SERVER_HEARTBエンジン, イベント)
    end
    発生
  else
    場合 監視
      イベント = イベント::ServerハートビートSucceeded.新着情報(
        サーバー.address,
        Utils.MongoDB_time - start_time,
        次の操作を待機しました。 待機しました,
        start_event: start_event
      )
      成功(SERVER_HEARTBエンジン, イベント)
    end
    結果
  end
end

公開順(トピック、イベント)=オブジェクト

イベントを公開します。

このメソッドは、イベントが 1 つしかないイベントタイプに使用されます。

パラメーター:

  • topic ( string )

    イベントのトピック。

  • イベント イベント

    公開するイベント。

以来

  • 2.9.0



256
257
258
# ファイル 'lib/mongo/monitoring.rb', 行 256

デフォルト 公開(topic, イベント)
  providers_for(topic). { |サブスクライブ| サブスクライブ.公開(イベント) }
end

#開始(トピック、イベント)=オブジェクト

開始されたイベントを公開します。

このメソッドは、 コマンド イベントや ハートビート イベントなど、開始/成功/失敗したイベントを含むイベントタイプに使用されます。

例:

開始されたイベントを公開します。

monitoring.started(COMMAND, event)

パラメーター:

  • topic ( string )

    イベントのトピック。

  • イベント イベント

    公開するイベント。

以来

  • 2.1.0



272
273
274
# ファイル 'lib/mongo/monitoring.rb', 行 272

デフォルト 開始(topic, イベント)
  providers_for(topic). { |サブスクライブ| サブスクライブ.開始(イベント) }
end

成功しました(トピック、イベント)=オブジェクト

成功したイベントを公開します。

このメソッドは、 コマンド イベントや ハートビート イベントなど、開始/成功/失敗したイベントを含むイベントタイプに使用されます。

例:

成功したイベントを公開します。

monitoring.succeeded(COMMAND, event)

パラメーター:

  • topic ( string )

    イベントのトピック。

  • イベント イベント

    公開するイベント。

以来

  • 2.1.0



288
289
290
# ファイル 'lib/mongo/monitoring.rb', 行 288

デフォルト 成功(topic, イベント)
  providers_for(topic). { |サブスクライブ| サブスクライブ.成功(イベント) }
end