Elasticsearch: 登録済みドメイン プロセッサ - 登録済みドメイン プロセッサ

完全修飾ドメイン名 (FQDN) から登録済みのドメイン (有効なトップレベル ドメインまたは eTLD とも呼ばれます)、サブドメイン、およびトップレベル ドメインを抽出します。Mozilla Public Suffix Listで定義されている登録済みドメインを使用します。

次のオプションがあります。

名前 しなければならない デフォルト 説明
分野 はい ソース FQDN を含むフィールド。
ターゲットフィールド いいえ <空の文字列> 抽出されたドメインコンポーネントを含むオブジェクトフィールド。<空の文字列> の場合、プロセッサはコンポーネントをドキュメントのルートに追加します。
無視する_欠落 いいえ 真実 true で必須フィールドが欠落している場合、プロセッサはドキュメントを変更せずに静かに終了します。
説明 いいえ - プロセッサーの説明。プロセッサーまたはその構成を説明する目的に役立ちます。
もしも いいえ - 条件付きでハンドラーを実行します。「プロセッサの条件付き実行」を参照してください
無視_失敗 いいえ 間違い プロセッサの障害を無視します。「パイプライン障害の処理」を参照してください
失敗時 いいえ - プロセッサーの障害を処理します。「パイプライン障害の処理」を参照してください
鬼ごっこ いいえ - プロセッサの識別子。デバッグとメトリクスに役立ちます。

次の例は、登録されたドメイン ハンドラーの使用を示しています。

POST _ingest/pipeline/_simulate
{
  "pipeline": {
    "processors": [
      {
        "registered_domain": {
          "field": "fqdn",
          "target_field": "url"
        }
      }
    ]
  },
  "docs": [
    {
      "_source": {
        "fqdn": "www.example.ac.uk"
      }
    }
  ]
}

上記のコマンドは次を返します。

{
  "docs": [
    {
      "doc": {
        "_index": "_index",
        "_id": "_id",
        "_version": "-3",
        "_source": {
          "fqdn": "www.example.ac.uk",
          "url": {
            "registered_domain": "example.ac.uk",
            "top_level_domain": "ac.uk",
            "domain": "www.example.ac.uk",
            "subdomain": "www"
          }
        },
        "_ingest": {
          "timestamp": "2023-07-05T01:27:04.720322Z"
        }
      }
    }
  ]
}

www.elastic.co の状況をもう一度テストしてみましょう。

POST _ingest/pipeline/_simulate
{
  "pipeline": {
    "processors": [
      {
        "registered_domain": {
          "field": "fqdn",
          "target_field": "url"
        }
      }
    ]
  },
  "docs": [
    {
      "_source": {
        "fqdn": "www.elastic.co"
      }
    }
  ]
}

上記で返された結果は次のとおりです。

{
  "docs": [
    {
      "doc": {
        "_index": "_index",
        "_id": "_id",
        "_version": "-3",
        "_source": {
          "fqdn": "www.elastic.co",
          "url": {
            "registered_domain": "elastic.co",
            "top_level_domain": "co",
            "domain": "www.elastic.co",
            "subdomain": "www"
          }
        },
        "_ingest": {
          "timestamp": "2023-07-05T01:28:21.550629Z"
        }
      }
    }
  ]
}

おすすめ

転載: blog.csdn.net/UbuntuTouch/article/details/131548275