• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

Herokuからのストリームログ

ログデータがすでにHerokuのビルトイン Logplex ルーターによって監視されている場合は、私たちの統合を利用して、New Relicでログデータを転送し、エンリッチすることができます。この統合は、 Heroku Syslog drains を使用しています。

HerokuのログをNew Relicに転送することで、ログ管理機能が強化され、ログデータの収集、処理、探索、クエリ、アラートなどが可能になります。

Herokusyslogドレインを作成する

ログ管理機能を有効にするには、まずHeroku Syslog drainを作成します。

  1. New Relic のユーザーアカウントに、 Admin ロール が割り当てられていることを確認してください。

  2. Heroku CLI をダウンロードしてインストールします。

  3. Heroku CLIを使用してSyslogドレインを作成し、ログをストリーミングするアプリケーションにアタッチして、 YOUR_APP_NAMEをHerokuアプリケーションの名前に置き換えます。

    bash
    $
    $ heroku drains:add syslog+tls://newrelic.syslog.nr-data.net:6515 -a YOUR_APP_NAME

    ヨーロッパにお住まいの場合は、代わりに次のコマンドを実行してください。

    bash
    $
    $ heroku drains:add syslog+tls://newrelic.syslog.eu.nr-data.net:6515 -a YOUR_APP_NAME
  4. 次のコマンドを実行し、HerokuSyslogドレイントークンtoken属性からコピーします。

    bash
    $
    $ heroku drains -a YOUR_APP_NAME --json
    {
    "addon": null,
    "created_at": "2018-12-04T00:59:46Z",
    "id": "906262a4-e151-45d2-b35a-a2dc0ea9e688",
    "token": "d.f14da5dc-106b-468d-b1bd-bed0ed9fa1e7",
    "updated_at": "2018-12-04T00:59:47Z",
    "url": "syslog+tls://newrelic.syslog.nr-data.net:6515
    }

Herokusyslogドレインを登録する

次に、新しく作成したHeroku Syslog drainをNew Relicに登録する必要があります。

  1. New RelicのログUIにログインし、[データソースを追加]をクリックします。

    Add more data sources button
  2. Heroku Log ingestion の下のタイルをクリックします。

    Heroku tile
  3. HerokuアプリケーションのログをストリーミングするNew Relicアカウントを選択し、 Continue をクリックします。

  4. Heroku drain token の欄に、新しく作成したHeroku drain tokenを貼り付けます。

  5. Add Heroku drain log をクリックして登録を完了します。

重要

Herokuは現在、Logplexから送信されるログのフォーマットのカスタマイズをサポートしていません。詳しくは、 Heroku's log format documentation をご覧ください。

Herokusyslogドレイントークンマッピングを削除します

これらの手順を実行して、NewRelicUIを介してHerokusyslogドレイントークンマッピングを削除します。

  1. NewRelicユーザーアカウントに管理者ロールが割り当てられていることを確認してください。
  2. NewRelicMarketplaceに移動します。
  3. 「Heroku」を検索します。
  4. [ログ]で、 Herokuタイルをクリックします。
  5. 複数のアカウントがある場合は、削除するドレイントークンマッピングを含むアカウントを選択して、[続行]をクリックします。それ以外の場合は、手順6に進みます。
  6. 削除するドレイントークンマッピングを見つけて、その横にある縦の3つのドットのアイコンをクリックします。次に、[ Herokuドレイントークンの削除]をクリックします。
  7. Herokuドレイントークンマッピングが削除されます。

これらの手順を実行して、RESTAPIを介してHerokusyslogドレイントークンマッピングを削除します。

  1. キータイプがUSERのAPIキーを検索または生成します。
  2. 以下のコマンドを実行して、New RelicアカウントからHerokuドレイントークンマッピングのリストを取得し、 YOUR_NR_LICENSE_KEYYOUR_NR_ACCOUNT_IDの値を更新してください。
bash
$
curl -H 'api-key: <var>YOUR_NR_LICENSE_KEY</var>' https://log-syslog-configuration-api.service.newrelic.com/heroku-account-mappings?accountId=<var>YOUR_NR_ACCOUNT_ID</var>

フォーマットされた結果は次のようになります。

[
  {
    "herokuMappingId": 1549,
    "drainToken": "YOUR_DRAIN_TOKEN",
    "nrApiInsertKey": "YOUR_DRAIN_TOKEN_NR_API_KEY",
    "createdAt": "2022-05-13T07:47:23",
    "createdBy": "YOUR_EMAIL_ADDRESS"
  }
]

削除するドレイントークンごとにherokuMappingIdが必要です。

  1. ドレイントークンを削除するには、以下のコマンドを実行します。 YOUR_NR_LICENSE_KEYYOUR_NR_ACCOUNT_ID 、および最後の手順で取得したherokuMappingIdの値を必ず更新してください。

    bash
    $
    curl -XDELETE -H 'api-key: <varYOUR_NR_LICENSE_KEY</var>' https://log-syslog-configuration-api.service.newrelic.com/heroku-account-mappings/<herokuMappingId>?accountId=<var>YOUR_NR_ACCOUNT_ID</var>
  2. APIはHTTP204応答を返し、ドレイントークンマッピングが削除されます。

ログデータの閲覧

すべての設定が正しく行われ、データが収集されていれば、この2つの場所にデータログが表示されるはずです。

SELECT * FROM Log

当社のログ管理機能を有効にしてもデータが表示されない場合は、当社の 標準的なログのトラブルシューティング手順 に従ってください。

次のステップ

Logs UIを使用して、プラットフォーム全体のログデータを調べます。

ログ転送を無効にする

ログ転送機能を無効にするには、 Heroku Syslog documentation に記載されている標準的な手順に従ってください。New Relicでは他に何もする必要はありません。

Copyright © 2022 New Relic株式会社。