暗黙的なリクエストハンドラ
Solr には、多くのすぐに使えるリクエストハンドラが付属しています。これらは、使用前に `solrconfig.xml` で構成する必要がないため、暗黙的なリクエストハンドラと呼ばれます。
これらのハンドラには、 *paramsets* と呼ばれる事前に定義されたデフォルトパラメータがあり、必要に応じて変更できます。
使用可能な暗黙的なエンドポイント
以下にリストされているすべてのエンドポイントパスは、Solr のホストとポート(ポートを使用する場合)の後に配置して URL を構築する必要があります。 |
管理ハンドラ
これらのハンドラの多くは、管理 UI 全体で Solr に関する情報を表示するために使用されます。
ファイル |
`${solr.home}/conf/` 内のファイルの内容を返します。このハンドラでは、エンドポイントへのパスにコレクション名を含める必要があります。
|
||||||
ヘルスチェック |
ノードのヘルスを報告します(*SolrCloud モードでのみ使用可能*)
このエンドポイントは、追加のリクエストパラメータも受け入れます。詳細は Javadocs を参照してください。 |
||||||
ロギング |
登録されているロガーの取得と変更を行います。
|
||||||
Luke |
内部 Lucene インデックスを公開します。このハンドラでは、エンドポイントへのパスにコレクション名を含める必要があります。 **ドキュメント**: Luke リクエストハンドラ
|
||||||
MBeans |
登録されているすべての SolrInfoMBeans に関する情報を提供します。このハンドラでは、エンドポイントへのパスにコレクション名を含める必要があります。 **ドキュメント**: MBean リクエストハンドラ
|
||||||
Ping |
ヘルスチェック。このハンドラでは、エンドポイントへのパスにコレクション名を含める必要があります。 **ドキュメント**: Ping
|
||||||
プラグイン |
登録されているすべてのプラグインに関する情報を返します。このハンドラでは、エンドポイントへのパスにコレクション名を含める必要があります。
|
||||||
システムプロパティ |
JRE システムプロパティを返します。
|
||||||
セグメント |
最後のコミット世代の Lucene インデックスセグメントに関する情報を返します。
|
||||||
システム情報 |
サーバーの統計と設定を返します。 **ドキュメント**: システム情報ハンドラ
このエンドポイントは、パスにコレクション名またはコア名を含めることもできます(`solr/<collection>/admin/system` または `solr/<core>/admin/system`)。これにより、すべてのシステムレベルの情報と、リクエストを処理した特定のコアに関する追加情報が表示されます。 |
||||||
スレッド |
すべての JVM スレッドに関する情報を返します。
|
分析ハンドラ
ドキュメント分析 |
指定されたドキュメントの分析プロセスの詳細を返します。
|
||||||
フィールド分析 |
指定されたフィールド/フィールドタイプに対するインデックス時およびクエリ時の分析結果を返します。このハンドラは、Solrの管理UIの分析画面を制御します。
|
設定用ハンドラ
Config API |
Solrの設定を取得および変更します。 ドキュメント: 設定API
|
||||||
ダンプ |
リクエストの内容をクライアントに返します。
|
||||||
レプリケーション |
SolrCloudの復旧やユーザー管理クラスタのインデックス配信のためにインデックスをレプリケートします。このハンドラは、エンドポイントへのパスにコア名を指定する必要があります。
|
||||||
スキーマ API |
Solrスキーマを取得および変更します。 ドキュメント: スキーマAPI
|
クエリハンドラ
エクスポート |
完全なソート済み結果セットをエクスポートします。 ドキュメント: 結果セットのエクスポート
|
||||||
RealTimeGet |
ドキュメントの最新バージョンを低遅延で取得します。 ドキュメント: リアルタイム取得
|
||||||
グラフトラバーサル |
ドキュメント: グラフ走査
|
||||||
SQL |
SQLクエリをサポートします。 ドキュメント: SQLリクエストハンドラ
|
||||||
ストリーミング式 |
分散ストリーム処理。 ドキュメント: ストリーミングリクエストとレスポンス
|
||||||
ターム |
フィールドのインデックス済みタームと、各タームを含むドキュメント数を返します。 ドキュメント: リクエストハンドラでのタームコンポーネントの使用
|
更新ハンドラ
更新 |
SolrXML、CSV、SolrJSON、またはjavabin形式でフォーマットされたインデックス済みドキュメントを追加、削除、および更新します。 ドキュメント: 更新ハンドラを使用したインデックス作成
|
||||||
CSV更新 |
CSV形式のドキュメントを追加および更新します。 ドキュメント: CSV更新の簡易パス
|
||||||
JSON更新 |
SolrJSON形式のドキュメントを追加、削除、および更新します。 ドキュメント: JSON更新の簡易パス
|
||||||
カスタムJSON更新 |
カスタムJSON形式のドキュメントを追加および更新します。 ドキュメント: カスタムJSONの変換とインデックス作成
|
暗黙的なハンドラパラメータセットの表示方法
設定APIを使用して、暗黙的なリクエストハンドラを含むすべてのリクエストハンドラの設定を確認できます。
レスポンスに展開されたパラメータセットと、パラメータセットのパラメータと組み込みパラメータをマージした有効なパラメータを含めるには、expandParams
リクエストパラメータを使用します。
たとえば、/export
リクエストハンドラの場合、次のようなリクエストを行うことができます。
V1 API
https://127.0.0.1:8983/solr/gettingstarted/config/requestHandler?componentName=/export&expandParams=true
V2 API
https://127.0.0.1:8983/api/collections/gettingstarted/config/requestHandler?componentName=/export&expandParams=true
レスポンスは次のようになります。
{
"config": {
"requestHandler": {
"/export": {
"class": "solr.ExportHandler",
"useParams": "_EXPORT",
"components": ["query"],
"defaults": {
"wt": "json"
},
"invariants": {
"rq": "{!xport}",
"distrib": false
},
"name": "/export",
"_useParamsExpanded_": {
"_EXPORT": "[NOT AVAILABLE]"
},
"_effectiveParams_": {
"distrib": "false",
"omitHeader": "true",
"wt": "json",
"rq": "{!xport}"
}
}
}
}
}
暗黙的なハンドラパラメータセットの編集方法
暗黙的なリクエストハンドラはsolrconfig.xml
には存在しないため、関連付けられたdefault
、invariant
、appends
パラメータの設定は、上記の表にリストされているパラメータセットを使用してリクエストパラメータAPIを介して編集できます。ただし、SearchHandlerコンポーネントを含む他のパラメータは変更できません。暗黙的な設定で指定された不変要素と追加要素は上書きできません。