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

Object Storage Service:ロギング、ロギング

最終更新日:Dec 23, 2024

Object Storage Service (OSS) にアクセスすると、大量のログが生成されます。 バケットのロギングを設定すると、事前定義された命名規則に基づいて1時間ごとにログオブジェクトが生成され、アクセスログが特定のバケットにオブジェクトとして保存されます。 loggingコマンドを実行して、バケットのロギングを有効または無効にし、バケットのロギング設定を照会できます。

使用上の注意

  • バケットのロギングを有効にし、バケットにアクセスログを保存するには、oss:PutBucketLogging権限が必要です。 バケットのロギングを有効にし、別のバケットにアクセスログを保存するには、oss:PutBucketLoggingおよびoss:PutObject権限が必要です。 バケットのログ設定を照会するには、oss:GetBucketLogging権限が必要です。 バケットのロギングを無効にするには、oss:DeleteBucketLogging権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。

  • ossutil 1.6.16以降の場合、コマンドラインでossutilをバイナリ名として直接使用できます。 オペレーティングシステムに基づいてバイナリ名を更新する必要はありません。 1.6.16より前のossutilの場合、オペレーティングシステムに基づいてバイナリ名を更新する必要があります。 詳細は、「ossutilコマンドリファレンス」をご参照ください。

  • ロギングの詳細については、「ロギング」をご参照ください。

ロギングを有効にする

バケットのロギングが有効になっていない場合、次のコマンドはバケットのロギングを有効にします。 バケットのロギングが有効になっている場合、次のコマンドはバケットの既存のロギング設定を上書きします。

次のコマンドを使用して、バケットのロギングを有効にするか、ロギング設定を変更します。

  • コマンド構文

    ossutil logging --method put oss://bucketname   oss://targetbucket/[prefix]

    次の表に、コマンド構文のパラメーターとオプションを示します。

    パラメータ /オプション

    説明

    bucketname

    ログオブジェクトが生成されるソースバケットの名前。

    targetbucket

    ログオブジェクトが保存されている宛先バケットの名前。

    プレフィックス

    ログオブジェクトが保存されているディレクトリ。 このパラメーターを指定すると、ログオブジェクトは宛先バケットの指定されたディレクトリに保存されます。 このパラメーターを指定しない場合、ログオブジェクトは宛先バケットのルートディレクトリに保存されます。

    重要

    ログオブジェクトが生成されるソースバケットと、生成されたログオブジェクトが格納される宛先バケットは、同じバケットであっても、異なるバケットであってもよい。 ただし、移行先バケットは、移行元バケットと同じリージョンにあり、同じAlibaba Cloudアカウントに属している必要があります。

  • 次のコマンドを実行して、srcbucketソースバケット用に生成されたログオブジェクトをdestbucket宛先バケットのルートディレクトリに保存します。

    ossutil logging --method put oss://srcbucket  oss://destbucket

    次のコマンドを実行して、srcbucketソースバケット用に生成されたログオブジェクトをdestbucket宛先バケットのルートディレクトリのdestdirサブディレクトリに格納します。

    ossutil logging --method put oss://srcbucket  oss://destbucket/destdir

    次のサンプル出力は、ソースバケットのロギングが有効になっていることを示します。

    0.098601(s) elapsed

バケットのログ設定の照会

  • コマンド構文

    ossutil logging --method get oss://bucketname [local_xml_file]

    次の表に、前述のコマンドのパラメーターを示します。

    パラメーター

    説明

    bucketname

    ログ設定を照会するバケットの名前。

    local_xml_ファイル

    ログ設定を保存するローカルファイルの名前。 例: localfile.txt このパラメーターを指定しない場合、取得したログ設定はローカルファイルに保存されずに表示されます。

    • 次のコマンドを実行して、examplebucketバケットのログ設定を照会し、ログ設定をlocalfile.txtファイルに書き込みます。

      ossutil logging --method get oss://examplebucket localfile.txt

      次のサンプル出力は、ログ設定が照会されていることを示します。

      0.212407(s) elapsed
    • 次のコマンドを実行して、examplebucketバケットのログ設定を照会し、ローカルファイルにこれらのログ設定を保存せずにログ設定を表示します。

      ossutil logging --method get oss://examplebucket

      次のサンプル出力は、examplebucketバケットに対して生成されたログオブジェクトがdestbucketバケットのルートディレクトリに書き込まれることを示しています。

      <?xml version="1.0" encoding="UTF-8"?>
        <BucketLoggingStatus>
            <LoggingEnabled>
                <TargetBucket>destbucket</TargetBucket>
                <TargetPrefix></TargetPrefix>
            </LoggingEnabled>
        </BucketLoggingStatus>
      
      
      0.109979(s) elapsed

ロギングの無効化

ログを無効にする前に、OSSはログオブジェクトを継続的に生成します。 ストレージコストを削減するために、ライフサイクルルールに基づいて不要になったログオブジェクトを削除することを推奨します。 詳細については、「最終変更時刻に基づくライフサイクルルール」をご参照ください。

  • コマンド構文

    ossutil logging --method delete oss://bucketname

    上記のコマンド構文では、bucketnameはロギングを無効にするバケットの名前です。

  • 次のコマンドを実行して、examplebucketバケットのロギングを無効にします。

    ossutil logging --method delete oss://examplebucket

    次のサンプル出力は、バケットのロギングが無効になっていることを示します。

    0.212409(s) elapsed

一般的なオプション

ossutilを使用して別のリージョンにあるバケットに切り替える場合は、-eオプションを追加して、バケットが配置されているリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、-iオプションを追加して指定されたアカウントのAccessKey IDを指定し、-kオプションを追加して指定されたアカウントのAccessKey secretを指定します。

たとえば、次のコマンドを実行して、中国 (杭州) リージョンにあり、別のAlibaba Cloudアカウントが所有するtestbucketバケット用に生成されたログオブジェクトをdestbucketに保存できます。

ossutil logging --method put oss://testbucket  oss://destbucket -e oss-cn-hangzhou.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA****  -k 67DLVBkH7EamOjy2W5RVAHUY9H****

共通オプションの詳細については、「共通オプション」をご参照ください。