データ収集ポリシー
任意のテレメトリ、実行チェーン、収集範囲と無効化の方法
LangBot は利用状況の把握と信頼性の改善のため、space.url で設定された LangBot Space サービス(既定は https://space.langbot.app)に製品テレメトリを送信します。既定で有効ですが、無効にできます。 このページは 4.11 の現在の実行テレメトリプロトコル(schema: 2)を説明します。旧バージョンのデータについては後述します。
実行テレメトリ
送信条件を満たす 1 回の実行は、同じ event_id を持つ独立した記録で構成されます。各ワークフローノードの完了時に execution_node、実行の終了時に execution_chain を 1 件生成します。Core は上限付きバッファに記録を格納し、バックグラウンドでまとめて送信します。Space がノードから実行チェーンを再構成します。現在の送信側は、旧方式の集計カウンターやローカルでの完全なチェーン組み立てを使用しません。
業務ルートに一致しない、または選択されたルートが discard(無視・破棄)で、一致するプラグイン購読もないプラットフォームイベントは、ノードも終了記録も送信しません。 無効なルートやイベント種類・フィルターの不一致も対象です。ローカルのログと監視は従来どおりです。主ルートが一致しなくてもプラグインのイベントプロセッサーが一致すれば、その実行は送信対象になります。不一致・破棄の分岐はテレメトリに含めません。
業務ルートに一致した後の対象利用不可、実行失敗、タイムアウト、Pipeline 内部のフィルタリングは引き続き送信対象です。元の処理を再開する有効な対話コールバック、WebUI/API デバッグ、Pipeline を明示的に指定した独立呼び出しも対象です。無効なコールバックだけでは送信対象になりません。この判定はサンプリングや失敗時の送信より優先し、Cloud にも適用します。Core の更新後に有効となり、旧クライアントや過去の記録は遡って変更しません。
| データ | 内容 |
|---|---|
| 識別子と環境 | instance_id、workspace_uuid、event_id、バージョン、エディション、タイムスタンプ、デバッグフラグ、サンプリング情報 |
| 実行ノード | プラットフォームイベント、ルーティング、Pipeline、Runner、プラットフォーム API、ツール呼び出しの操作識別子、処理モード、結果、開始/終了時刻、親子関係と順序、ルーティング先、Runner の実行識別子 |
| チェーン終了 | 全体の結果、終了理由、所要時間、ノード数、サンプリングで送信しなかったノード数、実行元、モデル名、アダプター、Runner、パイプラインプラグイン |
| バインドされたリソース | Pipeline や Agent に許可されたプラグイン、MCP サーバー、ナレッジベース、ツールとその提供元、スキル、モデル、プラットフォーム API の識別子や名前、および選択フィールド、能力、権限フラグ。項目は実行経路により異なります |
| エラー | 長さの制限と空白の正規化を行った短いエラーテキスト。例外クラスやメッセージの先頭部分を含む場合があります |
バインドされたリソースは、その実行で使用するよう設定された、または使用が許可されたリソースです。実際の呼び出し、検索、消費を示すものではありません。 ルーティング先は type:uuid 形式で報告され、ユーザー定義のルール名は使用しません。
実行記録は、メッセージ本文、プロンプト、モデルの回答、プラットフォームのユーザー/グループ ID、ツール/API の引数や結果、認証情報、完全な例外 traceback を意図的に収集しません。ただし、エラーテキストの切り詰めは確実なマスキングではありません。例外メッセージの先頭部分やユーザー定義のモデル・スキル・リソース名には機密情報が含まれる可能性があります。 インスタンスとワークスペースの識別子がデプロイ環境やアカウントに結び付く場合があるため、匿名データではなく、ユーザーコンテンツを一切含まないとも保証できません。
サンプリングとデバッグ実行
コミュニティ版では space.execution_trace で実行の送信を設定します。
| モード | 動作 |
|---|---|
all(既定) | 送信条件を満たすすべての実行のノードと終了記録を記録します |
sampled | 入口でイベント識別子の安定したハッシュに基づき一度だけ判定し、成功した実行の約 1/N を保持します。N は space.execution_trace_sample(既定 20)で、同じ実行の全記録が判定を共有します |
failures | 通常の実行ではノードを保持せず、失敗・キャンセル・タイムアウト、またはチェーンの失敗理由がある場合に終了記録のみを送信します |
off | ノードと終了記録を無効にします。独立した集計カウンターの送信は継続しません。ワークスペースのハートビートは全体のテレメトリ設定に従います |
sampled で対象外になった実行が失敗した場合も、終了記録は送信します。ただし省略済みのノードは復元しないため、完全なチェーンがなく概要だけになる場合があります。WebUI のデバッグ実行は all、sampled、failures ではデバッグフラグ付きで保持します。off または全体の無効化設定では送信しません。
Cloud は製品テレメトリが有効な場合、常に all を使用します。 成功した実行のサンプリングが活動件数に影響することを避けるためです。インスタンス運用者は space.disable_telemetry で、このページの製品テレメトリを無効にできます。
送信と完全性
記録は POST /api/v1/telemetry に送信します。既定の送信間隔は 180 秒で、space.telemetry_flush_seconds で変更できます。1 回の送信は最大 128 件、メモリ内のバッファは最大 512 件です。送信が受け付けられた記録だけをバッファから削除し、失敗時は再試行します。バッファが満杯になると最も古い記録を破棄します。終了時には、限られた時間内で残りの記録の送信を試みます。
ネットワーク障害、タイムアウト、サーバーエラーによる送信失敗は業務処理を失敗させず、送信失敗の詳細は DEBUG ログに記録します。サンプリング、バッファ超過、プロセス終了、タスク間の関連付けの期限切れにより、不完全なチェーンになる場合があります。全件記録モードでも完全な到達は保証されません。 プラットフォーム API の成功応答だけでは、ユーザーがメッセージを読んだことも確認できません。
ハートビート、アンケート、旧バージョンのデータ
アクティブなワークスペースは起動約 30 秒後に最初の instance_heartbeat を送信します。通常のデプロイでは以後毎日、Cloud runtime では 5 分ごとに更新します。デプロイ環境、データベース/ベクトルデータベースの種類、サンドボックス設定と可用性、アダプターの種類、および Bot、Pipeline、プラグイン、Agent、イベントプロセッサー、イベントバインディング、MCP サーバー、ナレッジベース、スキルなどの数を含みます。リソース本文や接続用の認証情報は意図的に含めません。
任意参加のアプリ内アンケートでは、アンケート ID、送信した回答、インスタンス ID、バージョン、完了/閉じた状態を送信します。回答はユーザーが自発的に提供するコンテンツです。
Space は旧バージョンの query と feature_execution データにも対応しています。旧クエリ記録にはモデル名、機能カウンター、ユーザー定義のスキル/MCP 名、生の traceback が含まれる場合があります。現在の実行記録の制限は、過去のデータをマスキングしたり、稼働中の旧クライアントの送信内容を変更したりするものではありません。
保存と保持期間
データは設定された Space サービスに保存されます。実行一覧、チェーン詳細、集計は、権限を持つテレメトリ管理ユーザーまたはサービスクライアントのみが利用できます。execution_node、execution_chain、旧 feature_execution の生データは 30 日の保持期間に基づき、定期的に上限付きバッチで削除します。滞留やサービス停止で削除が遅れる場合があります。旧クエリテレメトリ、ハートビート、アンケート、アカウント、サービスログの保持規則は変更しません。
無効化すると以後の送信は停止しますが、サーバーに保存済みの記録は削除されません。過去のデータについては [email protected] または利用中の Space 管理者にお問い合わせください。
テレメトリの無効化
data/config.yaml の既存の space セクションで次を設定し、他の設定を保持したうえで LangBot を再起動します。
space:
disable_telemetry: trueこのスイッチは、このページで説明した製品テレメトリとアンケート取得を無効にします。引用符を付けず YAML の真偽値を使用してください。既定の有効状態に戻すには false に変更し、再起動します。
環境変数 SPACE__DISABLE_TELEMETRY が設定されている場合、起動時にファイルの設定を上書きするため、併せて変更または削除してください。コンテナの環境変数を変更する場合はコンテナを再作成します。Cloud ではインスタンスの運用者が設定し、そのインスタンスの全ワークスペースに適用されます。Bot の動作や、メッセージングプラットフォーム、モデル提供者、プラグイン自体のプライバシー設定は変更しません。
Cloud の Plugin Runtime 運用状態の送信は製品テレメトリとは別で、plugin.runtime_ops.enabled で制御します。space.disable_telemetry では無効になりません。
システム設定も参照してください。
