トンネルログは、cloudflared インスタンスと Cloudflare のグローバルネットワークの間、および cloudflared とオリジンサーバーの間のすべてのアクティビティを記録します。これらのログで、Cloudflare Tunnel の接続やパフォーマンスの問題を調査できます。サーバーに永続ログを保存する設定も、任意のクライアントマシンからリアルタイムログをストリーミングすることもできます。
オリジンサーバーにアクセスできる場合は、トンネル起動時に --loglevel フラグ でログを有効にできます。デフォルトでは、cloudflared はログを標準エラー(stderr)へ書き込み、サーバー上には保存しません。
各ログ行を JSON オブジェクトとして整形するには、run の前に --output json を追加します。
cloudflared tunnel --output json run <UUID>この形式は、Kubernetes のデプロイや、JSON を取り込むログ収集システムで便利です。
日常的な永続ログには、--log-directory <PATH> を付けて トンネルを実行 します。このフラグは、指定したディレクトリの cloudflared.log へログを書き込み、ファイルが 1 MB に達するとローテーションし、バックアップを最大 5 つ保持します。経過日数によるログ削除は行いません。
cloudflared tunnel --loglevel info --log-directory <PATH> run <UUID>短いトラブルシューティングや、別のツールがローテーションを管理している場合は、代わりに --logfile フラグ を使います。cloudflared は --logfile で指定したファイルをローテーションしません。両方のフラグを設定した場合は、--logfile が優先されます。
ダッシュボード、または cloudflared がインストールされた任意のマシンから、Cloudflare Tunnel のリアルタイムログを確認できます。リモートのログストリームを使えば、トンネルを動かしているサーバーに SSH で入る必要はありません。リモートログを取得するには、トンネルが稼働していてリクエストを受け取れる状態である必要があります。
ダッシュボードからトンネルログをストリーミングするには、次の手順を実行します。
-
Cloudflare ダッシュボードで Networking > Tunnels を開き、対象のトンネルを選択します。
Tunnels を開く ↗ -
Live logs タブを開きます。
-
Live を選択してストリーミングを開始します。
同じトンネルに対して複数の cloudflared インスタンス(レプリカ とも呼ばれます)を動かしている場合、接続中のすべてのレプリカのログが自動でストリーミングされ、ホスト名ごとにグループ化されます。どのホストマシンが各ログエントリを出したかを識別しやすくなります。
特定のレプリカにストリームを絞り込むには、Filter アイコンを選択し、Replicas セクションを展開します。Log Level と Event Type でも絞り込めます。
cloudflared デーモンは、アカウント内の任意のトンネルのログを、ローカルのコマンドラインへストリーミングできます。cloudflared はローカルマシンとオリジンサーバーの両方にインストールする必要があります。
cloudflared デーモンは、アカウント内の任意のトンネルのログをローカルのコマンドラインへストリーミングできます。ローカルマシンとオリジンサーバーの両方に cloudflared をインストールする必要があります。
-
ローカルマシンで、
cloudflaredを Cloudflare アカウントに認証します。cloudflared tunnel login -
特定のトンネルに対して
cloudflared tailを実行します。cloudflared tail <UUID>JSON メッセージをより構造化された形で見るには、出力を jq ↗ などのツールへパイプできます。
cloudflared tail --output=json <UUID> | jq .
イベント種別(--event)、イベントレベル(--level)、またはサンプリングレート(-sampling)でログを絞り込むと、オリジンからストリーミングされるログ量を減らせます。オリジンへの負荷、とくに常時高負荷のオリジンへの影響を抑えられます。例:
cloudflared tail --level debug <UUID>| フラグ | 説明 | 指定できる値 | デフォルト値 |
|---|---|---|---|
--event |
イベント / リクエストの種別で絞り込みます。 | cloudflared, http, tcp, udp |
すべてのイベント |
--level |
このレベル以上のログを返します。サーバー側の --loglevel 設定とは独立して動作します。 |
debug, info, warn, error, fatal |
debug |
--sampling |
全ログのうち一部をサンプリングします。 | 0.0 から 1.0 の数値 |
1.0 |
同じトンネルで複数の cloudflared インスタンスを動かしている場合(レプリカ とも呼びます)、ログをストリーミングするインスタンスを指定する必要があります。
-
Cloudflare ダッシュボードで Networking > Tunnels を開き、対象のトンネルを選択します。
Tunnels を開く ↗ -
確認したい
cloudflaredインスタンスの Connector ID を探します。 -
cloudflared tailで Connector ID を指定します。cloudflared tail --connector-id <CONNECTOR ID> <UUID>
- ログセッションは 1 時間だけ開いたままになります。ログシステムは多少のパフォーマンスオーバーヘッドを伴うため、この上限によってトンネルのエンドツーエンド遅延への長期的な影響を抑えます。
- スループットの高いトンネルでログをストリーミングする場合、Cloudflare は意図的にログ配信よりサービスの安定を優先します。欠落するログを減らすには、取得するログを減らして ください。すべてのログを確認するには、リモートストリーミングではなく サーバーでログを確認 してください。