Skip to content

Sentry

収集可能なイベント

Sentryが提供するWebhookの機能を利用して、各種イベントログをsrestに送信できます。

イベントソースイベントの概要
event_alertIssueが発生 (再発を含む)

イベントソースは、HTTPヘッダに含まれる Sentry-Hook-Resource パラメータの値を指します。

設定手順

Webhookの登録

  1. Sentryにログインし、サイドバーの [Settings] から [Custom Integrations] - [Create New Integration] を開きます。
  2. [Choose an Integration Type] で [Internal Integration] を選択し、[Next] ボタンをクリックします。
  3. 下記の通りフィールドを設定します。
    • Name: srest
    • Webhook URL: https://api.srest.io/events/sentry/issue?api_key={APIキー}
  4. [Alert Rule Action] を有効化します。
  5. [Save Changes] ボタンをクリックします。

プロジェクトの設定

  1. 連携対象のプロジェクトページを開き、歯車アイコンをクリックします。
  2. [Alert Settings] から [View Alert Rules] - [Create Alert] を開きます。
  3. [Select Alert] では [Issues] を選択し、[Set Conditions] ボタンをクリックします。
  4. 下記の通りフィールドを設定します。
    • Select an environment and project: 通知対象としたい環境とプロジェクトを選択。
    • Set conditions: 任意の通知条件を設定し、[perform these actions] から [Sennd a notification via integration] を選択。リストから先程作成した [srest] を選択。
    • Set action interval: イベントログの通知間隔を設定。
  5. [Save Changes] ボタンをクリックします。

TIP

Webhookとの連携はプロジェクトごとに登録する必要があります。 srestでデータを可視化する上では、全てのプロジェクトでWebhookを有効化することを推奨します。

通知テスト

Sentryにイベントを発生させるには、アプリケーションで実際にエラーを発生させるか、APIを利用してイベントを送信する必要があります。

以下は curl を用いてSentryのプロジェクトにイベントを送信する例です。

  1. 以下のコマンドを実行します。

    zsh
    $ curl --data '{ "message": "test" }' \
        -H 'Content-Type: application/json' \
        -H "X-Sentry-Auth: Sentry sentry_version=7, sentry_key={SENTRY_KEY}, sentry_client=raven-bash/0.1" \
        https://sentry.io/api/{PROJECT_ID}/store/
    • SENTRY_KEY: Sentryのサイドバーから [Projects] を開き、エラー送信先対象のプロジェクトの歯車アイコンをクリックします。[Client Keys (DSN)] - [Configure] - [Public Key] から確認可能。
    • PROJECT_ID: [Projects] ページからエラー送信先のプロジェクトを開いたときの、URLの末尾にある含まれるパラメータ project=xxx
  2. リクエストが成功すると、 {"id":"xxx"} といったレスポンスが返されます。

  3. プロジェクトページから [Issues] を開き、送信したイベントが表示されることを確認します。

  4. srestのダッシュボードを開き、サイドバーから [Sentry] を開きます。

  5. 送信が成功すると、[アラート一覧] に送信したイベントログが表示されます。

連携の解除

  1. Sentryのサイドバーから [Settings] - [Custom Integrations] を開きます。
  2. [INTERNAL INTEGRATIONS] のリストから [srest] のゴミ箱アイコンをクリックしてください。
  3. 削除の確認を求められるので、指定されたIDを入力して [Confirm] ボタンをクリックします。