クラス: Mongo::Error::Parser Private
- 継承:
-
オブジェクト
- オブジェクト
- Mongo::Error::Parser
- 次のことが含まれます。
- SdumpErrorDeleted
- 定義:
- build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb
Overview
このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。
MongoDB コマンドの応答から受信する可能性のあるさまざまな形式でエラーを解析するためのクラスです。
エラーは、サーバーによってさまざまな方法で報告されます。
-
OK: 0応答は失敗を示します。 新しいサーバーでは、code、codeName、および ermsg フィールドを設定する必要があります。 古いサーバーでは、一部の が設定されていない場合があります。
-
OK: 書込み保証 (write concern) エラー(writeConcernError 最上位フィールド)を含む1の応答。 これは、応答するノードによってリクエストが正常に実行されたが、書込み保証 (write concern) を満たすために十分な他のノードがリクエストを正常に実行しなかったことを示しています。
-
k: 1応答と writeErrors 最上位フィールド これは、一括書き込みで取得できますが、非一括書き込みでも取得できます。 非一括書き込みでは、writeErrors リスト内のエラーは 1 つだけ表示される必要があります。 複数のエラーが発生した場合は BulkWrite::Result によって処理されます。
-
k: 1応答と writeConcernErrors 最上位フィールド これは一括書き込みでのみ取得でき、このクラスではなく BulkWrite::Result によって処理されます。
writeErrors には CodeName フィールドがないことに注意してください。コードとメッセージのみを提供するためです。 writeConcernErrors も同様に、コード名を提供しない場合があります。
定数の概要
Sdu Managerに含まれる定数
SdumError Processing::NOD_RECOVERING_CODES 、 SされたError検出::NODE_SHUTTING_DNS_CODES 、 SされたErrorDeleted::NOT_MASTER_CODES
インスタンス属性の概要を折りたたむ
-
#code ⇒ Integer
readOnly
private
ドキュメントから解析されたエラー コード。
-
#code_name ~ string
readOnly
private
ドキュメントから解析されたエラー コード名。
-
#document ⇒ BSON::Document
readOnly
private
返されたドキュメント。
-
# ラベル =<String> 配列=string=========================
readOnly
private
エラーに関連付けられたラベルのセット。
-
#メッセージ= string
readOnly
private
発生した例外で使用する完全なエラーメッセージ。
-
#replies ⇒ Array<Protocol::Message>
readOnly
private
メッセージが応答します。
-
# server_message = string
readOnly
private
応答から解析されたサーバーが返すエラー メッセージ。
- #wtimeout =オブジェクト readOnly private
クラスメソッドの概要を折りたたむ
インスタンス メソッドの概要を折りたたむ
-
#初期化(ドキュメント、応答 = nil、オプション = nil) = nil) = パーサー
コンストラクター
private
返されたドキュメントを使用して新しいパーサーを作成します。
-
#write_concern_error = true | false
ドキュメントに書込み保証 (write concern) エラーが含まれているかどうか。
-
#write_concern_error_code =整数 | nil
書込み保証 (write concern) エラーが存在し、 コードがある場合の書込み保証 (write concern) エラーのエラー コード。
-
#write_concern_error_code_name = string | nil
書込み保証 (write concern) エラーが存在し、コード名がある場合の、書込み保証 (write concern) エラーのコード名。
-
#write_concern_error_document =ハッシュ | nil
サーバーによって報告された書込み保証 (write concern) エラーのドキュメント(存在する場合)を返します。
-
#write_concern_error_levels = 配列=string==========================================<String> nil
private
書込み保証 (write concern) エラーが発生している場合
Sされたエラーの検出に含まれるメソッド
#node_reactive? 、 #node_shupping_down 、 #not_ Master か。
コンストラクターの詳細
#初期化(ドキュメント、応答 = nil、オプション = nil) = nil) =パーサー
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
返されたドキュメントを使用して新しいパーサーを作成します。
レガシーモードでは、ドキュメントのコードフィールドとcodeNameフィールドは検査されません。ステータス(ok: 1 )はドキュメントの一部ではなく、ドキュメント自体を使用して成功した応答と失敗した応答を区別する方法がないため、成功した応答には、ユーザーが挿入したドキュメントの内容として {code: 123 、codeName: 'foo' } が含まれている可能性があります。 レガシー サーバー バージョンでは、コードもcodeName も入力されていないため、読み取られない場合には情報が失われることはありません。
122 123 124 125 126 127 128 129 130 131 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行122 デフォルト 初期化(ドキュメント, 応答 = nil, = nil) @document = ドキュメント || {} @reprise = 応答 @options = 場合 .dup else {} end.freeze parse! end |
インスタンス属性の詳細
コード~整数(読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドキュメントから解析されたエラー コードを返します。
88 89 90 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行88 デフォルト コード @code end |
#code_name = string (読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドキュメントから解析されたエラー コード名を返します。
92 93 94 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行92 デフォルト Code_name @code_name end |
#ドキュメント= BSON::Document (読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
返されたドキュメントを返します。
73 74 75 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行73 デフォルト ドキュメント @document end |
# ラベル = 配列=string <String>=(読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
エラーに関連付けられたラベルのセットを返します。
96 97 98 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行96 デフォルト labels @ labels end |
#メッセージ= string (読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
発生した例外で使用する完全なエラーメッセージを返します。
77 78 79 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行77 デフォルト @message end |
#replies ⇒ Array<Protocol::Message> (readonly)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
メッセージが応答します。
84 85 86 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行84 デフォルト 応答 @reprise end |
# server_message = string (読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
応答から解析されたサーバーによって返されたエラー メッセージを返します。
81 82 83 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行81 デフォルト @server_message end |
# wtimeout =オブジェクト(読み取り専用)
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
99 100 101 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行99 デフォルト wtimeout @wtimeout end |
クラスメソッドの詳細
。 build_message (コード: nil、code_name: nil、message: nil) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
177 178 179 180 181 182 183 184 185 186 187 188 189 190 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行177 デフォルト (コード: nil, Code_name: nil, メッセージ: nil) 場合 Code_name & & コード " [ #{ code } : #{ code_name } ]: #{ } " elsif Code_name # コード名がある場合は、これは絶対に発生しないはずです # コードも提供する必要があります。 # 完全性を高めるために、このケースを処理します。 " [ #{ code_name } ]: #{ } " elsif コード " [ #{ code } ]: #{ } " else end end |
インスタンス メソッドの詳細
#write_concern_error = true | false
ドキュメントに書込み保証 (write concern) エラーが含まれているかどうかを返します。 障害には、最上位エラーと書込み保証 (write concern) エラー、または 2 つのいずれかが含まれます。
139 140 141 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行139 デフォルト write_concern_error !!write_concern_error_document end |
#write_concern_error_code =整数 | nil
書込み保証 (write concern) エラーが存在し、コードがある場合、書込み保証 (write concern) エラーのエラー コードを返します。
157 158 159 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行157 デフォルト write_concern_error_code write_concern_error_document & & write_concern_error_document['code'] end |
#write_concern_error_code_name = string | nil
書込み保証 (write concern) エラーが存在し、コード名がある場合、書込み保証 (write concern) エラーのコード名を返します。
166 167 168 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行166 デフォルト write_concern_error_code_name write_concern_error_document & & write_concern_error_document[' codeName '] end |
#write_concern_error_document =ハッシュ | nil
サーバーによって報告された書込み保証 (write concern) エラーのドキュメント(存在する場合)を返します。
148 149 150 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行148 デフォルト write_concern_error_document ドキュメント[' writeConcernError '] end |
#write_concern_error_levels = 配列<String> =string========================================== nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
書込み保証 (write concern) エラーが発生している場合
172 173 174 |
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/error/parser.rb', 行172 デフォルト write_concern_error_ labels write_concern_error_document & & write_concern_error_document['errorLabels'] end |