スクリプト(hulft_generic_ark.pl)の仕様を以下に記載いたします。Genericリソース作成時に、本スクリプトをrestore、remove、quickCheck、recoverに登録頂くことでそれぞれの動作で起動します。

説明の各所で実行コマンドラインや関連ファイル名 / パスを例示します。
具体的には実際のスクリプトを参照して下さい。

起動処理(restore)

以下の手順でHULFTリソースの起動を試みます。

  1. コマンドラインオプションから自リソースのタグ名を取得します。
  2. 自リソースのタグ名からHULFTのサービス名を取得します。 失敗したら以降の処理は行わず exit 0 で処理を終了します。 ※以下、特に明記していない限り、「~を取得します。」で失敗した際は、exit 1 で処理を異常終了します。
  3. リソース作成時に配置されたスクリプトのフルパスに /!restore/または/!recover/が含まれることで、restore、recoverモードで動作します。 ※restoreとrecoverでは同じ動作を行います。
  4. HULFTサービスの状態を確認します。 既に起動されている場合は、処理を終了します。
  5. HULFTサービスの起動処理を実施します。 起動に失敗した場合は、処理を異常終了します。 utlsvcctl.exe -c start
  6. HULFTサービスの状態を確認します。 起動されていない場合は、異常終了します。
  7. 設定ファイルを読み込み、HULFTが使用するrcvport, obsport, sddport, srvcprocport, schport のPort番号を取得します。 設定ファイルが読み込めない場合、異常終了します。
  8. 取得したPortに接続できることを確認します。Portが設定されていない場合確認しません。
    Portが確認できない場合異常終了します。 utlalivecheck.exe -p $port -w 10
  9. 正常終了します。

停止処理(remove)

以下の手順でHULFTリソースの停止を試みます。
※LKHULFT_FORCE_REMOVEパラメーターに応じて異常終了を強制的に正常終了にします。詳しくは後述の Generic ARK for HULFTのパラメーター一覧 をご参照ください。

  1. コマンドラインオプションから自リソースのタグ名を取得します。
  2. 自リソースのタグ名からHULFTのサービス名を取得します。 失敗したら以降の処理は行わず exit 0 で処理を終了します。 ※以下、特に明記していない限り、「~を取得します。」で失敗した際は、exit 1 で処理を異常終了します。
  3. リソース作成時に配置されたスクリプトのフルパスに /!remove/が含まれることで、removeモードで動作します。
  4. HULFTサービスのスタートアップの種類を確認します。
       スタートアップの種類が手動でない場合、手動に変更します。   sc qc $service_name | findstr START_TYPE | findstr DEMAND_START sc config $service_name start=demand
  5. HULFTサービスの状態を確認します。 既に停止されている場合は、処理を終了します。
  6. HULFTサービスの停止処理を実施します。 停止に失敗した場合は、処理を異常終了します。 utlsvcctl.exe -c stop
  7. HULFTサービスの状態を確認します。  停止されていない場合は、異常終了します。
  8. 正常終了します。

監視処理(quickCheck)

以下の内容で監視を実行します。

  1. 起動処理(restore)の(6)~(9)と同様の処理を実施しHULFTリソースの監視を行います。詳細は「起動処理(restore)」を参照して下さい。

回復処理(recover)

HULFTリソースの停止処理を実行後に起動処理を実行し、HULFTリソースの回復を行います。

  1. 停止処理(remove)と同様の処理を実施した後、起動処理(restore)と同様の処理を実施します。詳細は「起動処理(restore)」と「停止処理(remove)」を参照して下さい。

フィードバック

お役に立ちましたか?

はい いいえ
お役に立ちましたか
理由をお聞かせください
フィードバックありがとうございました

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

送信