ログストリーミング: Sumo Logic
- English
- 日本語
Fastly の リアルタイムログストリーミング 機能は、Sumo Logic にログファイルを送信することができます。Sumo Logic は、開発者や IT チームが利用する Web ベースのログ分析プラットフォームです。
Fastly ではサードパーティのサービスに関する設定等のサポートは行っておりません。詳細は Fastly's Terms of Service をご参照ください。
Sumo Logic の設定
Sumo Logic をログエンドポイントとして使用するためには、Sumo Logic アカウントを作成し、新しいソースを追加して HTTP Source URL を保存する必要があります。以下の手順で Sumo Logic Webサイトで新しいソースを追加します。
それには、Sumo Logic アカウントを作成した直後に表示される Sumo Logic Setup Wizard を使用する必要があります。すでにアカウントをお持ちの場合は、Sumo Logic アプリケーションの上部にある Manage メニューから Setup Wizard を選択してウィザードにアクセスできます。

Set Up Streaming Data をクリックします。

All Other Sources をクリックします。

HTTP Source をクリックします。

Source Category フィールドに判読可能なカテゴリーの名前 (例:
fastly_cdn) を入力し、ログファイルのタイムゾーンを選択します。Continue をクリックします。HTTP Source URL が表示されます。

HTTP Source URL をコピーします。後でこの値を Fastly コントロールパネルで入力する必要があります。
Continue をクリックします。Sumo Logic に新しいソースが追加されます。
Sumo Logic をログエンドポイントとして追加する
Sumo Logic アカウントを作成して HTTP Source URL を取得した後、以下の手順で Sumo Logic を Fastly サービスのログエンドポイントとして追加します。
- Deliver サービス
- Compute サービス
リモートログストリーミングの設定に関するガイドの情報をご確認ください。
- Sumo Logic エリアで、Create endpoint をクリックします。
- 以下の要領で Create a Sumo Logic endpoint ページの各フィールドに入力します。
Name フィールドに、エンドポイントの分かりやすい名前を入力します。
Placement エリアで、生成された VCL のどこにログコールを配置するかを選択します。有効な値は、形式のバージョンのデフォルトとなしです。詳細については、ログの配置の変更に関するガイドをご覧ください。
Log format フィールドに、オプションでログフォーマットに使用するための Apache 形式の文字列や VCL 変数を入力します。詳細はフォーマットの例のセクションを参照してください。
- Collector URL フィールドに、Sumo Logic Web サイトで取得した HTTP Source URL のアドレスを入力します。
- (オプション) ログ行形式を変更するには、Advanced options をクリックします。
「Select a log line format」エリアで、ログメッセージのログ行形式を選択します。詳細については、ログ行形式の変更に関するガイドをご覧ください。
Create をクリックして、新しいログ記録エンドポイントを作成します。
Activate メニューから、Activate on Production を選択して、設定の変更をデプロイします。
フォーマットの例
以下に示すのは、Sumo Logic にデータを送信する書式指定文字列の例です。書式指定文字列の詳細については、こちらをご覧ください。
{ "timestamp": "%{strftime(\{"%Y-%m-%dT%H:%M:%S%z"\}, time.start)}V", "client_ip": "%{req.http.Fastly-Client-IP}V", "geo_country": "%{client.geo.country_name}V", "geo_city": "%{client.geo.city}V", "host": "%{if(req.http.Fastly-Orig-Host, req.http.Fastly-Orig-Host, req.http.Host)}V", "url": "%{json.escape(req.url)}V", "request_method": "%{json.escape(req.method)}V", "request_protocol": "%{json.escape(req.proto)}V", "request_referer": "%{json.escape(req.http.referer)}V", "request_user_agent": "%{json.escape(req.http.User-Agent)}V", "response_state": "%{json.escape(fastly_info.state)}V", "response_status": %{resp.status}V, "response_reason": %{if(resp.response, "%22"+json.escape(resp.response)+"%22", "null")}V, "response_body_size": %{resp.body_bytes_written}V, "fastly_server": "%{json.escape(server.identity)}V", "fastly_is_edge": %{if(fastly.ff.visits_this_service == 0, "true", "false")}V}トラブルシューティング
Sumo Logic ログエンドポイントは、一定レベルのトラフィックが持続的に発生するサービス向けに設計されています。Sumo Logic にログが表示されない場合は、少し時間をおいてからご確認ください。