Syncline icon

Syncline

Synclineは、ブラウザーのセッションリプレイとOpenTelemetryの分散トレース、データベース処理を1つのタイムラインでつなぐ、オープンソースでセルフホスト可能な可観測性ツールです。ユーザーの操作からバックエンドサービスやクエリまで追跡し、ユーザーに見える問題の調査を支援します。

Syncline

分散トレースとつながるセッションリプレイ

Synclineは、ブラウザーのセッションリプレイとバックエンドの分散トレーシングをつなぐ、オープンソースでセルフホスト可能な可観測性ツールです。ユーザーセッションをリプレイとして記録し、リクエストをW3C trace contextに関連付け、関連するネットワーク、サービス、データベースの処理を共有タイムラインに表示します。

この製品は、ブラウザー上の症状をサーバー側の処理と照合する必要がある調査を短縮できるよう設計されています。ユーザーの操作からバックエンドのスパンツリー、さらにデータベースクエリまでリクエストを追跡できます。また、誤解を招く可能性のあるタイムスタンプだけの結合に頼るのではなく、タイミングの不確実性を区別して表示します。

主要な機能

セッションとトレースの同期表示

ブラウザーセッションを取得し、ネットワークリクエスト、バックエンドスパン、データベース処理を同期されたビューアーのタイムライン上でセッションの下に配置します。

ブラウザーからバックエンドへのトレース連携

ブラウザーSDKが設定済みのオリジンに対してfetchとXHRをパッチし、W3C trace contextを付加するとともに、rrwebの記録にトレース識別子を書き込みます。

OTLP取り込み

Syncline固有のバックエンドSDKを必要とせず、標準のOpenTelemetryデータを受け入れます。既存のエクスポーターから直接データを送信したり、コレクターを使って別のトレーシングベンダーと並行してデータを分配したりできます。

リクエスト単位の調査

db.statement、HTTPステータス、サービス、トレースIDなどのスパン属性を表示し、ユーザーはリクエストをクリックしてその周辺にタイムラインの焦点を合わせられます。

ストレージと処理の分離

インデックス作成にPostgres、記録にS3互換オブジェクトストレージ、キュー処理にBullMQとRedisを使用します。APIはペイロードをストレージにストリーミングし、ワーカーが検証とインデックス作成を処理します。

プライバシーを重視した取得のデフォルト設定

マスクされた入力、クエリ値の除去、URLフラグメントの削除、ヘッダーやリクエストボディを取得しない設定など、マスキングと制限付きの取得をデフォルトで提供します。

実用的なユースケース

  • 遅い、または失敗するチェックアウトフローの調査

    ユーザーの記録された操作から開始し、その時点で発生したリクエストを特定して、別々のツールを手動で照合することなく、下流のサービスとデータベースのスパンを調査します。

  • ユーザーが報告したパフォーマンス問題の説明

    リプレイでユーザーが何をクリック、入力、または途中で離脱したかを把握し、対応するトレースを調べて、原因がブラウザー、ネットワーク、バックエンド、データベースのいずれにあるかを切り分けます。

  • 特定の本番リクエストのデバッグ

    ビューアーでリクエストをクリックして周辺の時間範囲に焦点を合わせ、HTTPステータス、処理したサービス、トレースID、データベースステートメントなど、完全なスパン属性を調査します。

  • 再現可能なインシデント記録の共有

    セッション記録をエクスポートして調査用に共有します。rrwebストリームに埋め込まれたトレース識別子により、別個の相関テーブルに依存せず、記録内のトレース連携を維持できます。

  • セルフホスト型の可観測性ワークフロー

    セッション記録を自組織のネットワーク外に出さず、Postgres、Redis、S3互換ストレージに保持する必要がある場合に、組織のインフラストラクチャ内にスタックをデプロイします。

Pros and Cons

Pros

  • AGPL-3.0ライセンスの下でオープンソースかつセルフホスト可能です。
  • ブラウザーとサーバーのクロックの同期だけに依存せず、トレース識別子によってリプレイイベントをトレースに関連付けます。
  • 標準のOpenTelemetryエクスポーターで動作し、Syncline専用のバックエンドSDKを必要としません。
  • 記録をリレーショナルデータベースの外部に保存し、ワーカーキューを通じて非同期に取り込み処理を行います。
  • 入力値のデフォルトマスキングやヘッダーとリクエストボディの除外など、具体的な取得時の保護機能を提供します。

Cons

  • 文書化されているデプロイ方法はセルフマネージドで、Postgres、Redis、MinIOまたは別のS3互換ストア、複数のNodeプロセスを運用する必要があります。
  • バックエンドの可視性は、各サービスがOpenTelemetryデータをエクスポートし、リクエストを通じてトレースコンテキストが引き継がれることに依存します。
  • 提供されたサイトの証拠では料金ページを確認できなかったため、商用条件は確定していません。

FAQ

Synclineは何をしますか?

Synclineは、ブラウザーのセッションリプレイとバックエンドの分散トレーシング、データベースのスパンを組み合わせます。ブラウザーSDKがセッションを記録し、W3C trace contextを使用してリクエストをトレースに関連付ける一方、ビューアーには関連するネットワーク、バックエンド、データベースの処理が1つのタイムラインに表示されます。

Synclineはどのようにインストールしますか?

文書化されているセルフホスト構成では、Docker上でPostgres、Redis、MinIOを使用し、API、ワーカー、Webアプリ用に3つのNodeプロセスを動かします。クイックスタートにはNode 22以降とpnpmが必要です。ドキュメントでは、イメージの取得が大部分を占め、セットアップは約5分で完了すると説明されています。

Synclineではバックエンドアプリケーションの変更が必要ですか?

Syncline専用のバックエンドSDKは必要ありません。既存のサービスから標準のOpenTelemetryデータをSynclineにエクスポートできます。クイックスタートでは、バックエンド設定として2つの環境変数と1つのCORSヘッダーを設定すると説明されています。ブラウザーSDKには、プロジェクトの公開キー、エンドポイント、許可するトレースのオリジンを設定する必要があります。

Synclineは記録へのアクセスと機密データをどのように扱いますか?

記録へのアクセスには公開プロジェクトキーとオリジンの許可リストを使用します。OpenTelemetryの取り込みにはプロジェクトのシークレットキーを使用します。このキーは一度だけ表示され、ハッシュとして保存されます。入力値はデフォルトでマスクされ、記録URLからクエリ値が削除され、フラグメントが除去されます。また、ヘッダーとリクエストボディは取得されません。

ブラウザーとサーバーのクロックが一致しない場合はどうなりますか?

ブラウザーは記録セッションのサンプリングを選択するため、記録対象のリクエストではsampled=1が強制されます。これにより、調査対象のセッションがある場合に、対応するバックエンドスパンが保持されやすくなります。ただし、ブラウザーとサーバーのタイミングが一致しない場合、スパンの配置には不確実性の帯が表示されることがあります。

Quick Facts

カテゴリー
開発者ツール;可観測性
デプロイ
セルフホスト
ライセンス
AGPL-3.0
主なワークフロー
OpenTelemetryトレースと関連付けたセッションリプレイ
コアスタック
ブラウザーSDK、Node APIとワーカー、Webビューアー、Postgres、Redis、S3互換オブジェクトストレージ
ソースドメイン
syncline.co.in

Synclineの代替品

ClawTick icon

ClawTick

ClawTickは、CLI、ダッシュボード、REST APIからジョブをスケジュールできるAIエージェント自動化プラットフォームです。LangChain、CrewAI、webhook、カスタムワークフローの監視、アラート、ログ管理に対応。

OpenFlags icon

OpenFlags

OpenFlagsは、現代的なJavaScriptチーム向けのオープンソースでセルフホスト型のfeature flagプラットフォームです。ローカル評価、段階的ロールアウト、対象別の公開を、データを自社環境に保持したまま実現します。

EAS Observe icon

EAS Observe

EAS Observeは、ExpoとReact Nativeアプリ向けの本番パフォーマンス監視ツールです。Expoダッシュボードで起動メトリクス、セッションのタイムライン、リリースマーカー、エラーを確認できます。

Rectify icon

Rectify

Rectifyは、セッションリプレイ、監視、サポート、コードスキャン、ロードマップ、変更履歴を一元化したSaaS運用プラットフォーム。創業者や非技術系SaaSチーム、AI支援開発に最適。

PromptScout icon

PromptScout

PromptScoutは、ChatGPT、Gemini、Google AI Overviews、Perplexityで自社や競合がどう言及されるかを追跡し、ソース分析とサイト監査を組み合わせて、次に直すべき内容・訴求・サイト対応を判断できます。

Sleek Analytics icon

Sleek Analytics

Sleek Analyticsは、Cookieバナー不要で導入も簡単なプライバシー重視のWeb解析ツール。リアルタイム訪問者追跡、Core Web Vitals、収益アトリビューションに対応。