AgentNowHandler - スコープ指定

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む5読むのに数分
  • AgentNowHandler スクリプトインクルードを使用すると、オンデマンドでチェック定義を実行し、オンデマンド実行とテストチェック実行のステータスをチェックし、オンデマンドで実行されたバックグラウンドチェックを停止することができます。

    この API は、Agent Client Collector Framework (sn_agent) ストアアプリケーションを必要とし、sn_agent 名前空間内で提供されます。詳細については、「 Agent Client Collector」を参照してください。

    REST API ソリューションについては、「 Agent Client Collector API」を参照してください。

    AgentNowHandler:AgentNowHandler()

    AgentNowHandler インスタンスを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし

    次の例は、AgentNowHandler を初期化する方法を示しています。

    var handler = new sn_agent.AgentNowHandler();

    AgentNowHandler - getRequestStatus(文字列 requestId)

    指定された ID の要求のステータスを取得します。

    表 : 2. パラメーター
    名前 タイプ 説明
    requestId 文字列 runCheckForCis() メソッドの呼び出しによって生成されるチェック要求 ID。
    表 : 3. 返される内容
    プロパティ 説明
    オブジェクト 要求のステータスと該当するエラーメッセージ。
    status 要求ステータス。
    可能な値:
    • done - チェックに成功しました。
    • failure – チェックに失敗しました。詳細はエラーメッセージを参照してください。
    • mid_flow – 要求の出力は MID Server によって処理されています。
    • processing – チェックが進行中です。
    • timeout – チェックの処理が runCheckForCis() メソッドで設定された時間制限を超えました。

    データタイプ:文字列

    err_msg エラーメッセージ (存在する場合)。
    可能な値:
    • 関連する CI のエージェントが見つかりません。
    • 指定された ID のバックグラウンドチェック要求はありません。
    • 指定された ID の要求はありません。
    • 指定された ID のテスト結果はありません。
    • 要求タイムアウト。

    データタイプ:文字列

    次の例は、要求のステータスを取得する方法を示しています。

    var handler = new sn_agent.AgentNowHandler();
    var check = {checkDefId: "158279505372b30034b8ddeeff7b1270"};
    var computerGr = new GlideRecord("cmdb_ci_computer");
    computerGr.query();
    var requestId = handler.runCheckForCis(computerGr, check, 0, 60);
    
    var reqStatusJson = handler.getRequestStatus(requestId);
    gs.info(JSON.stringify(reqStatusJson));

    AgentNowHandler - getTestResultStatus(文字列 testResultId)

    指定されたテスト結果のテストチェックステータスを取得します。

    表 : 4. パラメーター
    名前 タイプ 説明
    testResultId 文字列 テストチェック要求の作成によって生成されるテスト結果 ID。
    表 : 5. 返される内容
    プロパティ 説明
    status テスト結果のステータス。
    可能な値:
    • 0:処理待ち
    • 1:処理中
    • 2:完了
    • 3:指定された ID のテスト結果なし

    データタイプ:文字列

    output ステータスを説明する出力。

    データタイプ:文字列

    次の例は、完了したテストチェック要求の結果ステータスを取得する方法を示しています。

    var testCheckStatusJson = handler.getTestResultStatus("testResultId");
    gs.info(JSON.stringify(testCheckStatusJson));

    AgentNowHandler - runCheckForCis(オブジェクト cis, オブジェクト check, 数値 priority, 数値 timeout)

    指定された構成アイテムに対してチェックを実行します。

    表 : 6. パラメーター
    名前 タイプ 説明
    CI GlideRecord チェック対象となる CMDB テーブル (任意のアプリケーション、ホスト、またはエージェント) の GlideRecord。
    check オブジェクト チェック ID とオプションのチェックパラメーターが含まれます。
    {
      "checkDefId": "String",
      "params": Object
    }
    check.checkDefId 文字列 チェック定義 [sn_agent_check_def] テーブルのチェック定義の sys_id。
    check.params オブジェクト オプション。パラメーターの名前と値のマップ。これらの設定を使用して、チェック定義のパラメーターレコードとその指定された値を上書きできます。
    "params": {
      "<parameter name>": "String"
    }
    priority 番号 ECC キューに設定される要求の優先度。
    可能な値:
    • 0:インタラクティブ
    • 1:迅速化済み
    • 2:標準
    timeout 番号 要求のタイムアウト値 (秒)。
    表 : 7. 返される内容
    タイプ 説明
    文字列 生成されたバックグラウンドチェック要求の sys_id。

    次の例は、バックグラウンドチェックを実行してその要求 ID を取得する方法を示しています。

    var handler = new sn_agent.AgentNowHandler();
    var check = {checkDefId: "028fcd5067c80010b7b72dbd2685ef4f"};
    var computerGr = new GlideRecord("cmdb_ci_computer");
    computerGr.query();
    var requestId = handler.runCheckForCis(computerGr, check, 0, 60);
    
    gs.info(requestId);

    出力:

    b9cf14aedb5e30106f4810284b961990

    AgentNowHandler - stopBackgroundCheck(文字列 requestId)

    バックグラウンドチェックを停止します。

    バックグラウンドチェックを開始するには、runCheckForCis() メソッドを使用します。

    表 : 8. パラメーター
    名前 タイプ 説明
    requestId 文字列 runCheckForCis() メソッドの呼び出しによって生成されるバックグラウンドチェック要求の ID。
    表 : 9. 返される内容
    タイプ 説明
    なし

    次の例は、バックグラウンドチェックの実行を停止する方法を示しています。

    handler.stopBackgroundCheck(backRequestId);