変換プロセッサ

現在取り込まれているドキュメントのフィールドを異なるタイプに変換します。例えば、文字列を整数に変換します。フィールドの値が配列の場合、すべてのメンバーが変換されます。

サポートされているタイプには、integerlongfloatdoublestringbooleanip、および auto が含まれます。

boolean を指定すると、フィールドの文字列値が true と等しい場合は true に設定され、false と等しい場合は false に設定され、それ以外の場合は例外がスローされます(大文字と小文字は無視されます)。

ip を指定すると、ターゲットフィールドは、インデックス可能な有効な IPv4 または IPv6 アドレスを含む場合、field の値に設定されます IP フィールドタイプ

auto を指定すると、文字列値の field を最も近い非文字列、非 IP タイプに変換しようとします。例えば、値が "true" のフィールドは、それぞれのブール型 true に変換されます。auto では float が double より優先されることに注意してください。"242.15" の値は「自動的に」242.15float タイプに変換されます。提供されたフィールドが適切に変換できない場合でも、プロセッサは正常に処理を続け、フィールドの値はそのまま残ります。その場合、target_field は変換されていないフィールドの値で更新されます。


表 9. 変換オプション

名前 必須 デフォルト 説明
field はい - 変換される値を持つフィールド
target_field いいえ field 変換された値を割り当てるフィールド。デフォルトでは field がその場で更新されます
type はい - 既存の値を変換するタイプ
ignore_missing いいえ false truefield が存在しないか null の場合、プロセッサは静かに終了し、ドキュメントを変更しません
description いいえ - プロセッサの説明。プロセッサの目的や設定を説明するのに役立ちます。
if いいえ - 条件付きでプロセッサを実行します。プロセッサを条件付きで実行するを参照してください。
ignore_failure いいえ false プロセッサの失敗を無視します。パイプラインの失敗を処理するを参照してください。
on_failure いいえ - プロセッサの失敗を処理します。パイプラインの失敗を処理するを参照してください。
tag いいえ - プロセッサの識別子。デバッグやメトリクスに役立ちます。

Js

  1. PUT _ingest/pipeline/my-pipeline-id
  2. {
  3. "description": "converts the content of the id field to an integer",
  4. "processors" : [
  5. {
  6. "convert" : {
  7. "field" : "id",
  8. "type": "integer"
  9. }
  10. }
  11. ]
  12. }