概要
Fess のデータストアコネクタは、Webサイトやファイルシステム以外のデータソースから コンテンツを取得してインデックス化する機能を提供します。
データストアコネクタを使用することで、以下のようなソースからデータを検索可能にできます:
クラウドストレージ(Box、Dropbox、Google Drive、OneDrive)
コラボレーションツール(Confluence、Jira、Slack)
データベース(MySQL、PostgreSQL、Oracle等)
その他のシステム(Git、Salesforce、Elasticsearch等)
利用可能なコネクタ
Fess は多様なデータソースに対応するコネクタを提供しています。 多くのコネクタはプラグインとして提供されており、必要に応じてインストールできます。
クラウドストレージ
| コネクタ | プラグイン | 説明 |
|---|---|---|
| Boxコネクタ | fess-ds-box | Box.comのファイルとフォルダをクロール |
| Dropboxコネクタ | fess-ds-dropbox | Dropboxのファイルとフォルダをクロール |
| Google Workspaceコネクタ | fess-ds-gsuite | Google Drive、Gmailなどをクロール |
| Microsoft 365コネクタ | fess-ds-microsoft365 | OneDrive、SharePointなどをクロール |
コラボレーションツール
| コネクタ | プラグイン | 説明 |
|---|---|---|
| Atlassianコネクタ | fess-ds-atlassian | Confluence、Jiraをクロール |
| Slackコネクタ | fess-ds-slack | Slackのメッセージとファイルをクロール |
開発・運用ツール
| コネクタ | プラグイン | 説明 |
|---|---|---|
| Gitコネクタ | fess-ds-git | Gitリポジトリのソースコードをクロール |
| Elasticsearch/OpenSearchコネクタ | fess-ds-elasticsearch | Elasticsearch/OpenSearchからデータを取得 |
| Salesforceコネクタ | fess-ds-salesforce | Salesforceのオブジェクトをクロール |
データベース・ファイル
| コネクタ | プラグイン | 説明 |
|---|---|---|
| データベースコネクタ | fess-ds-db | JDBC対応データベースからデータを取得 |
| CSVコネクタ | fess-ds-csv | CSVファイルからデータを取得 |
| JSONコネクタ | fess-ds-json | JSONファイルからデータを取得 |
その他
以下のコネクタも利用可能です:
| コネクタ | プラグイン | 説明 |
|---|---|---|
| SharePoint | fess-ds-sharepoint | SharePointリポジトリからデータを取得(レガシー版) |
| Wikipedia | fess-ds-wikipedia | Wikipediaのコンテンツを取得 |
コネクタのインストール
プラグインのインストール
データストアコネクタのプラグインは、管理画面からインストールできます。
管理画面から
管理画面にログイン
「システム」→「プラグイン」に移動
「Available」タブで対象のプラグインを検索
「インストール」をクリック
Fess を再起動
データストア設定の基本
データストアコネクタの設定は、管理画面の「クローラー」→「データストア」で行います。
共通設定項目
すべてのデータストアコネクタに共通する設定項目:
| 項目 | 説明 |
|---|---|
| 名前 | 設定の識別名 |
| 説明 | 設定の説明文 |
| ハンドラ名 | 使用するコネクタのハンドラ名(例: BoxDataStore) |
| パラメーター | コネクタ固有の設定パラメーター(key=value形式) |
| スクリプト | インデックスフィールドのマッピングスクリプト |
| ブースト | 検索結果の優先度 |
| 権限 | このデータストアから取得したドキュメントのアクセス権限 |
| 仮想ホスト | この設定を適用する仮想ホスト |
| 表示順序 | 設定一覧での表示順序 |
| 有効 | この設定を有効にするかどうか |
パラメーター設定
パラメーターは改行区切りの key=value 形式で指定します:
api.key=xxxxxxxxxxxxx
folder.id=0
max.depth=3
スクリプト設定
スクリプトでは、取得したデータを Fess のインデックスフィールドにマッピングします。
以下はCSV/JSONコネクタでの data.* プレフィックスを使用した例です:
url=data.url
title=data.name
content=data.content
mimetype=data.mimetype
filetype=data.filetype
filename=data.filename
created=data.created
lastModified=data.lastModified
contentLength=data.contentLength
注釈
スクリプトで使用するフィールドのプレフィックスはコネクタごとに異なります。 例えば、Box/Dropbox/Google Drive/OneDriveでは file.* 、Slackでは message.* 、 Jiraでは issue.* を使用します。 各コネクタの詳細は個別のドキュメントを参照してください。
認証設定
多くのデータストアコネクタは、OAuth 2.0、APIキー、サービスアカウントなどによる認証が必要です。
認証パラメーターはコネクタごとに異なります。 各コネクタの認証設定については、個別のドキュメントを参照してください。
共通パラメーター
すべてのデータストアコネクタで使用できる共通パラメーター:
| パラメーター | デフォルト | 説明 |
|---|---|---|
readInterval | 0 | 各レコードの処理間の待機時間(ミリ秒)。大量データ処理時にサーバー負荷を軽減するために使用します。 |
トラブルシューティング
コネクタが表示されない
プラグインが正しくインストールされているか確認
Fess を再起動
ログでエラーがないか確認
認証エラー
認証情報が正しいか確認
トークンの有効期限を確認
必要な権限が付与されているか確認
サービス側でAPIアクセスが許可されているか確認
データが取得できない
パラメーターの形式が正しいか確認
対象のフォルダ/ファイルに対するアクセス権を確認
フィルター設定を確認
ログで詳細なエラーメッセージを確認
デバッグ設定
問題を調査する際は、ログレベルを調整します:
app/WEB-INF/classes/log4j2.xml:
<Logger name="org.codelibs.fess.ds" level="DEBUG"/>
参考情報
データストアクロール - データストア設定ガイド
プラグイン - プラグイン管理ガイド
DataConfig API - データストア設定API