OpenAICloudflare Developer Platform2026/02/24 0:00

Pipelines, Workers - Dropped event metrics, typed Pipelines bindings, and improved setup

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

Pipelines/Workers:破棄イベントの可視化、型付きバインディング、セットアップ改善

Key Points

  • 破棄イベントの詳細メトリクス追加
  • wranglerで型付きPipeline生成
  • セットアップの自動化と検証改善

Summary

Cloudflare Pipelinesで、ストリームイベントがシンクに到達できず破棄される原因を特定しやすくする新機能が追加されました。主な改善点は(1)破棄イベントの詳細メトリクスとダッシュボード、(2)wranglerで生成される型付きPipelineバインディングによるコンパイル時チェック、(3)セットアップ作業を自動化する簡易セットアップモードです。エンジニアは問題の検出から修正までのサイクルを短縮できます。

Key Points

  • 破棄イベントの可視化

    • スキーマ不一致で受け入れられたイベントが配信時に破棄される挙動をダッシュボードとメトリクスで可視化。
    • 新しいGraphQLデータセット pipelinesUserErrorsAdaptiveGroups でプログラム的に問い合わせ可能。エラー分類は missing_field, type_mismatch, parse_failure, null_value 等。
    • 実務上:まず該当パイプラインと時間範囲でエラーを集計し、頻出の errorType を起点にソース側のスキーマを修正する。
  • 型付き Pipelines バインディング

    • 既存は汎用型 Pipeline<PipelineRecord> だったが、wrangler types 実行でパイプライン固有の TypeScript 型が生成され、必須フィールドや型不一致をコンパイル時に検出可能に。
    • 実務上:Worker側の送信コードを型に従わせてデプロイ前に型エラーを排除することで、破棄イベントの発生を減らす。
  • セットアップの改善

    • wrangler pipelines setup に簡易セットアップモードを追加。推奨デフォルトを適用し、R2バケット作成やR2 Data Catalog有効化を自動で行う(存在しない場合)。
    • セットアップ中のバリデーションエラーはプロセスを最初からやり直す必要がなく、対話的にリトライ可能。
    • 実務上:新規パイプライン構築の工数が削減され、初期設定ミスの復旧が容易になる。

Actionable steps

  • 破棄イベントの原因特定:pipelinesUserErrorsAdaptiveGroups でエラーを集計し、errorTypeごとに上位原因を特定する。
  • ワーカー側保護:wrangler types を導入して型付きバインディングを生成し、送信データを型で検証する。
  • 簡易導入:新しい環境では wrangler pipelines setup(簡易モード)を使い、必要なR2設定を自動化する。

参照:User error metrics、Typed Pipeline bindings、Getting started guide(それぞれ公式ドキュメントを参照してください)。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

Pipelines、Workers — ドロップされたイベントのメトリクス、型付きPipelinesバインディング、およびセットアップの改善

概要

Cloudflare Pipelines は Workers や HTTP エンドポイントからストリーミングデータを取り込み、SQL で変換して R2 に Apache Iceberg テーブルとして書き込みます。本日、ストリーミングイベントがドロップされる理由の可視化、データ品質問題の早期検出、Pipelines のセットアップ時間短縮を目的とした 3 つの改善をリリースしました。

ドロップされたイベントのメトリクス

ストリームイベントが期待されるスキーマと一致しない場合、Pipelines は取り込み時に受け入れますが、シンクへ配信しようとした際にドロップされます。この問題の根本原因を特定しやすくするため、新しいダッシュボードと詳細なエラーメッセージを含むメトリクスを導入しました。ドロップされたイベントはプログラムからも新しい datasets: pipelinesUserErrorsAdaptiveGroups を通じて照会できます。

このデータセットは失敗を具体的なエラータイプごと(missing_field、type_mismatch、parse_failure、null_value)に分類するため、問題を発生源までたどれます。

クエリ例(GraphQL):

query GetPipelineUserErrors ( $accountTag : String ! $pipelineId : String ! $datetimeStart : Time ! $datetimeEnd : Time ! ) { viewer { accounts( filter : { accountTag : $accountTag }) { pipelinesUserErrorsAdaptiveGroups( limit : 100 filter : { pipelineId : $pipelineId datetime_geq : $datetimeStart datetime_leq : $datetimeEnd } orderBy : [ count_DESC ] ) { count dimensions { errorFamily errorType } } } } }

主なエラータイプ:

  • missing_field
  • type_mismatch
  • parse_failure
  • null_value

完全なディメンション一覧、エラータイプ、追加のクエリ例は「User error metrics」を参照してください。

型付き Pipelines バインディング

これまで Worker から Pipeline にデータを送る際は汎用の Pipeline<PipelineRecord> 型が使われており、フィールド名の誤りや型の不一致などのスキーマ不整合は実行時にドロップイベントとしてしか検出されませんでした。

wrangler types を実行すると、Pipeline バインディング向けにスキーマ固有の TypeScript 型が生成されるようになりました。TypeScript により、必須フィールドの欠落やフィールド型の不一致はデプロイ前のコンパイル時に検出できます。

TypeScript の例:

declare namespace Cloudflare {
  type EcommerceStreamRecord = {
    user_id: string;
    event_type: string;
    product_id?: string;
    amount?: number;
  };
  interface Env {
    STREAM: import("cloudflare:pipelines").Pipeline<Cloudflare.EcommerceStreamRecord>;
  }
}

詳細は「Typed Pipeline bindings」を参照してください。

Pipelines のセットアップ改善

新しい Pipeline のセットアップはこれまで複数の手順を要していました:R2 バケットの作成、R2 Data Catalog の有効化、API トークンの生成、フォーマット/圧縮/ロールリングポリシーの個別設定など。

wrangler pipelines setup コマンドは、推奨されるデフォルトを適用する Simple setup モードを提供するようになり、必要に応じて R2 バケットを自動作成し、R2 Data Catalog を有効化します。セットアップ中に発生したバリデーションエラーはプロセス全体を再起動するのではなく、インラインで再実行できるようになりました。

フルの手順は「Getting started guide」を参照してください。


参照:

  • User error metrics
  • Typed Pipeline bindings
  • Getting started guide

© 2026 Cloudflare, Inc.