URIパーツプロセッサ
Uniform Resource Identifier (URI) 文字列を解析し、そのコンポーネントをオブジェクトとして抽出します。このURIオブジェクトには、URIのドメイン、パス、フラグメント、ポート、クエリ、スキーム、ユーザー情報、ユーザー名、およびパスワードのプロパティが含まれます。
名前 | 必須 | デフォルト | 説明 |
---|---|---|---|
field |
はい | - | URI文字列を含むフィールド。 |
target_field |
いいえ | url |
URIオブジェクトの出力フィールド。 |
keep_original |
いいえ | true | true の場合、プロセッサは未解析のURIを <target_field>.original にコピーします。 |
remove_if_successful |
いいえ | false | true の場合、プロセッサはURI文字列を解析した後に field を削除します。解析に失敗した場合、プロセッサは field を削除しません。 |
ignore_missing |
いいえ | false |
true および field が存在しない場合、プロセッサは静かに終了し、ドキュメントを変更しません。 |
description |
いいえ | - | プロセッサの説明。プロセッサの目的や設定を説明するのに役立ちます。 |
if |
いいえ | - | プロセッサを条件付きで実行します。条件付きでプロセッサを実行するを参照してください。 |
ignore_failure |
いいえ | false |
プロセッサの失敗を無視します。パイプラインの失敗を処理するを参照してください。 |
on_failure |
いいえ | - | プロセッサの失敗を処理します。パイプラインの失敗を処理するを参照してください。 |
tag |
いいえ | - | プロセッサの識別子。デバッグやメトリクスに役立ちます。 |
ここにURIパーツプロセッサの定義の例があります:
Js
{
"description" : "...",
"processors" : [
{
"uri_parts": {
"field": "input_field",
"target_field": "url",
"keep_original": true,
"remove_if_successful": false
}
}
]
}
上記のプロセッサが次のドキュメントで実行されると:
Js
{
"_source": {
"input_field": "http://myusername:[email protected]:80/foo.gif?key1=val1&key2=val2#fragment"
}
}
これにより、次の結果が得られます:
Js
"_source" : {
"input_field" : "http://myusername:[email protected]:80/foo.gif?key1=val1&key2=val2#fragment",
"url" : {
"path" : "/foo.gif",
"fragment" : "fragment",
"extension" : "gif",
"password" : "mypassword",
"original" : "http://myusername:[email protected]:80/foo.gif?key1=val1&key2=val2#fragment",
"scheme" : "http",
"port" : 80,
"user_info" : "myusername:mypassword",
"domain" : "www.example.com",
"query" : "key1=val1&key2=val2",
"username" : "myusername"
}
}