モジュール: Mongo::Utils Private

定義:
lib/mongo/utils.rb

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

名前空間で定義済み

クラス: LocalLogger

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

クラスメソッドの詳細

キャメル化(シンボリック)=オブジェクト

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



72
73
74
ファイル 'lib/mongo/uts.rb', 行 72

MongoDB_function デフォルト キャメル化(sym)
  sym.to_s.gsub(/_(\w)/) { $1.アップケース }
end

expert_backtrate (explain、MongoDB Ops)=experts)=オブジェクト

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

オプション ハッシュ( * Ops ):

  • :bg_error_backtrace true | false | nil | 整数

    試験用。 バックグラウンド スレッドのエラーの完全なバックトレースをログに記録するには、 true に設定します。 バックトレースをログに記録しない場合は、false または nil に設定します。 バックトレース行の数までログするには、正の整数を指定します。



50
51
52
53
54
55
56
57
58
59
ファイル 'lib/mongo/uts.rb', 行 50

MongoDB_function デフォルト exclusive_backtrate(除外, **ops)
  ケース  = ops[:bg_error_backtrace]
  次の場合: 整数
    " :\n #{除外.バックトレース[ 0 ..] . join  " \n "  } "
  次の場合: false, nil
    nil
  else
    " :\n #{除外.バックトレース. join  " \n "  } "
  end
end

.monotonic_timeFloat

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

時間を測定する必要がある場合は、この関数を使用する必要があります。

例:

経過時間を計算します。

starting = Utils.monotonic_time
# do something time consuming
ending = Utils.monotonic_time
puts "It took #{(ending - starting).to_i} seconds"

次の値を返します。

  • 浮動小数

    単調クロックによる秒数

以下も参照してください。



101
102
103
ファイル 'lib/mongo/uts.rb', 行 101

MongoDB_function デフォルト MongoDB_time
  プロセス.クロック_gettime(プロセス::CLOCK_MON反映)
end

slow_camelize_keys (ハッシュ)=オブジェクト

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

指定されたハッシュ内のキーを文字列化し、アンダースコア形式のキーをキャメルケース形式のキーに変換します。



68
69
70
ファイル 'lib/mongo/uts.rb', 行 68

MongoDB_function デフォルト slow_camelize_keys(ハッシュ)
  ハッシュ[ハッシュ.map { |k, v| [キャメル化(k), v] }]
end

slow_symbolize_keys (ハッシュ)=オブジェクト

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

指定されたハッシュ内のキーを記号化します。



62
63
64
ファイル 'lib/mongo/uts.rb', 行 62

MongoDB_function デフォルト slow_symbols_keys(ハッシュ)
  ハッシュ[ハッシュ.map { |k, v| [k.to_sym, v] }]
end

transform_server_api (server_api) =オブジェクト

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

注:

server_api にはシンボルキーが必要か、BSON::Document である必要があります。



77
78
79
80
81
82
83
84
85
86
87
88
89
ファイル 'lib/mongo/uts.rb', 行 77

MongoDB_function デフォルト transform_server_api(server_api)
  {}.タップ 行う |doc|
    場合 バージョン = server_api[:version]
      doc['apiVersion'] = バージョン
    end
    ただし、 server_api[:strict].nil?
      doc[' apiStrict '] = server_api[:strict]
    end
    ただし、 server_api[:deprecation_errors].nil?
      doc['apiDeprecationErrors'] = server_api[:deprecation_errors]
    end
  end
end

警告_bg_例外(msg, 除外, *ops) =オブジェクト

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

オプション ハッシュ( * Ops ):

  • :bg_error_backtrace true | false | nil | 整数

    試験用。 バックグラウンド スレッドのエラーの完全なバックトレースをログに記録するには、 true に設定します。 バックトレースをログに記録しない場合は、false または nil に設定します。 バックトレース行の数までログするには、正の整数を指定します。

  • :logger ロガー

    使用するカスタム ロガー。

  • :log_prefix string

    ロギングのときに使用するカスタム ログ プレフィックス。



40
41
42
43
44
ファイル 'lib/mongo/uts.rb', 行 40

MongoDB_function デフォルト 警告_bg_例外(msg, 除外, **ops)
  bt_expert = exclusive_backtrate(除外, **ops)
  logger = LocalLogger.新着情報(**ops)
  logger.log_警告("#{msg}: #{exc.class}: #{exc}#{bt_excerpt}")
end