コンテンツへスキップ

機械翻訳です。正式な情報源は英語版であり、ネイティブによる確認は未完了です。

ガイド

ソースの接続

Olivares AI に実際の観測ソースを接続し、読み取り優先のコネクターモデルを理解し、正しいソース種別で pgaudit と s3cloudtrail を設定する

最終更新:

ソースは1つの外部システムを観測し、正規化された観測を出力します — データパスに介在したり、トラフィックをプロキシしたり、ペイロードを読み取ったりすることはありません。このページではコネクターモデルと、OLIVARES_SOURCES_CONFIG を通じて実際のソースを接続する方法をカバーします。コーディングエージェントだけを接続したい場合は、Claude Code の接続から始めてください。それは協調パスの1つのソースであり、このページはその基盤となるモデルです。

ソースが行うこと

ソースはシステムを観測し、観察したものを型付き観測として報告します。読み取り/書き込みアクセスマップは、流れるものを傍受するのではなく、ソースが報告するものから構築されます。エンジンがスケジューリングを所有します: ストリーミングソース(ログテイル)はキャンセルされるまでブロックします。バッチソースは処理を行って返し、エンジンが再実行のタイミングを決定します。

観測はIDと読み取り/書き込み分類のみを持ちます — SQL ボディ、リクエストペイロード、シークレット、PII は含みません。これはコネクターが話すワイヤーボキャブラリーの特性であり、トグルで変更できる設定ではありません。これらの観測がマップにどのように反映されるかは許可と観測を参照してください。

すべてのエッジは、どのソースが生成したかと信頼度レベルを記録し、製品は両方を表示します。帰属は、アクセスがエージェントごとのIDに紐づく場合は firm、推論されたりロスが大きい場合(共有サービスアカウント、プールされた接続)は approximate です。アクセスモードは unknownreadwritereadwrite のいずれかで、unknown は明示的であり推測されません。忠実度を参照してください。

実行場所

これらのソースを実行するコレクターは、常にお客様のインフラストラクチャで実行されます。それらを取り込むコントロールプレーンは、単一のセルフホストバイナリ、分散デプロイメント、またはエアギャップが可能です — 観測されたエステートのデータがお客様の境界を離れることはありません。セルフホストアーキテクチャ概要を参照してください。

設定ファイル

実際の(非デモ)ソースは、OLIVARES_SOURCES_CONFIG 環境変数で指定される単一のオペレーター設定ファイルから接続されます。エンジン起動前に読み取られます。sources のリストを宣言する JSON ドキュメントです。各エントリは kind でコネクターを選択し、観測が属する tenant を指定し、ソースに name を付け、コネクター固有の config を持ちます。オプションの poll_seconds はバッチソースを間隔で再実行します。ストリーミングソースはこれを無視します。

ソース種別はエンジン内の登録名です。2つの clean ティアファイルオブザーバーは pgaudit(PostgreSQL)と s3cloudtrail(AWS S3)です。これらの正確な文字列を使用してください — 以前のドキュメントで pg_auditcloudtrail と記載されていたのは誤りであり、これらの文字列は解決されません。

実際の pgaudit ソース

pgAudit ソースは PostgreSQL の構造化監査ログをテイルし、監査されたデータアクセスごとに1つのエッジを出力します。読み取り/書き込みモードは pgAudit のクラス(READ、WRITE、DDL)からそのまま取得されます — SQL テキストから推論されることはありません。ログファイルに対する読み取り専用であり、データベースに接続することはありません。

{
  "sources": [
    {
      "name": "prod-postgres",
      "kind": "pgaudit",
      "tenant": "acme",
      "config": {
        "log_path": "/var/log/postgresql/postgresql.json",
        "format": "jsonlog",
        "follow": "true",
        "shared_accounts": "app_pool,reporting"
      }
    }
  ]
}

config の値は文字列です。上記のキーは pgAudit コネクターが所有しています:

  • log_path(必須) — 読み取る PostgreSQL ログファイルへのパス。
  • formatcsvlog または jsonlog。デフォルトは csvlog
  • follow — 継続的にテイルします。これは jsonlog にのみ適用されます。csvlog ファイルはレコードが改行をまたぐ可能性があるため、バッチとして読み取られます。
  • shared_accounts — 複数の呼び出し元間でプールまたは共有されているロールまたは application_name のカンマ区切りリスト。これらのいずれかに帰属するアクセスは、意図的に approximate としてマークされます。共有IDの背後にある実際の呼び出し元を証跡が分離できないためです。

区別可能な application_name が、firm なエッジを獲得するエージェントごとのブリッジです。多くのエージェントが1つのロールまたはコネクションプールを共有する場合、すべてのアクセスがそのIDに集約され、帰属は approximate になります — 製品はエージェントを区別できるふりをするのではなく、そう表明します。

実際の s3cloudtrail ソース

CloudTrail ソースは AWS CloudTrail ログファイルを読み取り、S3 イベントごとに1つのエッジを出力します。読み取り/書き込みは CloudTrail の readOnly フィールドからそのまま取得されます。オリジンは IAM プリンシパルです。呼び出し元間で共有されるアサームドロールは approximate としてマークされます。

{
  "sources": [
    {
      "name": "prod-s3",
      "kind": "s3cloudtrail",
      "tenant": "acme",
      "config": {
        "path": "/var/log/cloudtrail/",
        "shared_accounts": "shared-pipeline-role"
      }
    }
  ]
}

path キー(必須)は、CloudTrail ログファイルまたは *.json / *.json.gz ファイルのディレクトリです。shared_accounts は pgAudit と同じ動作をします。

何も接続されていない場合、エンジンは警告する

エンジンは安全に失敗し、大きな音は出しません:

  • OLIVARES_SOURCES_CONFIG が設定されていない場合、エンジンはソースなしで起動します。
  • ファイルが見つからない、読み取り不能、または有効な JSON でない場合、エンジンは警告しソースなしで続行します — 起動時にクラッシュしません。
  • ソースリストが空の場合、コネクターがインジェストせず、エステートがライブトラフィックなしで実行されていることを警告します。

すべてのケースで、起動ログは実際には何も接続されていないことを明確に伝えます。空のアクセスマップがクリーンなマップに見えてはなりません。

ツリー内のすべてのコネクターがストック serve に接続されているわけではない

Olivares AI は、ストック serve バイナリが選択可能なソース種別として登録するよりも多くのコネクターをツリー内に出荷しています。ファイルオブザーバー pgaudits3cloudtrail、カーネルバックストップ ebpf、ホスト runtime リーダー、mcp イントロスペクションは、データプラットフォーム、シークレット、ネットワーク、IDオブザーバーのセットとともにストック serve に接続されています。他のコネクターはツリー内に存在しますが、ストック serve のソースレジストリにはまだ接続されていません — これは追跡されたフォローアップであり、すべてが今日選択可能であるという主張ではありません。期待する kind が解決されない場合は、設定ミスではなくまだ接続されていないものとして扱い、依存する前にコネクター自身のディスクリプターに対して確認してください。

このページでは、上記のコネクターに対して検証されたキーのみを記述しています。他のコネクターの正確な config キーはそのコネクターが所有しています。未検証のスキーマをコピーするのではなく、そのディスクリプターを読んでください。

関連

ドキュメント検索