再度のご質問失礼します
windowsで構築しています
差分クロールを早くしたく、1回目はファイルクロール、2回目以降は、更新があったファイルだけをCSVにパスを書き出し、データストアクロールで更新できないか検討しています
ファイルクロールは問題なくできましたが、データストアのクロールがわからずご教授ください
環境
fess14.6.1
open search 2.4.1
プラグイン
fess-ds-csv 14.6
更新パスが書かれたCSV
e:¥csv¥aaa.csv
modify,file://(サーバー上の更新対象のファイルパス)
データストアのクロール設定
ハンドラー名 CsvListDataStore
パラメータ
directories=e:/csv
fileEncoding=UTF-8
スクリプト
event_type=cell1
url=cell2
ログにはfail to access …(Csvに記載したパス)とエラーが出ておりました
エンコードしたパスでも同じでした。
エクスプローラでアクセスするとアクセスできるのですが、、
また、何故かe:¥csv¥aaa.csvのaaa.csvが毎回消されてしまいます
何か検討違いなことをしておりますでしょうか?
ログにはfail to access …(Csvに記載したパス)とエラーが出ておりました
Fessからアクセスできないのだと思います。権限等を見直すのが良いと思います。
CsvListDataStoreに渡されるCSVファイルはクロール後には削除されます。CsvListDataStoreの使用方法として、NASなどからファイル更新ログを吐き出して、それを読んでクロールするので、クロールが完了するとそのCSVファイルは不要になるためです。
ご返信ありがとうございます
ネットの情報を参考にパラメータを追加してみましたが同じでした。試しにアクセスしたいファイル、フォルダの権限をeveryoneにしてみましたが同じエラーでした
パラメータ
directories=e:/csv
fileEncoding=UTF-8
crawler.file.auth=(サーバーのホスト名)
crawler.file. auth.(サーバーのホスト名).scheme=SAMBA
crawler.file. auth.(サーバーのホスト名).username=ドメイン¥ユーザー名
crawler.file. auth.(サーバーのホスト名).password=上記ユーザのパスワード
他に確認する箇所はありますでしょか?
断片的なログしかないのでなんとも言えませんが、対象のログとそのスタックトレースはどうなっているのでしょうか?
解決しました
file:////10.71…のように
file:の後のスラッシュが足りなかったようです
もう一点だけお聞きしたいです
modifyとしてインデックスを更新すると古いインデックスも残ってしまいますがこれは仕方がないのでしょうか?
→ファイルの中身を更新した後にmodifyでインデックスを更新。ただ、ファイル名で検索すると、更新前のファイルと更新後のファイルの二つがヒットする
ファイルの中身を変更しただけだと、上書きでの更新になると思うので2つ存在することはないと思います。
ご返信ありがとうございます
色々確認してたところ、最初にファイルクロールしたパーミッションと、データストアのクロールのパーミッションが違うと更新というより、新規にインデックスが作成されているようでした
改めて両方のパーミッションをあわせることで上手く動作しました
ありがとうございました