Splunk Enterprise

splunkdプロセスがサーチ中に、セグメンテーション違反が発生して落ちます。メモリーも十分にあることを確認しました。なぜでしょうか?

nfutatsugi_splu
Splunk Employee
Splunk Employee

Splunk 8.x.xを使用していますが、サーチを実行中にsplunkdプロセスが落ちてしまいました。調査をしてみたところ、下記のことがわかりました。

* サーチプロセスではなく、splunkd自体がセグメンテーション違反(SIGSEGV)で落ちている。
* メモリーも枯渇しておらず、oom-killerが発生したという形跡がmessagesファイルから見られない。
* クラッシュログがSplunkのログディレクトリ配下に生成されていない。
* コマンドが大量にある、長いサーチ文を実行していたようだ。

なぜsplunkdプロセスが急に落ちてしまったのでしょうか?対処する方法はありますか?

Labels (1)
Tags (2)
0 Karma
1 Solution

nfutatsugi_splu
Splunk Employee
Splunk Employee

この現象は実行したサーチ文が、大量のパイプ(|)で構成された、341個以上のコマンドが入ったものを実行した場合に発生します。サーチで許容されるコマンドの数は、OSや環境により多少の差はありますが、サブサーチ内で使用されているものも含め、おおよそ340個までという仕様になっています。

この値はハードコードされており、値の変更を行うことはできません。対処方法として、サーチで使用されるコマンドの数を減らし、上限を超えないようにしてください。

8.1.6と8.2.3ではプロセスが落ちないように、内部でサーチ文のチェックが入り、上限を超過した場合、下記のエラーがサーチ時に表示されるようになります。

The pipeline size for this search exceeds a search command limit : 340

View solution in original post

Tags (1)

nfutatsugi_splu
Splunk Employee
Splunk Employee

この現象は実行したサーチ文が、大量のパイプ(|)で構成された、341個以上のコマンドが入ったものを実行した場合に発生します。サーチで許容されるコマンドの数は、OSや環境により多少の差はありますが、サブサーチ内で使用されているものも含め、おおよそ340個までという仕様になっています。

この値はハードコードされており、値の変更を行うことはできません。対処方法として、サーチで使用されるコマンドの数を減らし、上限を超えないようにしてください。

8.1.6と8.2.3ではプロセスが落ちないように、内部でサーチ文のチェックが入り、上限を超過した場合、下記のエラーがサーチ時に表示されるようになります。

The pipeline size for this search exceeds a search command limit : 340

Tags (1)
Get Updates on the Splunk Community!

Introducing Ingest Actions: Filter, Mask, Route, Repeat

WATCH NOW Ingest Actions (IA) is the best new way to easily filter, mask and route your data in Splunk® ...

Splunk Forwarders and Forced Time Based Load Balancing

Splunk customers use universal forwarders to collect and send data to Splunk. A universal forwarder can send ...

NEW! Log Views in Splunk Observability Dashboards Gives Context From a Single Page

Today, Splunk Observability releases log views, a new feature for users to add their logs data from Splunk Log ...