スクリプト(hulft_generic_ark.pl)の仕様を以下に記載いたします。Genericリソース作成時に、本スクリプトをrestore、remove、quickCheck、recoverに登録頂くことでそれぞれの動作で起動します。
説明の各所で実行コマンドラインや関連ファイル名 / パスを例示します。
具体的には実際のスクリプトを参照して下さい。
起動処理(restore)
以下の手順でHULFTリソースの起動を試みます。
- コマンドラインオプションから自リソースのタグ名を取得します。
- 自リソースのタグ名からHULFTのサービス名を取得します。 失敗したら以降の処理は行わず exit 0 で処理を終了します。 ※以下、特に明記していない限り、「~を取得します。」で失敗した際は、exit 1 で処理を異常終了します。
- リソース作成時に配置されたスクリプトのフルパスに /!restore/または/!recover/が含まれることで、restore、recoverモードで動作します。 ※restoreとrecoverでは同じ動作を行います。
- HULFTサービスの状態を確認します。 既に起動されている場合は、処理を終了します。
- HULFTサービスの起動処理を実施します。 起動に失敗した場合は、処理を異常終了します。 utlsvcctl.exe -c start
- HULFTサービスの状態を確認します。 起動されていない場合は、異常終了します。
- 設定ファイルを読み込み、HULFTが使用するrcvport, obsport, sddport, srvcprocport, schport のPort番号を取得します。 設定ファイルが読み込めない場合、異常終了します。
- 取得したPortに接続できることを確認します。Portが設定されていない場合確認しません。
Portが確認できない場合異常終了します。 utlalivecheck.exe -p $port -w 10 - 正常終了します。
停止処理(remove)
以下の手順でHULFTリソースの停止を試みます。
※LKHULFT_FORCE_REMOVEパラメーターに応じて異常終了を強制的に正常終了にします。詳しくは後述の Generic ARK for HULFTのパラメーター一覧 をご参照ください。
- コマンドラインオプションから自リソースのタグ名を取得します。
- 自リソースのタグ名からHULFTのサービス名を取得します。 失敗したら以降の処理は行わず exit 0 で処理を終了します。 ※以下、特に明記していない限り、「~を取得します。」で失敗した際は、exit 1 で処理を異常終了します。
- リソース作成時に配置されたスクリプトのフルパスに /!remove/が含まれることで、removeモードで動作します。
- HULFTサービスのスタートアップの種類を確認します。
スタートアップの種類が手動でない場合、手動に変更します。 sc qc $service_name | findstr START_TYPE | findstr DEMAND_START sc config $service_name start=demand - HULFTサービスの状態を確認します。 既に停止されている場合は、処理を終了します。
- HULFTサービスの停止処理を実施します。 停止に失敗した場合は、処理を異常終了します。 utlsvcctl.exe -c stop
- HULFTサービスの状態を確認します。 停止されていない場合は、異常終了します。
- 正常終了します。
監視処理(quickCheck)
以下の内容で監視を実行します。
- 起動処理(restore)の(6)~(9)と同様の処理を実施しHULFTリソースの監視を行います。詳細は「起動処理(restore)」を参照して下さい。
回復処理(recover)
HULFTリソースの停止処理を実行後に起動処理を実行し、HULFTリソースの回復を行います。
- 停止処理(remove)と同様の処理を実施した後、起動処理(restore)と同様の処理を実施します。詳細は「起動処理(restore)」と「停止処理(remove)」を参照して下さい。



このトピックへフィードバック