---
schema_version: "1"
id: 8894ceb963e8d0d88510938068bc2489b97c74e2b0f53123943ef90dfa3822c9
title: スタック追跡の設定
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/mule-runtime/4.9/configuring-mule-stacktraces.md
canonical_url: https://docs.mulesoft.com/jp/mule-runtime/4.9/configuring-mule-stacktraces
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 103bd5bf7515dd9dbf472af781221befb8cc0dab5376f46a6a7e239848c4ec2a
description: MuleSoft Documentation Site
release: "4.9"
latest: false
---
# スタック追跡の設定

デフォルトでは、一部のスタック追跡は Mule に表示されません。Mule にスタック追跡が表示さている場合でも、わかりやすい出力を生成するために一部の内部クラスの参照が除外されています。

Mule スタック追跡の動作は、次の 2 つの方法で制御できます。

- コマンドライン引数を使用する
- Anypoint Studio でプロパティを設定する

## [](#コマンドライン引数を使用する)コマンドライン引数を使用する

次のコマンドライン引数と共に ​`-M-DpropertyName`​ を使用して、スタック追跡の動作を制御します。

- `mule.verbose.exceptions`​ - ​**true**​ に設定すると、絞り込まれたスタック追跡が Mule に表示されます。
- `mule.stacktrace.filter`​ - スタック追跡から削除するパッケージやクラスのカンマ区切りリスト。​`string.startsWith()`​ を使用して照合されます。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>これらの引数は、Mule 開発者および管理者がトラブルシューティング時に使用できます。これらは、エンドユーザーが使用することを想定していません。</p>
</div>
</td>
</tr>
</tbody></table>

## [](#anypoint-studio-でプロパティを設定する)Anypoint Studio でプロパティを設定する

Studio で、上記で指定したプロパティを設定し、スタック追跡の提供や、削除するパッケージまたはクラスの除外を行うように Mule に指示できます。これらの設定を調整する手順は、次のとおりです。

1. **\[Run (実行)\]**​ > ​**\[Run Configurations…​ (設定を実行…​)\]**​ を選択します。
2. プロパティを定義して、目的の動作を指定します。

以下の例では、​`mule.verbose.exceptions`​ プロパティが ​**true**​ に設定されています。

![VM 引数が含まれる設定パネル](/mulesoft/current/ja-jp/mule-runtime/4.9/_images/stack-traces-studio.png)

## [](#スタック追跡とスレッドダンプを取得する)スタック追跡とスレッドダンプを取得する

Mule が停止して、その原因を見つけるために詳細情報が必要な場合、以下の手順に従って Mule をトラブルシューティングします。

1. Mule プロセス ID (​`MULE_PID`​) を識別します。
2. スレッドダンプを取得します。
3. Mule サーバーでメモリ不足エラー ​`java.lang.OutOfMemoryError: Java heap space`​ がスローされた場合、ヒープダンプを取得します。

### [](#mule-プロセス-id-の識別)Mule プロセス ID の識別

Mule プロセス ID を識別するには、Unix/Linux ​`ps`​ コマンドを使用するか、ターミナルから ​`jps`​ コマンドを実行します。​`jps`​ ツールは、Mule を実行するために使用される JDK に付属しています。 たとえば、​`MuleContainerBootstrap`​ や ​`ApplicationDeployer`​ などが含まれる行で Mule プロセスを識別します。

### [](#スレッドダンプの取得)スレッドダンプの取得

最新の JDK で入手できる ​`jstack`​ ツールを使用して、スレッドダンプを取得します。

jstack -l MULE\_PID > filename.tdump

### [](#ヒープダンプの取得)ヒープダンプの取得

Mule サーバーでメモリ不足エラー ​`java.lang.OutOfMemoryError: Java heap space`​ がスローされた場合、ヒープダンプを取得します。

Oracle JVM は、この情報を収集する JVM 修飾子を提供します。この変更を適用したら Mule サーバーを再起動して、メモリ不足エラーをもう一度再現する必要があります。

Mule が使用する JVM にこの修飾子を適用するには、ヒープダンプの作成が自動的にトリガーされるように Mule の ​`/conf/wrapper.conf`​ ファイルで次のパラメーターを設定します。

wrapper.java.additional.<n>=-XX:+HeapDumpOnOutOfMemoryError
wrapper.java.additional.<n+1>=-XX:HeapDumpPath=path/to/dumps

パラメーターを設定する場合、<n> を ​`wrapper.conf`​ の順序の次の数値に変更します。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>デフォルトでは、Mule には ​<code>HeapDumpOnOutOfMemoryError</code>​ プロパティが含まれていますが、ヒープダンプのパスは定義されていません。</p>
</div>
</td>
</tr>
</tbody></table>

ヒープダンプのパスが定義されていない場合、java プロセスが起動したディレクトリにファイルが作成されます。その後、ヒープダンプファイルが ​`java_pid<pid>.hprof.<unique number>`​ として生成されます。