ログ転送:CloudFront(AWS CLI) log-forwarding-cloudfront-cli

このページでは、エージェントトラフィックのデータ収集において、CloudFront から CDN ログをアドビの S3 バケットに転送する方法について説明します。 LLM Optimizer にオンボードするには、LLM Optimizer CDN 設定ページを使用します。 オンボーディングプロセスが完了したら、このページに記載されている手順に従って、手順 2AWS コマンドラインインターフェイスを使用してログ転送を設定します。

NOTE
このガイドでは、AWS コマンドラインインターフェイスを使用してログ転送を設定する方法について説明します。 CloudFront UI を使用してログ転送を設定する場合は、ログ転送:CloudFront を参照してください。

手順 1:LLM Optimizer でオンボード step-1

LLM Optimizer ページ https://llmo.now/ で、次の手順に従います。

  1. 顧客設定ダッシュボード​に移動します。

    設定ボタン

  2. CDN 設定」タブをクリックします。

    「CDN 設定」タブ

  3. 開始」をクリックします。

  4. AI トラフィックインサイトをアクティブ化」の横にある「設定」をクリックします。

    設定

  5. AWS アカウント ID を入力します。

  1. CloudFront(BYOCDN)」を選択します。

    CloudFront を選択

  2. オンボード」をクリックします。

手順 2:AWS CLI を使用して CDN ログ転送を設定 step-2-cli

AWS CLI を使用して CDN ログ転送を設定するには、次の手順に従います。

AWS CLI 資格情報の設定

AWS CLI 資格情報 MAC を設定します。 ~/.aws/credentials を開き、以下の変数の値を入力します。

[LLMO]
aws_access_key_id=<VALUE_OF_ACCESS_KEY_ID>
aws_secret_access_key=<VALUE_OF_SECRET_KEY>
aws_session_token=<ONLY_IF_USING_SECURITY_TOKEN_SERVICE> ## Optional

接続のテスト

接続をテストするには、以下のコマンドを実行します。

aws sts get-caller-identity --profile LLMO

正常な出力の例:

aws sts get-caller-identity --profile LLMO
{
    "UserId": "AxxxxxxxxxxxP:user",
    "Account": "012345678912",
    "Arn": "arn:aws:sts::012345678912:assumed-role/klam-master-role-BatlY3dnPVinQLC/user"
}

変数の初期化

REPLACEME123@AdobeOrg を組織の Adobe IMS 組織 ID に置き換えて、以下のコマンドを実行します。 このコマンドの出力 ID は、TRANSFORM_IMS_ID と呼ばれます。

echo "REPLACEME123@AdobeOrg" | sed 's/@AdobeOrg$//' | tr '[:upper:]' '[:lower:]'

以下のガイドラインに従って、CUSTOMERCDN_IDACCT1TRANSFORM_IMS_ID の値を入力し、ターミナルからコマンドを実行します。

export PROFILE1=LLMO
export REGION1=us-east-1
export CUSTOMER=<CUSTOMER_NAME> ## No Space, user letters,numbers and dash
export CDN_ID=<YOUR_CLOUDFRONT_DISTRIBUTION_ID>
export ACCT1=<YOUR_AWS_ACCOUNT_NUMBER>
export DELIVERY_DEST_ARN=arn:aws:logs:us-east-1:640168421876:delivery-destination:cdn-logs-<TRANSFORM_IMS_ID>-ams  ## Replace TRANSFORM_IMS_ID with the output of the command above

配信ソースの作成

手順 3 を実行したのと同じターミナルから、以下のコマンドを実行します。

aws logs put-delivery-source --name llmo-cf-${CUSTOMER}-${CDN_ID} \
  --profile $PROFILE1 --region $REGION1 \
  --resource-arn arn:aws:cloudfront::${ACCT1}:distribution/${CDN_ID} \
  --log-type ACCESS_LOGS
IMPORTANT
次のエラーが発生した場合は、既存の配信ソースを検索します。PutDeliverySource 操作の呼び出しの際にエラーが発生しました(ConflictException):この ResourceId は、このアカウントの別の配信ソースで既に使用されています。
既存の配送ソースを検索するには、次のコマンドを実行します。
code language-bash
aws logs describe-delivery-sources --region us-east-1 \
    --query "deliverySources[?contains(resourceArns[0], '<CDN DistributionID>')]"
次のコマンドでは、上記のコマンドの結果から配信ソース名を使用します。

配信設定の作成

aws logs create-delivery \
  --profile "$PROFILE1" --region "$REGION1" \
  --delivery-source-name "llmo-cf-${CUSTOMER}-${CDN_ID}" \
  --delivery-destination-arn $DELIVERY_DEST_ARN \
  --s3-delivery-configuration '{"suffixPath":"/{yyyy}/{MM}/{dd}/{HH}"}' \
  --record-fields 'date' 'time' 'x-edge-location' 'cs-method' 'cs(Host)' 'cs-uri-stem' 'sc-status' 'cs(Referer)' 'cs(User-Agent)' 'time-to-first-byte' 'sc-content-type' 'x-host-header'

<!–ドキュメントや製品値が変更された場合は、--record-fields--s3-delivery-configuration を LLM Optimizer CDN 設定ページに表示されているフィールドリストとパス接頭辞に一致させます。–>

recommendation-more-help
llm-optimizer-help-main-toc