Compute@Edge ログストリーミング:New Relic Logs

Fastly の Compute@Edge サービスのリアルタイムログストリーミング機能では、ログファイルを New Relic Logs に送信することができます。

注意

Fastly ではサードパーティのサービスに関する直接のサポートは行っておりません。詳細については、Fastly サービスの利用規約をご参照ください。

前提条件

Fastly Compute@Edge サービスのログエンドポイントとして New Relic Logs を追加する前に以下が必要です。

ログエンドポイントとして New Relic Logs を追加する

以下の手順で New Relic Logs をログエンドポイントとして追加します。

  1. RustAssemblyScript、および JavaScript で書かれた Compute@Edge コードでログ記録を実行する方法に関する詳細については Fastly の開発者向けドキュメントをご覧ください。
  2. New Relic Logs のCreate endpointボタンをクリックします。Create a New Relic Logs endpoint ページが表示されます。
  3. 以下の要領でCreate a New Relic Logs endpointページの各フィールドに入力します。
    • Name フィールドに、Compute@Edge コードに指定した名前を入力します。例えば、Rust コードの例では、名前は my_endpoint_name です。
    • License key / Insert keyフィールドに、New Relic のライセンスキーまたは Insert API キーを入力します。
  4. Create ボタンをクリックすると、新しいログエンドポイントが作成されます。
  5. Activate ボタンをクリックして設定変更をデプロイします。

New Relic Instant Observability の事前構築 Fastly ダッシュボードの使用

New Relic I/Oは、コミュニティが貢献したさまざまなモニタリングクイックスタートを備えたオープンソースのエコシステムです。New Relic と協力し、重要なメトリクスをハイライトする事前構築済みダッシュボードを開発しました。コードはオープンソースであるため、カスタマイズすることができます。

New Relic Fastly ダッシュボード

ログメッセージの設定

New Relic Logs に送られるデータは、JSON オブジェクトとして直列化する必要があります。JSON オブジェクトには、次のフィールドが含まれます:

  • timestampリクエストが発生した場合。エポックが New Relic タイムスタンプを上書きするため、タイムスタンプはミリ秒または秒として指定する必要があります。タイムスタンプが含まれていない場合は、Fastly によってタイムスタンプが生成されます。
  • client_ipHTTP リクエストを行ったクライアントの IP アドレス。
  • urlリクエストの URL。
  • resp_statusリクエストの HTTP ステータスコード。
  • client_resp_header_size_writeレスポンスヘッダーのサイズ。
  • client_resp_body_size_writeレスポンスボディのサイズ。
  • fastly_datacenter現在のインスタンスが実行されている FASTLY_POP の3文字の識別コード。
  • time_elapsedリクエストが開始された時間。
  • service_id現在のリクエストを処理する Fastly サービスの識別子。

JSON オブジェクトの例は、下記のとおりです。

1{
2 "timestamp": 1661976797605,
3 "logtype": "accesslogs",
4 "cache_status": "ERROR",
5 "client_ip": "127.0.0.1",
6 "client_device_type": "Chromebook",
7 "client_os_name": "Ubuntu",
8 "client_os_version": "17.10 (Artful Aardvark)",
9 "client_browser_name": "Firefox",
10 "client_browser_version": "113.0",
11 "client_as_name": "zayo bandwidth",
12 "client_as_number": "1234",
13 "client_connection_speed": "broadband",
14 "client_port": 63850,
15 "client_rate_bps": 0,
16 "client_recv_bytes": 74,
17 "client_requests_count": 1,
18 "client_resp_body_size_write": 56789,
19 "client_resp_header_size_write": 1234,
20 "client_resp_ttfb": 1.342,
21 "client_rtt_us": 6818,
22 "content_type": "text/html; charset=utf-8",
23 "domain": "example.com",
24 "fastly_datacenter": "HNL",
25 "fastly_host": "cache-hnl00001",
26 "fastly_is_edge": true,
27 "fastly_region": "US-Pacific",
28 "fastly_server": "cache-hnl00001-HNL",
29 "host": "example.com",
30 "origin_host": "example.com",
31 "origin_name": "n/a",
32 "request": "GET",
33 "request_method": "GET",
34 "request_accept_charset": "utf-8",
35 "request_accept_language": "en-US",
36 "request_referer": "",
37 "request_user_agent": "curl/7.68.0",
38 "resp_status": "503",
39 "response": "Backend unavailable, connection timeout",
40 "service_id": "000q0j0WE0f00z0KEVj5I0",
41 "service_version": "29",
42 "status": "503",
43 "time_start": "2023-05-18T23:21:52Z",
44 "time_end": "2023-05-18T23:21:53Z",
45 "time_elapsed": 237,
46 "tls_cipher": "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
47 "tls_version": "TLS 1.2",
48 "url": "/",
49 "user_agent": "curl/7.68.0",
50 "user_city": "san francisco",
51 "user_country_code": "US",
52 "user_continent_code": "NA",
53 "user_region": "CA"
54}

JSON オブジェクトに予想されるフィールドがすべて含まれていない場合、事前構築されたダッシュボードは壊れませんが、特定のチャートにはデータが含まれません。

期待されるフィールドに加えて、個人の目的のためにJSON オブジェクトに選択したフィールドを含めるか、構築した既存のダッシュボードとの後方互換性を維持することができます。

Fastly ダッシュボードをインストールする

Fastly ダッシュボードクイックスタートをインストールする手順に従ってください。

  1. 新しい Relic マーケットプレイスから Fastly ダッシュボードクイックスタートを選択するか、Fastly ダッシュボードページに直接移動します。Fastly CDN ページが表示されます。
  2. Install quickstart ボタンをクリックします。クイックスタートインストールページが表示されます。
  3. インストールを開始ボタンをクリックします。インストールプランウィンドウが表示されます。
  4. Done ボタンまたは Skip this step リンクをクリックします。
  5. データを表示ボタンをクリックします。Fastly ダッシュボードが表示されます。

翻訳についての注意事項
このガイドは役に立ちましたか?

このフォームを使用して機密性の高い情報を送信しないでください。サポートが必要な場合はお問い合わせください : support@fastly.com