> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudthinker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Better Stack

> CloudThinker と Better Stack を接続して、アップタイム監視、インシデントトリアージ、オンコール可視化、オブザーバビリティスタック全体のログ検索を実現する

Better Stack アカウントを接続することで、CloudThinker エージェントがアップタイムの監視、インシデントのトリアージ、オンコールスケジュールの確認、ログの検索を行えるようになります。Better Stack は **OAuth** を使用します。Better Stack 内から CloudThinker を一度承認するだけで、選択したチームにスコープされます。

## 前提条件

* 接続するチームにアクセスできる **Better Stack アカウント**。
* そのチームのサードパーティアプリを承認する権限。

<Info>
  OAuth は接続範囲を Better Stack ユーザーが既に閲覧できる範囲に限定します。機能する最小権限のユーザーで接続してください。
</Info>

## セットアップ

<Steps>
  <Step title="CloudThinker を開く">
    CloudThinker ワークスペースで **Connections → Better Stack** に移動します。
  </Step>

  <Step title="OAuth フローを開始する">
    **Connect** をクリックして Better Stack の承認ページを開きます。
  </Step>

  <Step title="CloudThinker を承認する">
    サインインし、接続するチームを選択して、アクセスを承認します。
  </Step>

  <Step title="CloudThinker に戻る">
    リダイレクトされて戻ります。接続が **Connected** ステータスを表示します。
  </Step>
</Steps>

<Tip>
  チームを切り替えたりアクセスを失効させたりするには、CloudThinker で切断して再接続するか、Better Stack のアプリ設定で承認を削除してください。
</Tip>

## 接続の詳細

Better Stack は OAuth を使用するため、保存する認証情報フィールドはありません。CloudThinker はアクセスを承認した後に Better Stack が発行した認証トークンを保持します。

## 必要な権限

CloudThinker は接続されたチーム内で承認ユーザーの可視範囲を継承します。

* **読み取り操作**（モニター、インシデント、オンコール、ログ、メトリクス）は標準メンバーアクセスで機能します。
* **書き込み操作**（インシデントの確認、レポートの公開、ダッシュボードやアラートの編集）には対応する Better Stack 権限 **および** CloudThinker での明示的な[承認](/ja/guide/approval)が必要です。

## エージェントの機能

接続後、エージェントは 2 つの Better Stack 領域への読み取りアクセスと、承認ゲートが必要な書き込みアクセスを持ちます。

**アップタイム**

| カテゴリ         | エージェントができること                               |
| ------------ | ------------------------------------------ |
| **モニター**     | モニターを一覧表示し、ウィンドウごとの可用性 % とレスポンスタイムを調査する    |
| **ハートビート**   | cron/スケジュールジョブのハートビートとヒット率を調査する            |
| **インシデント**   | インシデント、タイムライン、コメント、エスカレーションオプションを一覧表示・調査する |
| **オンコール**    | オンコールスケジュール、現在のローテーション、シフトイベントを確認する        |
| **エスカレーション** | エスカレーションポリシーと重大度定義を調査する                    |
| **ステータスページ** | ステータスページ、追跡コンポーネント、過去のレポートを一覧表示する          |

**テレメトリ**

| カテゴリ             | エージェントができること                      |
| ---------------- | --------------------------------- |
| **ログ**           | ソースにスコープしてログを検索し、ソースフィールドと設定を調査する |
| **メトリクス**        | メトリクスをクエリし、カーディナリティを調査する          |
| **ダッシュボードとチャート** | ダッシュボード、チャート、テンプレートを一覧表示・調査する     |
| **アラート**         | チャートアラートを一覧表示・調査する                |
| **エラー**          | 最近のエラーを一覧表示し、エラーグループを調査する         |

**書き込み操作（承認ゲート）**

| カテゴリ             | エージェントができること                     |
| ---------------- | -------------------------------- |
| **インシデント**       | インシデントの確認、解決、再開、エスカレーション、コメント、作成 |
| **ステータスページ**     | ステータスページレポートと更新を公開する             |
| **ダッシュボードとチャート** | ダッシュボードとチャートの作成、編集、名前変更、削除       |
| **アラート**         | チャートアラートの作成、編集、削除、一時停止           |
| **エラー**          | エラー状態の更新（解決 / 無視）                |

<Warning>
  書き込み操作はライブの監視とインシデント状態を変更します。CloudThinker は書き込み操作の実行前に、リソースを明示した明示的な[承認](/ja/guide/approval)を必要とします。
</Warning>

### 接続の確認

```text theme={null}
@alex list open Better Stack incidents and #alert on anything hitting production
```

### プロンプト例

```text theme={null}
@alex summarize Better Stack incidents from the last 24h and #recommend follow-ups
@alex search api-gateway logs for 5xx in the last hour and #chart by status code
@alex report 24h availability for production monitors
```

<Note>
  ログ検索は**ソースごとにスコープされる**ため、グローバル検索はありません。エージェントがクエリ前に解決できるよう、ソース名（例: `api-gateway`）を指定してください。
</Note>

## トラブルシューティング

<Accordion title="401 Unauthorized で接続が失敗する">
  OAuth トークンが期限切れになっているか、アクセスが不十分です。切断して再接続してください。
</Accordion>

<Accordion title="リソースが 404 Not Found を返す">
  リソースが別のチームに属しているか、削除されています。接続されたチームで再度一覧表示して現在の ID を取得してください。
</Accordion>

<Accordion title="リクエストが 429 Too Many Requests で失敗する">
  Better Stack のレート制限に達しました。エージェントは自動的にバックオフして再試行します。
</Accordion>

<Accordion title="ログクエリが構文エラーを返す">
  Better Stack は Live Tail 構文を使用しています。エージェントにそのソースのクエリ手順を読み込ませてから絞り込んでください。
</Accordion>

## セキュリティ

* **最小権限** — エージェントがユースケースに必要な権限のみを付与します。まず読み取り専用から始め、後から拡張してください。
* **デフォルトで読み取り専用** — エージェントにこの接続で変更を行わせる場合を除き、読み取り専用の認証情報を使用してください。
* **認証情報のローテーション** — 通常のスケジュールに従ってキーとトークンをローテーションしてください。接続を更新すると、CloudThinker が新しい値を自動的に取得します。
* **オフボーディング時に失効** — 接続を削除するか、チームメンバーが退職する際には、プロバイダー側で認証情報を無効化してください。

- **最小権限ユーザー** — CloudThinker に必要なアクセスのみで承認してください。承認ユーザーのチームメンバーシップを CloudThinker が参照できる範囲に限定してください。
- **未使用時は失効させる** — この接続を使用しなくなった場合は、Better Stack のアプリ設定で承認を削除してください。

## 関連情報

<CardGroup cols={2}>
  <Card title="Datadog 接続" icon="https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/datadog.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=e8382167f2a1eb1e00971b5f4d703d48" href="/ja/guide/connections/datadog" width="24" height="24" data-path="images/icons/datadog.svg">
    オブザーバビリティと監視
  </Card>

  <Card title="PagerDuty 接続" icon="https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/pagerduty.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=cdc34a966d5d46da70c3bc509a2a7492" href="/ja/guide/connections/pagerduty" width="24" height="24" data-path="images/icons/pagerduty.svg">
    インシデントアラートとオンコール
  </Card>
</CardGroup>
