ヘルプ
問題にお困りの際は、以下2つの可能性が考えられます。
- Elasticが修正をお手伝いできる、バグ
- 何らかの操作ミス
どちらの場合でも、Elasticは問題解決をサポートいたします。
ディスカッションフォーラムやElastic Slackコミュニティには多数のユーザーが集っており、快く問題解決に協力してくれます。円滑にサポートを受けるためのヒントを、以下でご紹介します。
Elastic Cloudでサービスを実行している場合はサポートチームにお問い合わせください。
理解しやすく、再現可能
問題をわかりやすく説明できれば、コミュニティのサポートも円滑になります。以下のヒントを参考にしてください。
- 結果が期待していたものと違った場合は、実際には何を求めていたのか説明することで、目的を理解してもらいやすくなります。
- 何らかの手順に従っていた場合は、筆者に関係なく参照先のURLを貼り、手法が正しかったかどうかを検証してもらいましょう。
- 使用しているElastic Stack製品のバージョン、オペレーティングシステム、ブラウザーなどの情報を明記します。
一番の近道は、シンプルでありながらも問題を完全に再現する"再作成用スクリプト"を作成することです。Kibanaの開発ツールを使用している場合は、実行しているAPIリクエストと出力すべてをコピーします。cURL、CLI、JSONまたはYAMLの構成ファイルを使用している場合も同様です。
フォーラムの文字数には制限があるので、長くなる場合は何回かに分けて投稿することをお勧めします。またはGistやPastebinなどを使用して投稿にリンクし、詳細がわかるようにしてください。
APIリクエスト、APIレスポンス、構成ファイルなどテキスト出力のスクリーンショットを投稿するのは避けてください。内容を読んで再現するのが難しく、検索も不可能で、どのユーザーの目にも留まるとは限りません。
再現性を高く、質問は明瞭に。こうすれば、コミュニティのメンバーも力を貸しやすくなること請け合いです。
再作成とは?
Kibanaには[開発ツール]メニューから使用できる"コンソール"というツールがあり、Elasticsearchにリクエストを送信する際に便利です。たとえば、以下のように送信するだけで必要な情報を表示できます。
GET /
このコマンドで、以下のような出力が返されます。
{
"name": "instance-0000000003",
"cluster_name": "b72dca58dc9c4814ab9c68aedee87639",
"cluster_uuid": "3oq0ZLnWTYqunndjR07okQ",
"version": {
"number": "8.8.1",
"build_flavor": "default",
"build_type": "docker",
"build_hash": "f8edfccba429b6477927a7c1ce1bc6729521305e",
"build_date": "2023-06-05T21:32:25.188464208Z",
"build_snapshot": false,
"lucene_version": "9.6.0",
"minimum_wire_compatibility_version": "7.17.0",
"minimum_index_compatibility_version": "7.0.0"
},
"tagline": "You Know, for Search"
}
完全な再作成用スクリプトとは、Kibanaコンソールにコピー&ペーストして実行すれば誰もが問題を再現できるものです。問題を理解して再現することがスムーズになり、回答を迅速に得られます。
再作成用スクリプトを作成するには?
Kibanaの[開発ツール]メニューからコンソールを開き、現在発生している問題を非常に簡潔な例で再現します。フィールドを網羅して完全なユースケースを再作成する必要はありません。実際の問題にフォーカスしてください。
コミュニティのメンバーがKibanaコンソールにペーストして実行しやすいのは、たとえば以下のようなスクリプトです。
DELETE index
POST index/_doc
{
"foo": "bar"
}
GET index/_search
{
"query": {
"match": {
"foo": "bar"
}
}
}
スクリプトと結果をディスカッションにコピー&ペーストしたら、本来期待していた内容を説明してください。
その際のヒントは以下のとおりです。
- 再作成用スクリプトにはマッピングを含めると常に便利です。
- Elasticsearchで使用している設定や、必要なプラグイン(あれば)の一覧を添えると、再現性がさらに高まります。
- JSONの出力について、実際の結果と本来求めていた結果を明記すると問題の理解を助けます。KibanaコンソールではなくcURLを使用している場合は、JSONの出力が読みやすくなるようリクエストに?pretty=trueを追加するようにしてください。
問題の診断に便利なAPI
Kibanaの[開発ツール]メニューからコンソールを開き、現在発生している問題を非常に簡潔な例で再現します。フィールドを網羅して完全なユースケースを再作成する必要はありません。実際の問題にフォーカスしてください。
コミュニティのメンバーがKibanaコンソールにペーストして実行しやすいのは、たとえば以下のようなスクリプトです。
GET / | クラスター情報 |
GET /_cat/health?v | 完全形式でのクラスターのヘルス |
GET /_cat/nodes?v | 完全形式でのクラスターのノード |
GET /_cat/indices?v | 完全形式でのクラスターのインデックス |
GET /_cat/shards?v | 完全形式でのクラスターのシャード |
GET /INDEX/_settings | インデックスの設定を取得 |
GET /INDEX/_mapping | インデックスのマッピングを取得 |
ヘルプトピック一覧
ヒント
問題を再現する際は、スタックの最新バージョンを常に使用するようにしてください。後から問題が解決されている可能性があるためです。
忍耐ある行動
回答を得ることを急がず、忍耐ある行動をお願いします。何度も返答を催促したり、同じ質問に対して複数のトピックを立てたりすることはお控えください。これはコミュニティフォーラムであり、回答をもらうのに時間がかかることがあります。詳細はコミュニティ行動規範の「忍耐ある行動」セクションをご覧ください。
まだトピックに参加していないメンバーに直接回答を催促するのはご遠慮ください。これはフォーラムであり、問題解決をサポートできる可能性を参加者全員が有しています。また、得られた回答を公開すれば、今後同じ問題に遭遇するかもしれないユーザーの大いなる助けとなります。
質問への応答時間が保証されるSLAのサービスをお求めの場合、サブスクリプションについてお問い合わせください。
回答が返ってこない場合は、2-3日後(週末を含まない)に自分でスレッドに回答することもできます。