asopi tech
asopi techIndie Developer

Observability Platform

Alopex OTel

保存とダッシュボードを1つの製品に

OpenTelemetryの周辺は、取り込み・保存・可視化がそれぞれ別のプロダクトに分かれています。どう組むかは環境ごとに違い、決まった正解もありません。Alopex OTelはその一式をワンパッケージにまとめます。組み込みの単一プロセスから複数ノードまで、同じ画面と同じクエリ言語のままスケールします。

OpenTelemetry まわりに散らばる取り込み・保存・可視化をワンパッケージにまとめる。

構想OSS
起動するプロセス
1
ダッシュボード
内蔵

Key points

  • 取り込み・保存・可視化を、組み合わせを選ばずに揃えられる
  • ダッシュボードは別途構築せず、同じプロセスに内蔵
  • 規模が変わっても画面とAPIが変わらない
observabilityopentelemetryrust

Challenge

規模が変わると可観測性は作り直しになる

1台で始めた構成と複数ノードで運用する構成は別物です。プロダクトも画面もクエリ言語も入れ替わります。Alopex OTelが挑むのは、組み込みからクラスタまで同じ画面と同じクエリで通すことです。

  • 使い始める前に、何をどう組むかを決める仕事がある
  • 規模が変わると、構成もダッシュボードも作り直しになる
  • 移行のたびに、貯めたデータをどうするか考えることになる

可観測性は取り込み・保存・可視化を組み合わせて作ります。組み合わせ方は環境ごとに違い、規模が変わるとまた選び直しになります。

Alopex OTelは一式を1つのバイナリに収めます。ダッシュボードは同じプロセスに内蔵します。組み込みの単一プロセスから複数ノードまで、同じ画面と同じクエリ言語のままです。

中身はメトリクスがSkulk、トレースとログがTrail、規模の違いを吸収する論理ルーターがChirpsです。Chirpsはプロセス内呼び出しとネットワーク越しを透過的に振り分けるので、組み込みから分散へ移っても呼び出す側は変わりません。

1バイナリのままノードを増やせる

取り込みから可視化までを1製品に収めます。組み込みの単一プロセスで始め、ローカルサーバー、2〜3ノード、複数ノードへ進んでも、見る画面もAPIもクエリ言語も変わりません。

  • 起動するプロセスは1つ、繋ぎ込みの設定は不要
  • 保持ポリシーが1箇所にまとまる
  • 規模を変えても、覚え直すものがない
起動するプロセス
1
スケール時の画面変更
なし

Capabilities

4つの規模

同じ画面と同じクエリ言語のまま、規模だけを変えられます。

組み込み

単一プロセスのアプリケーション向け

  • アプリケーションに同梱して、外部プロセスを立てない
  • 自分のアプリの中で完結して可観測性を持てる

ローカルサーバー

開発環境、小さなチーム向け

  • 1台に立てて、複数のアプリから送る
  • ダッシュボードは同じプロセスに内蔵

2〜3ノード

冗長性が要り始めた段階向け

  • ノードを足すだけで広げられる
  • 構成を組み直す必要がない

複数ノード

本番ワークロード向け

  • 規模が変わっても画面とAPIが変わらない
  • 貯めたデータを移し替えずに済む

Features

主要機能

取り込みから可視化までを1つに収めるために備えている機能。

内蔵ダッシュボード

可視化は同じプロセスの中にあります。別に構築して各ストレージへ接続し直す作業がありません。

Prometheus互換のクエリAPI

既存のクエリと連携先をそのまま使えます。規模を変えても同じ言語のままです。

メトリクスとトレース・ログを1箇所に

種類ごとにストレージを分けません。同じ画面から横断して追えます。

保持ポリシーが1箇所

設定も保持期間も1つにまとまります。プロダクトごとに別の書き方を覚える必要がありません。

組み込みから分散まで透過

呼び出し側を変えずに規模を移せます。プロセス内でもネットワーク越しでも同じように動きます。

Tech Stack

技術スタック

Alopexファミリーの部品を組み合わせています。

メトリクス

Alopex Skulk

Arrow + ParquetPrometheus Remote Writev0.3.0リリース済み

トレース・ログ

Alopex Trail

書き込みにスキーマを要求しない型が食い違っても捨てない読む側が型を選ぶ

ルーティング

Chirps

SWIM + QUICプロセス内とネットワークを透過的に扱う

Status

開発状況

メトリクスの経路はSkulk v0.3.0で動いており、Prometheus Remote Writeで取り込めます。ダッシュボード、Trailによるトレース・ログ、スケールアウトはこれからです。

公開リソース

最新の資料・コード・コミュニティ導線をまとめています。

Get Involved

いま何を組み合わせて運用していますか

取り込み・保存・可視化のどこに手間がかかっているか。実際の構成の話が、どこを先に作るかの判断に効きます。