修復スクリプト
修復スクリプトは、修復スクリプト構成で指定したマシンで実行されます。アクションをトリガーした違反の影響を受けたマシンから、または中央管理サーバから、スクリプトを実行できます。スクリプトが実行されるマシンでアプリケーション エージェントを実行する必要はありません。マシンエージェントのみを実行すればすみます。
修復スクリプトのガイドライン
デフォルトでは、スクリプトは /bin/sh で -ex オプションで呼び出されるシェルスクリプトです。ただし、スクリプトにヘッダーがある場合を除いて、ヘッダーのインタプリタが使用されます。たとえば、スクリプトヘッダーが「#!/bin/perlperl」の場合、Perl インタプリタが呼び出されます。
プロセス終了コード0は、スクリプトの実行が成功したことを表します。0以外の終了コードは、失敗したことを表します。
スクリプトは、呼び出されたどのノードでも実行できるように、できるだけ汎用的に記述する必要があります。Splunk AppDynamics は、次の環境変数をスクリプトランタイムにエクスポートして、環境とアクションをトリガーしたイベントに関するコンテキストを提供します。
|
APP_ID |
1 |
アプリケーションのアイデンティティ。 |
|
APP_NAME |
1 |
アプリケーションの名前。 |
|
EVENT_TIME |
1 |
イベントのタイムスタンプ。 |
|
EVENT_ID |
1 |
イベントのアイデンティティ。 |
|
EVENT_TYPE |
1 |
イベントのタイプ。例:ERROR、APPLICATION_ERROR、APPLICATION_INFO、STALL、BT_SLA_VIOLATION、DEADLOCK、MEMORY_LEAK、MEMORY_LEAK_DIAGNOSTICS、LOW_HEAP_MEMORY、ALERT、CUSTOM、APP_SERVER_RESTART、BT_SLOW, SYSTEM_LOG、INFO_INSTRUMENTATION_VISIBILITY、AGENT_EVENT、INFO_BT_SNAPSHOT、AGENT_STATUS、SERIES_SLOW、SERIES_ERROR、ACTIVITY_TRACE、OBJECT_CONTENT_SUMMARY 、DIAGNOSTIC_SESSION、HIGH_END_TO_END_LATENCY、APPLICATION_CONFIG_CHANGE、APPLICATION_DEPLOYMENT、AGENT_DIAGNOSTICS、MEMORY、LICENSE |
|
ENV_STARTUP_ARGS |
1 |
[プロセス引数(Process args)] |
|
ENV_SYSTEM_PROPERTIES |
1 |
JVMシステムプロパティ(Java) |
|
AFFECTED_ENTITY |
1 |
イベントのトリガーとなる、正常性ルールの影響を受けるエンティティ |
|
SEVERITY |
1 |
イベントのシビラティ(重大度)レベル。可能な値は以下の通りです:
|
修復スクリプトは、マシンエージェントのインストールのサブディレクトリに保存される必要があります。サブディレクトリは という名前にします。次に示すパスはすべて有効です。
${machine.agent.home}/local-scripts/runMe.sh
${machine.agent.home}/local-scripts/johns_scripts/runMe.sh
${machine.agent.home}/local-scripts/ops/johns_scripts/runMe.sh
修復スクリプトのトラブルシューティング
修復スクリプトのトラブルシューティングを行うには、マシンエージェントログからプロセスを見つけます。ログの場所のパスは次のとおりです。<machine_agent_home> /logs/machine-agent.log
マシンエージェントログからのスニペットには、 というローカルスクリプトを実行したことによるエラーメッセージと成功メッセージの両方が表示されています。