すでに OpenTelemetry を使うチーム向け
すべての exporter はそのまま。release 検出を追加。
Collector には接続済み trace、runtime metric、service identity、fan-out がすでにあります。全 destination を残し、Sixty を OTLP/HTTP exporter として追加すると、同じ telemetry が release detector になります。
何を測るか
- 接続された HTTP・RPC・DB span
- operation、dependency、latency 分布、self time、error、DB call、semantic attribute がある場合は row count を測ります。
- 有用な semantic histogram
- trace がない場合、HTTP・RPC duration histogram が低精度の baseline になります。
- runtime と pool の圧力
- CPU、memory、event loop、GC pause、DB pool pressure が bounded context になります。
- service・environment・release identity
- service.name、deployment.environment.name、deployment.revision または service.version が比較対象を決めます。
何を見つけるか
どれも1つ前のリリースと比較されます。だから検出結果は、日付ではなく変更を名指しします。
release 後に遅くなった endpoint
operation・release ごとに分布を比較し、全体の traffic spike を code regression と誤認しません。
DB path の仕事量増加
接続 DB span が call count、round trip、latency、row の変化を示します。
複数 operation の背後にある saturation
CPU、memory、event loop、GC、pool pressure が共通 resource 原因を裏付けます。
遅くなった、または失敗し始めた dependency
outbound span は dependency のままで、自分の self time に混ざりません。
比較できない telemetry
service.name 欠落は partial reject、release 欠落や固定は ingest state として表示します。
フィードに何が届くか
読むためのダッシュボードではありません。検出1件につきカード1枚。数値と、それを変えたリリースと、コーディングエージェントが修正を書くのに必要な証拠が付いています。
apps/otel-demo-app が生成。native agent なしで OTEL のみの 6 release を public receiver に送ります。
GET /checkoutserver span が遅くなり、同じ release で runtime saturation と pool pressure が上昇しました。
OTEL demo の 6 release
GET /checkout接続 DB span が downstream work 増加を示し、endpoint との関係を保持します。
OTEL demo の 6 release
導入方法
既存 destination の隣に exporter を一つ追加します。receiver、processor、sampling、redaction、exporter を置き換えず、Sixty 用 log pipeline は追加しません。
exporters:
otlphttp/sixty:
endpoint: https://ingest.sixty.sh
headers:
Authorization: "Bearer ${env:SIXTY_OTEL_KEY}"
compression: gzip
retry_on_failure:
enabled: true
service:
pipelines:
traces:
exporters: [your_existing_exporter, otlphttp/sixty]
metrics:
exporters: [your_existing_exporter, otlphttp/sixty]設定を検証し Collector だけ再起動します。異なる二つの release で traffic を送り、check_service で確認します。
できないこと
- OTEL は native agent と同等ではありません。automatic function span、driver 固有 query 詳細、source attribution は generic trace から復元できません。優先順位は native、OTEL trace、OTEL metric です。
- Sixty は trace warehouse ではなく、bounded sketch と exemplar を保持します。trace search や dashboard は提供しません。
- log と任意 custom metric は partial success で拒否し、生の DB statement は保持しません。
- multi-service gateway で一つの service.name を全体に付けず、application ごとに identity と release を設定します。
これが理由でここに来たのなら
1ページで、数十回のデータベース呼び出し
以前は速かった一覧ページが、いまは1〜2秒かかる。しかもリストが伸びるほどひどくなる。個々のクエリを確認すると、どれも問題なさそうに見える。10件なら平気で、100件だと駄目。.
自分には速く、ほかの全員には遅い
サイトが遅いという声が続く。自分の環境では遅くなく、検証環境でも遅くなく、走らせた合成テストはすべて緑で返ってくる。報告は本物なのに、1件も再現できない。.
ページは開くのに、中身が空
誰かがページを開くと、何もありません。エラーメッセージも、止まったままの読み込み表示も、コンソールの赤字もない — 以前は行があった場所が空の一覧になっている。再読み込みしても直らず、自分のアカウントでは問題なく動きます。.
最後の変更が何をしたのか、確かめてください。
試してみる別のものを作っていますか? Node のサービス、Python のサービス、Go のサービス のページもあります — 見えるものが違うので、内容も違います。