<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Sentry on plzhans blog</title><link>https://blog.plzhans.com/ja/tags/sentry/</link><description>Recent content in Sentry on plzhans blog</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Wed, 16 Sep 2026 14:55:00 +0000</lastBuildDate><atom:link href="https://blog.plzhans.com/ja/tags/sentry/index.xml" rel="self" type="application/rss+xml"/><item><title>Sentry のトレースヘッダー - 出ていくすべてのリクエストに付く理由と tracePropagationTargets</title><link>https://blog.plzhans.com/ja/posts/129-sentry-trace-headers-trace-propagation-targets/</link><pubDate>Wed, 16 Sep 2026 14:55:00 +0000</pubDate><guid>https://blog.plzhans.com/ja/posts/129-sentry-trace-headers-trace-propagation-targets/</guid><description>&lt;p&gt;&lt;a href="https://blog.plzhans.com/posts/129-sentry-trace-headers-trace-propagation-targets/assets/1_3dd22a0f-7e83-81f2-a997-f8cc7e65a827.jpg" data-pswp-width="1376" data-pswp-height="768" target="_blank" rel="noopener" aria-label="アプリが外部 API へ送る HTTP リクエストの流れの途中に Sentry が割り込み、baggage ヘッダーを注入する様子"&gt;&#10; &lt;picture&gt;&#10; &lt;source srcset="https://blog.plzhans.com/posts/129-sentry-trace-headers-trace-propagation-targets/assets/1_3dd22a0f-7e83-81f2-a997-f8cc7e65a827_hu_96dbd97b24bd7f9.webp" type="image/webp"&gt;&#10; &lt;img src="https://blog.plzhans.com/posts/129-sentry-trace-headers-trace-propagation-targets/assets/1_3dd22a0f-7e83-81f2-a997-f8cc7e65a827_hu_6ea779b396b4ca93.jpg" alt="アプリが外部 API へ送る HTTP リクエストの流れの途中に Sentry が割り込み、baggage ヘッダーを注入する様子" width="1200" height="670" loading="eager" fetchpriority="high"&gt;&#10; &lt;/picture&gt;&#10; &lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="概要"&gt;概要&lt;/h2&gt;&#10;&lt;p&gt;Sentry を有効にすると、エラー収集だけが付いてくるわけではありません。分散トレーシングも一緒に有効になり、そのときから出ていくすべてのリクエストにトレースヘッダーが付きます。&lt;/p&gt;&#10;&lt;p&gt;アプリのコードにはそんな行はありません。ログにも残りません。ですから問題が起きても、コードをいくら読んでも見えません。&lt;/p&gt;&#10;&lt;p&gt;この記事では、そのヘッダーが何なのか、どう確認するのか、そして付く範囲をどう絞るのかを整理します。&lt;/p&gt;&#10;&lt;p&gt;エラーやバグを追跡する用途で Sentry を使っているところは多いです。アプリケーションで発生した例外を集め、いつどこで何回起きたのかを見せてくれるツールです。数行入れるだけで組み込めて、言語やフレームワークを選ばないため、標準で入れておくケースがよくあります。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://docs.sentry.io/product/sentry-basics/" target="_blank" rel="noopener noreferrer"&gt;Sentry Docs - Sentry Basics&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;ヘッダーを付けている側はエラー収集ではありません。Sentry を有効にすると分散トレーシングが一緒に付いてきます。出ていくリクエストごとにヘッダーを載せているのはそちらです。&lt;/p&gt;&#10;&lt;h2 id="何のための機能なのか"&gt;何のための機能なのか&lt;/h2&gt;&#10;&lt;p&gt;このヘッダーは分散トレーシングのためのものです。一つのリクエストが複数のサービスを経由するとき、その道のりを一つにまとめて見るために存在します。&lt;/p&gt;&#10;&lt;p&gt;サービス A が B を呼び、B がさらに C を呼ぶとします。ヘッダーがなければ三つはそれぞれ別々に記録を残します。A のレスポンスが遅かったことは分かっても、その原因が C だったことは分かりません。ヘッダーが trace_id を運ぶと、三つの記録が同じトレースにまとまります。&lt;/p&gt;&#10;&lt;p&gt;Sentry のドキュメントは目的をこう書いています。&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;track software performance and measure throughput &amp;amp; latency, while seeing the impact of errors across multiple systems&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;二つのヘッダーの役割は異なります。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;sentry-trace は位置を指します。&amp;lt;trace_id&amp;gt;-&amp;lt;span_id&amp;gt;-&lt;sampled&gt; の形です。このリクエストがどのトレースのどの地点なのかを教えます。&lt;/li&gt;&#10;&lt;li&gt;baggage は文脈を運びます。W3C が定めた標準ヘッダーで、Sentry はここに動的サンプリングで使う値を入れます。sentry-environment や sentry-release といったものです。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-plain" data-lang="plain"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;sentry-trace: 41c74c2ea9f2bfb184f86939de5b97aa-399b3e5cc8b83494-1&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;baggage: sentry-trace_id=41c74c2ea9f2bfb184f86939de5b97aa,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; sentry-environment=production,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; sentry-release=1.4.2,&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; sentry-sample_rate=0.2&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;サンプリングの判断を先頭のサービスで下し、後ろへ渡すのも baggage の仕事です。&lt;/p&gt;</description></item></channel></rss>