修復スクリプト
修復スクリプトは、修復スクリプト構成で指定したマシンで実行されます。アクションをトリガーした違反の影響を受けたマシンから、または中央管理サーバから、スクリプトを実行できます。スクリプトが実行されるマシンでアプリケーション エージェントを実行する必要はありません。マシンエージェントのみを実行すればすみます。
修復スクリプトのガイドライン
デフォルトでは、スクリプトは /bin/sh で -ex オプションで呼び出されるシェルスクリプトです。ただし、スクリプトにヘッダーがある場合を除いて、ヘッダーのインタプリタが使用されます。たとえば、スクリプトヘッダーが「#!/bin/perl」の場合、Perl インタプリタが呼び出されます。
プロセス終了コード0は、スクリプトの実行が成功したことを表します。0以外の終了コードは、失敗したことを表します。
スクリプトは、呼び出されたどのノードでも実行できるように、できるだけ汎用的に記述する必要があります。Splunk AppDynamics は、次の環境変数をスクリプトランタイムにエクスポートして、環境とアクションをトリガーしたイベントに関するコンテキストを提供します。
| 環境変数 | カーディナリティ(1 または N) | 備考 |
|---|---|---|
|
APP_ID |
1 |
アプリケーションのアイデンティティ。 |
|
APP_NAME |
1 |
アプリケーションの名前。 |
|
EVENT_TIME |
1 |
イベントのタイムスタンプ。 |
|
EVENT_ID |
1 |
イベントのアイデンティティ。 |
|
EVENT_TYPE |
1 |
type of event, such as: 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
マシンエージェントログからのスニペットには、 というローカルスクリプトを実行したことによるエラーメッセージと成功メッセージの両方が表示されています。