問題タブ [searchkick]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2417 参照

java - Elasticsearch ログ ファイルの巨大なサイズのパフォーマンスの低下

私は RoR を使用してアプリケーションと searchkick という gem を開発しています。この gem は内部的に Elasticsearch を使用しています。すべて正常に動作しますが、プロダクションでは、しばらくするとサイトがダウンするという奇妙な問題に直面しました。私たちが発見した理由は、サーバーのメモリが過剰に使用されていたことです。先週のelasticsearchログファイルをいくつか削除したところ、メモリ使用量が92%から47%に減少したことがわかりました。ローリング ログを使用し、ログは毎日バックアップされます。さて、私たちが直面している問題は、前日のログ ファイルが 1 つしかないため、メモリが大きくなることです。ログ ファイルは、現在のファイルが 4 GB を使用していても、多くのスペースを占有しています!!!! どうすればそれを防ぐことができますか?

メッセージはほとんど警告レベルです。

[00:14:11,744][WARN ][cluster.action.shard ] [Abdul Alhazred] [?][0] sending failed shard for [?][0], node[V52W2IH5R3SwhZ0mTFjodg], [P], s[INITIALIZING], indexUUID [4fhSWoV8RbGLj5jo8PVoxQ], reason [Failed to start shard, message [IndexShardGatewayRecoveryException[[?][0] failed recovery]; nested: EngineCreationFailureException[[?][0] failed to create engine]; nested: LockReleaseFailedException[Cannot forcefully unlock a NativeFSLock which is held by another indexer component: /usr/lib64/elasticsearch-1.1.0/data/elasticsearch/nodes/0/indices/?/0/index/write.lock]; ]]

SO questionのいくつかを見て、ulimitを増やすか、新しいノードを作成して、問題も解決し、サイズを縮小しようとしています。私の limits.conf には、ハードとソフトの nofile 用に 65535 があります。また、sysctl.conf で fs.file-max が 100000 を超えています。ファイル サイズを縮小するために実行できる他の手順はありますか。さらに、elasticsearch 構成の変更についての洞察を得ることができません。

誰かが助けることができれば。ありがとう

0 投票する
2 に答える
1855 参照

ruby-on-rails - searchkick - 複数の属性を持つオートコンプリート

hereのように単一の属性で検索すると、オートコンプリートは正常に機能します。

(name,city,country) などの複数の属性を使用したオートコンプリートは、-> ( thisによると)を通じて可能です。

ただし、これにより、オートコンプリートのドロップダウン/提案に「未定義」が表示されます。

タイプアヘッドの場合、私は使用しています:

コードでは、次のように参照されています。

複数のデータセットが返されるため、typeahead js ファイルに何らかの変更が必要ですか?

0 投票する
4 に答える
7160 参照

ruby-on-rails - Searchkick は特定のレコード インデックスを手動で削除します

Searchkick を使用して特定のレコード インデックスを手動で削除する方法。特定のレコードのインデックスを再作成するオプションがありますが、レコード インデックスを削除するオプションが見つかりませんでした。

0 投票する
1 に答える
656 参照

ruby-on-rails - Rails - モデル メソッドを使用した Searchkick の結果のフィルタリング

Rails ecommerce プロジェクトで Searchkick を使用しています。ユーザーは商品リストを検索できます。

特定の商品がサイトに表示されない状況があります (たとえば、在庫 = 0 の場合など)。

searchkick docs に基づいて、コントローラーに検索メソッドを として持っています@listings = Listing.search(params[:search])。これは意図したとおりに機能します。

私のリスティング モデルでは、どのリスティングを表示してもよいかを定義する以下のメソッドがあります。

上記に基づいて、サーチキックメソッドに言ってもらいたいのです@listings = Listing.not_expired.search(params[:search])が、これは機能しません。基準を満たす結果のみを表示するように searchkick に指示するにはどうすればよいですか?

0 投票する
1 に答える
378 参照

ruby-on-rails - searchkick クエリにデフォルトの where 句を常に追加する

各セッションで、すべての searchkick クエリに where 句を追加する必要があるユースケースがあります。これは基本的に、複数の DB に複数のクライアントからのデータがあり、searchkick インデックスに client_id というフィールドが含まれている場合です。

すべてのクエリに対してそれを続けたくありません。このセッションのすべての searchkick クエリに where: {client_id: "XXXX"} を追加する方法はありますか。

0 投票する
1 に答える
31 参照

ruby-on-rails - クエリがヒットしたフィールドを知る

Searchkick による Elasticsearch の使用。

私のドキュメントは次のようになります。

私のアイテムモデル:

検索クエリは次のようになります。

クエリが見つかったフィールドを知りたいです。たとえば、それが見つかったフィールドquery="El club de la lucha"を知りたい場合。detail.estそれは可能ですか?

0 投票する
1 に答える
985 参照

ruby-on-rails - SearchKick を使用したワイルドカード検索

以下で説明するように、単語の後と単語の前にワイルドカードを使用する方法はありますか..

または SearchKick gem を使用してそのような問題を解決するその他のソリューション。

0 投票する
2 に答える
900 参照

ruby-on-rails - searchkick を使用した検索フィルター

Rails アプリで searchkick を使用しています。ユーザーが検索したい名前の文字をフォームに入力すると、params[:query] で取得します。フィールドの名前は (name、login、passwd) です。検索結果が表に返ってきます。このようなもの:

検索は正常に機能し、一致したすべての名前が返されますが、問題は、名前がクエリに一致し、login = login1 などのフィールドのみを取得するにはどうすればよいかということです。

あなたの助けに感謝します。前もって感謝します。