問題
オンプレー・サーバーから、インサイトの検索をすると「検索結果の取得に失敗しました。リロードをしてもう一度お試しください。」と表示され、リロードしても解消されないことがあります。
解決方法
Exploratoryサーバー内部で使用しているデータベースにある索引が十分でない可能性があります。以下のステップに従って、索引を作成してください。
- MongoDBのDockerコンテナIDを確認します。
docker ps
コマンドを実行してコンテナIDの一覧を取得し、その中で、IMAGEが"mongo"で始まっているものを探します。以下の例では、494388a45e11
がコンテナIDになります。
- 以下のコマンドを実行して、コンテナへの接続を行います。 ((Container ID) は実際のコンテナIDに置き換えてください)
docker exec -it (Container ID) bash
- 以下のコマンドを実行して、MongoDBへの接続を行います。
mongo exploratory
- 以下のコマンドを実行して、MongoDBに索引を作成します。
db.notebooks.createIndex({"updatedAt" : -1})
db.notebooks.createIndex({"numlikes" : -1})
db.notebooks.createIndex({"views" : -1})
db.notebooks.createIndex({"downloads" : -1})
db.notebooks.createIndex({"viewStats.last7Days" : -1})
db.notebooks.createIndex({"viewStats.thisWeek" : -1})
db.notebooks.createIndex({"viewStats.lastWeek" : -1})
db.notebooks.createIndex({"viewStats.lastMonth" : -1})
db.notebooks.createIndex({"viewStats.last30Days" : -1})
db.notebooks.createIndex({"viewStats.last365Days" : -1})
db.notebooks.createIndex({"viewStats.thisYear" : -1})
db.notebooks.createIndex({"viewStats.lastYear" : -1})
db.notebooks.createIndex({"viewStats.allTime" : -1})
db.notebooks.createIndex({"viewStats.thisMonth" : -1})