すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:操作内容と結果配信機能の使用

最終更新日:Jul 08, 2025

Cloud Assistant が提供する操作内容と結果配信機能を使用すると、タスク実行レコードを Object Storage Service (OSS) または Simple Log Service に配信して永続的に保存できます。 このトピックでは、特定の OSS バケットまたは Simple Log Service Logstore にタスク実行レコードを配信するための配信設定を構成する方法と、配信された実行レコードをクエリする方法について説明します。

背景情報

Cloud Assistant では実行レコードを保持できますが、保持される実行レコードの最大数と保持期間に制限があります。 詳細については、「制限」トピックのCloud Assistant セクションをご参照ください。 多数の実行レコードを保持する場合、または実行レコードを長期間保持する場合は、操作内容と結果配信機能を使用することをお勧めします。 操作内容と結果配信機能を使用すると、実行レコードの配信とクエリ、およびセキュリティ分析、リソース変更追跡、動作コンプライアンス監査などのレコードに対する操作の実行が可能になります。

課金

セッションレコード配信機能は無料です。 ただし、この機能を使用すると、以下の項目に対して課金される場合があります。

  • 配信されたレコードによって占有されるストレージスペースやログインデックストラフィックなど、Simple Log Service の課金対象項目。

    詳細については、「課金概要」をご参照ください。

  • 配信されたレコードによって占有されるスペースストレージ、および OSS のオブジェクト管理機能を使用する際に発生するトラフィックなど、OSS の課金対象項目。

    詳細については、「課金概要」をご参照ください。

ステップ 1: 操作内容と結果配信機能を構成する

  1. ECS コンソール - ECS Cloud Assistant に移動します。

  2. 上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。地域

    説明

    タスク実行レコードはリージョンをまたいで配信することはできません。 複数のリージョンでタスク実行レコードを配信するには、各リージョンの配信設定を構成します。

  3. [ECS クラウドアシスタント] ページの右上隅にある [設定] をクリックします。

  4. [Cloud Assistant Agent の設定] ダイアログボックスで、[コマンド実行設定] タブをクリックして配信設定を構成します。

    • タスク実行レコードを Simple Log Service に配信します。

      1. [Log Service に配信] を選択します。

      2. 既存の Simple Log Service プロジェクトと Logstore を選択します。

        選択したリージョンに Simple Log Service プロジェクトまたは Logstore がない場合は、[Log Service コンソール] または [Logstore] をクリックして、Simple Log Service コンソールでプロジェクトまたは Logstore を作成します。 プロジェクトまたは Logstore を作成したら、ECS コンソールの [Cloud Assistant Agent の設定] ダイアログボックスに戻り、刷新图标 アイコンをクリックして Simple Log Service プロジェクトまたは Logstore の最新リストを取得します。 Simple Log Service プロジェクトの作成方法と Simple Log Service Logstore の作成方法については、「プロジェクトの管理」および「Logstore の管理」をご参照ください。

        説明

        Simple Log Service でログをクエリおよび分析するには、インデックス作成機能が必要です。 インデックス作成機能が有効になると、インデックストラフィック転送とストレージの料金が発生します。 課金の詳細については、Simple Log Service の料金計算ツールページにアクセスしてください。 ビジネス要件に基づいてログインデックス作成機能を有効にすることができます。

    • タスク実行レコードを OSS に配信します。

      1. [OSS に配信] をクリックします。

      2. 既存の OSS バケットを選択し、セッションレコードを保存するルートディレクトリを入力します。

        選択したリージョンに OSS バケットがない場合は、[OSS コンソール] をクリックして、OSS コンソールでバケットを作成します。 バケットを作成したら、ECS コンソールのダイアログボックスに戻り、刷新图标 アイコンをクリックして OSS バケットの最新リストを取得します。 OSS バケットの作成方法については、「バケットの作成」をご参照ください。

      説明

      OSS は、静的データを保護するためのサーバ側暗号化メカニズムを提供しています。 このメカニズムは、高いセキュリティまたはコンプライアンスが求められるシナリオで使用できます。 サーバ側暗号化方式を指定すると、セッションレコードを含むオブジェクトはその方式を使用して暗号化されます。 詳細については、「サーバ側暗号化」をご参照ください。

  5. [OK] をクリックします。

    配信設定を初めて構成すると、システムは Cloud Assistant に Simple Log Service および OSS リソースへのアクセス権を付与するサービスロールを作成します。 これにより、セッションレコードを特定の Simple Log Service Logstore または OSS バケットに配信できます。 サービスロールがすでに存在する場合は、システムはロールを再作成しません。 ビジネス要件に基づいて Cloud Assistant のロールを管理できます。 詳細については、「ECS Cloud Assistant のサービスロールの管理」をご参照ください。

    111.png

ステップ 2: コマンドを実行するか、ファイルを転送する

コマンドを実行するかファイルを転送すると、対応するタスク実行レコードは指定された Simple Log Service Logstore または OSS バケットに自動的に配信されます。

詳細については、「即時実行機能の使用」、「コマンドの実行」、および「オンプレミスファイルを ECS インスタンスにアップロードする」をご参照ください。

ステップ 3: タスク実行レコードを表示する

Simple Log Service コンソールでタスク実行レコードを表示する

このセクションでは、Elastic Compute Service (ECS) コンソールから Logstore にアクセスして、Logstore に配信されたタスク実行レコードのログを表示する方法について説明します。 または、Simple Log Service コンソールにログインして Logstore にアクセスすることもできます。

  1. ECS コンソール - ECS Cloud Assistant に移動します。

  2. 上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。地域

  3. [ECS Cloud Assistant] ページの右上隅にある [設定] をクリックします。

  4. [Cloud Assistant Agent の設定] ダイアログボックスで、[コマンド実行設定] タブをクリックし、[Log Service に配信] を選択します。

  5. [プロジェクト] フィールドの右側にある [Logstore] をクリックします。

    ログをクエリおよび分析する方法については、「ログのクエリと分析」をご参照ください。

    次の図は、タスク実行レコードのサンプルログを示しています。 ログのパラメータについては、このトピックのタスク実行レコードのパラメータセクションをご参照ください。

    • 1 回限りのコマンド実行レコードのサンプルログonce

    • スケジュールされたコマンド実行レコードのサンプルログ

      繰り返し回数 パラメータの値は、コマンドが実行された回数を示します。

      sls-timed

    • ファイル送信レコードのサンプルログsls-sendfile

OSS コンソールでタスク実行レコードを表示する

このセクションでは、ECS コンソールから OSS バケットにアクセスして、バケットに配信されたタスク実行レコードのオブジェクトを表示する方法について説明します。 または、OSS コンソールにログインしてバケットにアクセスすることもできます。

  1. ECS コンソール - ECS Cloud Assistant に移動します。

  2. 上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。地域

  3. [ECS Cloud Assistant] ページの右上隅にある [設定] をクリックします。

  4. [Cloud Assistant Agent の設定] ダイアログボックスで、[コマンド実行設定] タブをクリックし、[OSS に配信] を選択します。

  5. [バケット] フィールドの右側にある [OSS コンソール] をクリックします。

  6. タスクの実行レコードを含むオブジェクトが保存されているディレクトリに移動します。

    OSS コンソールにログインすると、タスク実行レコードを配信するための配信設定を構成したときに指定したルートディレクトリに自動的に移動します。 タスクタイプに基づいて自動的に生成されるサブディレクトリにアクセスできます。

    • [コマンドタスク] の場合は、invocationResults/<タスク ID> サブディレクトリに移動します。 このサブディレクトリには、ECS インスタンス ID とコマンドのスクリプトの名前が付けられたディレクトリが表示されます。 スクリプトには、次のいずれかの名前が付いている場合があります

      • commandContent.bat: Windows ECS インスタンスで実行できるバッチコマンド。

      • commandContent.ps1: Windows ECS インスタンスで実行できる PowerShell コマンド。

      • commandContent.sh: Linux ECS インスタンスで実行できるシェルコマンド。

    • [ファイル送信タスク] の場合は、sendFileResults/<タスク ID> サブディレクトリに移動します。 このサブディレクトリには、ECS インスタンス ID と fileContent.txt ファイルの名前が付けられたディレクトリが表示されます。 ファイルには、送信された内容が含まれています。

    次の図は、Linux ECS インスタンスでシェルコマンドを実行するタスクに対して生成されたサンプルサブディレクトリを示しています。oss-dir

  7. インスタンスで実行されたタスクの実行レコードを含むオブジェクトをクエリするには、ECS インスタンスの ID の名前が付けられたディレクトリに移動します。

    次の図は、タスク実行レコードを含む JSON 形式のサンプルオブジェクトを示しています。

    • 1 回限りのコマンド実行レコードを含むサンプルオブジェクトoss-immediate

    • スケジュールされたコマンド実行レコードを含むサンプルオブジェクト

      各オブジェクト名に含まれる数字は、指定されたインスタンスでコマンドが実行された回数を示します。

      oss-timed

    • ファイル送信レコードを含むサンプルオブジェクトoss-sendfile

  8. タスク実行レコードを含むオブジェクトに対応する [アクション] 列の [詳細の表示] をクリックします。 次に、オブジェクトをダウンロードするか、オブジェクト URL をコピーしてオブジェクトの内容を表示します。

    次のコードは、シェルコマンドの 1 回限りの実行レコードを含むサンプルオブジェクトを示しています。 実行レコードに含まれるパラメータについては、このトピックのタスク実行レコードのパラメータセクションをご参照ください。

    {
        "RegionId":"cn-hangzhou", // リージョンID
        "InstanceId":"i-bp1hd5ztmab9cgc0****", // インスタンスID
        "InvokeId":"t-hz01x7rtjfy****", // コマンドタスクID
        "CommandId":"c-hz01x7cn5aj****", // スクリプトID
        "CommandName":"cmd-hostname", // コマンド名
        "CommandType":"RunShellScript", // コマンドタイプ
        "CommandContent":"hostname", // コマンドのプレーンテキストコンテンツ
        "ResourceOwnerUid":160998252992****, // コマンド呼び出し元のAlibaba CloudアカウントID
        "CallerUid":160998252992****, // コマンド呼び出し元のアカウントID
        "CallerType":"customer", // コマンド呼び出し元の呼び出しモード
        "Timeout":60, // コマンドタスクのタイムアウト期間(秒単位)
        "Frequency":"", // コマンドを実行するスケジュール。このパラメータの値はCron式です。
        "Parameters":"{}", // カスタムパラメータがコマンドに含まれている場合に渡されるカスタムパラメータのキーと値のペア。
        "Username":"", // ECSインスタンスでコマンドを実行するために使用されるユーザー名。
        "RepeatMode":"Once", // コマンドの実行方法を示します。
        "Repeats":1, // ECSインスタンスでコマンドが実行された回数。
        "InvocationStatus":"Success", // 単一のECSインスタンスでのコマンドステータス。
        "Dropped":0, // Outputレスポンスパラメータの値のサイズが24 KBを超えた場合に切り捨てられて破棄されたテキストのサイズ。
        "Output":"iZbp1hd5ztmab9cgc0****\n", // コマンド出力。
        "ExitCode":0, // コマンドの終了コード。
        "CreationTime":"2021-09-26T05:47:20Z", // コマンドタスクが作成された時刻。
        "StartTime":"2021-09-26T05:47:20Z", // ECSインスタンスでコマンドの実行が開始された時刻。
        "UpdateTime":"2021-09-26T05:47:20Z", // コマンドタスクのステータスが更新された時刻。
        "FinishedTime":"2021-09-26T05:47:20Z", // コマンドタスクが完了した時刻。
        "StopTime":"" // ECSインスタンスでコマンドの実行が停止された時刻。StopInvocation操作を呼び出して手動で実行を停止した場合、値は操作が呼び出された時刻です。
    }

タスク実行レコードのパラメータ

次の表は、タスク実行レコードに含まれるパラメータについて説明しています。 有効な値など、パラメータの使用方法の詳細については、「DescribeCommands」および「DescribeInvocationResults」をご参照ください。

パラメータ

説明

RegionId

cn-hangzhou

コマンドが実行された ECS インスタンスのリージョン ID。

InstanceId

i-bp1hd5ztmab9cgc0****

インスタンスの ID

InvokeId

t-hz01x7rtjfy****

コマンドタスクの ID。

CommandId

c-hz01x7cn5aj****

スクリプト ID。

CommandName

cmd-hostname

コマンドの名前。

CommandType

RunShellScript

コマンドのタイプ。

CommandContent

hostname

コマンドのプレーンテキストコンテンツ。

ResourceOwnerUid

160998252992****

コマンド呼び出し元の Alibaba Cloud アカウント ID。

CallerUid

160998252992****

コマンド呼び出し元のアカウント ID。

CallerType

customer

コマンド呼び出し元の呼び出しモード。

Timeout

60

コマンドタスクのタイムアウト期間。単位: 秒。

Frequency

0 * 14 * * ?

コマンドを実行するスケジュール。 このパラメータの値は Cron 式です。 詳細については、「Cron 式」をご参照ください。

Parameters

{}

カスタムパラメータがコマンドに含まれている場合に渡されるカスタムパラメータのキーと値のペア。

Username

root

ECS インスタンスでコマンドを実行するために使用されるユーザー名。

RepeatMode

Period

コマンドの実行方法を示します。

Repeats

2

ECS インスタンスでコマンドが実行された回数。

InvocationStatus

Success

単一の ECS インスタンスでのコマンドステータス。

ErrorCode

InstanceNotExists

コマンドを送信または実行できないときに返されるエラーコード。

ErrorInfo

the specified instance does not exists

コマンドを送信または実行できないときに返されるエラーメッセージ。

Dropped

0

Output レスポンスパラメータの値のサイズが 24 KB を超えた場合に切り捨てられて破棄されたテキストのサイズ。

Output

iZbp1hd5ztmab9cgc0****\n

コマンド出力。

ExitCode

0

コマンドの終了コード。

CreationTime

2021-09-26T05:47:20Z

コマンドタスクが作成された時刻。

StartTime

2021-09-26T05:47:20Z

ECS インスタンスでコマンドの実行が開始された時刻。

UpdateTime

2021-09-26T06:53:00Z

コマンドタスクのステータスが更新された時刻。

FinishedTime

2021-09-26T06:53:00Z

コマンドタスクが完了した時刻。

StopTime

2021-09-26T06:53:00Z

ECS インスタンスでコマンドの実行が停止された時刻。 StopInvocation 操作を呼び出して手動で実行を停止した場合、値は操作が呼び出された時刻です。

次の表は、ファイル送信レコードに含まれるパラメータについて説明しています。 有効な値など、パラメータの使用方法の詳細については、「DescribeSendFileResults」をご参照ください。

パラメータ

説明

RegionId

cn-hangzhou

ファイルが送信された ECS インスタンスのリージョン ID。

InstanceId

i-bp1hd5ztmab9cgc0****

インスタンスの ID

InvokeId

f-hz01xeva44****

ファイル送信タスクの ID。

FileName

sendfile-test.txt

ファイルの名前

ContentType

Base64

ファイルのコンテンツタイプ。

Description

Used for test

ファイルの説明。

FileContent

c2VuZCBmaWxlIHRlc3Q=

ファイルのコンテンツ。

FileGroup

root

ファイルのグループ。

FileMode

0644

リモートファイルの権限。

FileOwner

root

リモートファイルの所有者。

ResourceOwnerUid

16099825299****

ファイル送信元の Alibaba Cloud アカウント ID。

CallerUid

16099825299****

ファイル送信元のアカウント ID。

CallerType

customer

ファイル送信元の呼び出しモード。

Overwrite

true

送信されたファイルと同じ名前のファイルが宛先ディレクトリに存在する場合に、ファイルを上書きするかどうかを示します。

TargetDir

/root

ファイルが送信された宛先ディレクトリ。

Timeout

60

ファイル送信タスクのタイムアウト期間。単位: 秒。

InvocationStatus

Success

ファイル送信タスクのステータス。

ErrorCode

FileAlreadyExists

ファイルが ECS インスタンスに送信できなかったときに返されるエラーコード

ErrorInfo

File already exists: sendfile-test.txt

ファイルが ECS インスタンスに送信できなかったとき、またはファイル送信タスクが ECS インスタンスで実行できなかったときに返されるエラーメッセージ。

CreationTime

2021-09-28T05:31:04Z

ファイル送信タスクの作成時刻。

StartTime

2021-09-28T05:31:04Z

ECS インスタンスでファイル送信タスクの実行が開始された時刻。

UpdateTime

2021-09-28T05:31:04Z

ファイル送信タスクのステータスが更新された時刻。

FinishTime

2021-09-28T05:31:04Z

ファイル送信タスクが完了した時刻。

関連情報