ログの圧縮形式の変更

Fastly のリアルタイムログストリーミング機能では、ファイルベースのログエンドポイントの圧縮形式とオプションを指定することができます。これらには、Azure BlobFTPGoogle Cloud StorageKafkaOpenStackAmazon S3SFTPDigital OceanCloud Files のログエンドポイントが含まれます。

利用可能なログ圧縮形式

デフォルトでは圧縮を行わないように設定されていますが、いくつかの圧縮メカニズムの中から選択することが可能です。

コントロールパネルを使用してログの圧縮形式を変更する

コントロールパネルでログファイルに適用する圧縮コーデックを選択することができます。

Gzip 圧縮を使用している場合、コントロールパネルがデフォルトで Gzip 圧縮レベル3のものになってります。そのため、変更できるのはログAPI を使用したときのみです。Gzip 圧縮レベルをAPI コールを介した3以外の値に設定する場合、そのレベルはリードのみの値として表示されます。

コントロールパネルを使用してファイルベースのログエンドポイントの圧縮形式を更新するには、以下の手順に従ってください。

  1. Fastly コントロールパネルにログインします。
  2. Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインでの検索が行えます。
  3. Edit configuration ボタンをクリックし、アクティブなバージョンをクローンするオプションを選択します。ドメインページが表示されます。
  4. Logging リンクをクリックします。Logging endpoints 設定画面が表示されます。
  5. 編集するファイルベースのログエンドポイントの名前をクリックします。Edit this endpoint ページが表示されます。
  6. ページの下部にある Advanced options をクリックします。Advanced options が表示されます。
  7. Compression セクションでログエンドポイントの圧縮形式を選択します。

    ログの圧縮オプション

  8. Update ボタンをクリックします。
  9. Activate ボタンをクリックして設定変更をデプロイします。

API を使用してログの圧縮形式を変更する

ファイルベースのログエンドポイントの場合、Logging API を使用して圧縮形式を更新することができます。

API には、ログファイルの圧縮オプションを指定するための compression_codecgzip_level のフィールドがあります。

  • compression_codecは、ログを圧縮するために使用する codec を指定する文字列です。以下の点のうち、1つです:
    • zstd Zstandard 圧縮を使用します。
    • snappy Snappy 圧縮を使用します。
    • gzip Gzip 圧縮を使用します。デフォルトでは、gzip の圧縮レベルは3に設定されています。
  • gzip_level は圧縮しないことを意味する0から、最大の圧縮率を意味する9までの整数です。

リクエストのペイロードに関して以下の点にご注意ください。

  • compression_codec の1つのみ、または gzip_level がリクエストペイロードに含まれます。両方を指定すると、エラーが発生します。
  • compression_codec を「gzip」に設定すると、gzip_level はデフォルトで3に設定されます。
  • compression_codec がリクエストのペイロードで指定されておらず、かつ gzip_level に0以外の値が設定されている場合、compression_codec はデフォルトで「gzip」に設定されます。
  • リクエストで compression_codecgzip_level のいずれも指定されていない場合、ログファイルに圧縮が適用されず、compression_codec はデフォルトで null に設定されます。

例えば、サービスの SFTP ログエンドポイントの圧縮形式を Snappy 圧縮コーデックを使用するように更新する場合、curl コマンドは以下のようになります。

1
$ curl -X PUT -H "Fastly-Key: YOUR_FASTLY_TOKEN"  -H "Accept: application/json" -d "compression_codec=snappy" https://api.fastly.com/service/SU1Z0isxPaozGVKXdv0eY/version/5/logging/sftp/sftp-log

compression_codec のフィールドを使用して Azure Blob Storage のログエンドポイントに gzip 圧縮を適用する場合、curl コマンドは以下のようになります。

1
$ curl -X PUT -H "Fastly-Key: YOUR_FASTLY_TOKEN"  -H "Accept: application/json" -d "compression_codec=gzip" https://api.fastly.com/service/SU1Z0isxPaozGVKXdv0eY/version/7/logging/azureblob/azure-log

gzip_level のフィールドを使用して Google Cloud Storage のログエンドポイントの圧縮形式のレベルを1に変更する場合、curl コマンドは以下のようになります。

1
$ curl -X PUT -H "Fastly-Key: YOUR_FASTLY_TOKEN"  -H "Accept: application/json" -d "gzip_level=1" https://api.fastly.com/service/SU1Z0isxPaozGVKXdv0eY/version/4/logging/gcs/gcs-log
Back to Top