Skip to content
sigiro

自らを修復するソフトウェアのためのデータレイヤー。

OpenTelemetry を sigiro に送るだけです。サービスに障害が起きると、順位付けされた結果、疑わしいデプロイ、そして各結果の元になったクエリが返ります。

factory loop · five stages
検出, step 1 of 5

検出 · sigiro

$ sigiro anomalies

SERVICE SIGNAL BASELINE NOW SHIFT INCIDENT

checkout error_rate 0.4% 19.2% +0.96 checkout@18:35

checkout latency_p95 180ms 30.0s +0.99 checkout@18:35

2 shifts · 1 incident · since 18:35

診断 · sigiro

$ sigiro diagnose checkout

suspect deploy 9f2c1ab, landed 18:33

failing POST /api/orders

failure mode timeout 246 · server_error 6

errors_total 1284

drill_down_sql SELECT trace_id, duration, status_message

FROM sigiro_spans WHERE service_name = 'checkout' …

修正 · あなたのエージェント

$ claude "checkout times out since 9f2c1ab"

read src/orders/upstream.ts

edit src/orders/upstream.ts +4 −1

test 42 passed

push fix: bound the orders upstream call at 5s

確認 · あなたのパイプライン(sigiro の根拠を使用)

$ sigiro anomalies --service checkout

SERVICE SIGNAL BASELINE NOW SHIFT INCIDENT

no shifts · checkout · last 7d

学習 · あなたのメモリ

$ cat playbooks/checkout-upstream-timeout.md

## checkout · upstream timeout

detected error_rate +0.96, latency_p95 +0.99

cause unbounded upstream call, shipped in 9f2c1ab

fix 5s deadline on the orders client

watch the same shape on any service calling orders

自分で動かせば無料です。sigiro がデータを当社に送ることはありません。

使い方

4 つのステップ。 接続し、質問し、相関させ、検証します。

OpenTelemetry を sigiro に送ります。質問は 1 つです。以下の各ステップは 1 つのシェルセッションです。

接続, step 1 of 4
接続1 of 4
$ curl -fsSL https://sigiro.com/install | sh
installed ~/.local/bin/sigiro
$ sigiro serve &
[1] 41802
listening on 4317, 4318, 9999
$ export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
$ export OTEL_SERVICE_NAME=checkout
$ npm start &
[1] 41823
checkout listening on :3000
$ sigiro status
ready · OTLP 4317 and 4318 · service checkout · 18,402 spans in 5 min
$

sigiro は標準の OTLP を標準のポートで受け取ります。

$ curl -fsSL https://sigiro.com/install | sh
installed ~/.local/bin/sigiro

$ sigiro serve &
[1] 41802
listening on 4317, 4318, 9999

$ export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318
$ export OTEL_SERVICE_NAME=checkout
$ npm start &
[1] 41823
checkout listening on :3000

$ sigiro status
ready · OTLP 4317 and 4318 · service checkout · 18,402 spans in 5 min

$ curl -sX POST localhost:9999/v1/diagnose -d '{"service":"checkout"}'
{
  "summary": "two signals moved together on checkout at 18:35",
  "suspect": "deploy 9f2c1ab, landed 18:33",
  "failing": "POST /api/orders",
  "how": { "timeout": 246, "server_error": 6 },
  "errors_total": 1284,
  "query": "SELECT * FROM spans WHERE service = 'checkout' AND ..."
}

$ cat models.sql
SELECT model, count(*) AS calls, max(duration) AS slowest
FROM spans JOIN logs USING (trace_id)
WHERE service = 'checkout' AND status = 'error'
GROUP BY model ORDER BY slowest DESC

$ sigiro query --sql-file models.sql
MODEL           CALLS  SLOWEST
gpt-5.2-mini      246    30.0s
claude-haiku-4.6   31     2.1s

$ curl -s localhost:9999/v1/diagnose -d '{"service":"checkout"}' > answer.json
$ jq .operation_summaries[0] answer.json
{
  "operation": "POST /api/orders",
  "errors": 246,
  "error_rate": 0.19,
  "drill_down_sql": "SELECT trace_id, duration, status_message FROM …"
}

$ jq -r .operation_summaries[0].drill_down_sql answer.json > drill.sql
$ sigiro query --sql-file drill.sql
TRACE_ID       DURATION  STATUS_MESSAGE
9f2c1ab4e77d      30012  context deadline exceeded
3b81fe0a2c56      30004  context deadline exceeded
c40d9e73aa18      29997  context deadline exceeded

01

発見。 エージェントは手助けなしで API の記述を読み取ります。

1 つの公開ドキュメントが、すべてのエンドポイントを記述しています。

GET /openapi.json · 公開、キー不要
[
  "/v1/anomalies",
  "/v1/diagnose",
  "/v1/query",
  "/v1/services",
  "/v1/traces/{trace_id}"
]

得られるもの

移行は不要です。 sigiro は、あなたが使っているツールに接続します。

テレメトリの送信元

  • OpenTelemetry
  • Node.js
  • Python
  • Go
  • Java
  • .NET
  • Ruby
  • Rust
  • Claude Code
  • Codex
  • Vercel AI SDK
  • LangChain
  • Ollama

実行環境

  • Docker
  • Kubernetes
  • Fly.io
  • Railway
  • Render
  • Cloudflare

読み取るツール

  • Claude Code
  • Cursor
  • Codex
  • SQL を扱えるものすべて
自分で検証できます
各結果には、その結果を生んだクエリが含まれます。
メンテナンスは不要です
しきい値もルールも設定しません。sigiro は各サービスの履歴を使います。
5 分で導入できます
コマンド 1 つと環境変数 2 つだけです。コードは変更しません。
自分で動かせば無料です
ホスト単位、ユーザー単位、データ量のいずれにも料金はかかりません。運用を任せたい場合はご相談ください。
データは手元に残ります
sigiro はご自身のサーバーにインストールします。sigiro が開発元へデータを送ることはありません。
sigiro は sigiro を監視します
sigiro は自身のテレメトリを sigiro に送ります。私たちはこの方法で自分たちの障害を見つけています。