mcpField
T
turbo-operations

turbo-operations

github.com/goldsky-ioデータ・データベース124.1k 回インストール今日更新
リポジトリ

turbo-operations について

turbo-operationsは、Goldsky Turboパイプラインを運用・監視する人向けのリファレンススキルです。ライフサイクル操作、監視、ジョブモードの制約、一般的なエラーへの対処をまとめています。

主な機能

  1. 01パイプラインのライフサイクルコマンドを参照
  2. 02リアルタイムデータ、ノード、ログの確認
  3. 03ストリーミングとジョブモードの違いを説明
  4. 04一般的なエラーとトラブルシューティングを整理
  5. 05ログ分析スクリプトの使い方を提示

活用シーン

  1. 01パイプラインの一時停止、再開、再起動、削除方法の確認
  2. 02パイプラインのデータとログの監視
  3. 03ジョブモードで可能な操作の確認
  4. 04エラーの原因候補と対処方法の調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/goldsky-io/goldsky-agent --skill turbo-operations

インストール後、Claude Code で/turbo-operationsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

data/
error-patterns.json
evals/
trigger-eval.json
scripts/
analyze-logs.sh

詳細

Turbo パイプラインの運用

Turbo パイプラインを実行するためのライフサイクルコマンド、監視、エラーリファレンスです。これは参照用です。動作しなくなったパイプラインを対話形式でトラブルシューティングするには、/turbo-doctor を使用してください。新しいパイプラインを構築するには、/turbo-builder を使用してください。

パイプラインの状態

状態説明
runningパイプラインがデータを処理中です
startingパイプラインを初期化中です
pausedパイプラインは一時停止中です(レプリカ数は 0)
stoppedパイプラインは実行されていません(手動停止)
errorパイプラインでエラーが発生しました
completedジョブモードのパイプラインが範囲の処理を完了しました

ストリーミングモードとジョブモードのライフサイクル

操作ストリーミングパイプラインジョブモードのパイプライン(job: true)
一覧表示running/paused と表示されますrunning/completed と表示されます
一時停止対応しています対応していません
再開対応しています対応していません
再起動対応しています対応していません。削除してから適用してください
削除対応しています対応しています(完了から約 1 時間後に自動クリーンアップ)
適用インプレースで更新します先に削除してから再適用する必要があります
ジョブモードのパイプラインのライフサイクル

ジョブモードのパイプライン(job: true)は、1 回限りのバッチ処理です。

  1. 開始 — start_at から end_block までのデータを処理します
  2. 実行 — 範囲が限定されたデータを処理します
  3. 完了 — 範囲の処理が完了すると自動的に停止します
  4. 自動クリーンアップ — 完了から約 1 時間後に自動的に削除されます

一時停止、再開、再起動はできません。再デプロイする前に削除する必要があります。

ライフサイクルコマンド

パイプラインを一覧表示する
goldsky turbo list
パイプラインを一時停止する

削除せずに処理を一時的に停止します。後で再開できるよう、すべての状態を保持します。

goldsky turbo pause <pipeline-name>
パイプラインを再開する

一時停止中のパイプラインを再開します。再開できるのは paused 状態のパイプラインだけです。

goldsky turbo resume <pipeline-name>
パイプラインを再起動する

実行中または一時停止中のパイプラインのポッド再起動を実行します。

goldsky turbo restart <pipeline-name>
# To clear all checkpoints and reprocess from the beginning:
goldsky turbo restart <pipeline-name> --clear-state
パイプラインを削除する

パイプラインを完全に削除します。すべてのチェックポイントが失われます。シンクにすでに書き込まれたデータは保持されます。

goldsky turbo delete <pipeline-name>
削除して再作成する(新規開始)
goldsky turbo delete my-pipeline
goldsky turbo apply my-pipeline.yaml

チェックポイントの動作

  • パイプラインを削除すると、そのチェックポイントは完全に削除されます
  • 同じ名前で再作成すると、チェックポイントを復元せずに新規開始します
  • チェックポイントを保持するには、削除して再作成する代わりに apply を使って更新してください
  • チェックポイントの状態はソース名にひも付いています。ソース名を変更すると、そのチェックポイントはリセットされます
  • チェックポイントの状態はパイプライン名にひも付いています。パイプライン名を変更すると、すべてのチェックポイントがリセットされます

監視コマンド

操作コマンド
パイプラインを一覧表示するgoldsky turbo list
ライブデータを表示するgoldsky turbo inspect <name> -p
特定のノードを調べるgoldsky turbo inspect <name> -n <node> -p
ログを表示するgoldsky turbo logs <name>
ログを追跡するgoldsky turbo logs <name> --follow
タイムスタンプ付きでログを表示するgoldsky turbo logs <name> --timestamps
末尾の N 行を表示するgoldsky turbo logs <name> --tail N
N 秒前以降のログを表示するgoldsky turbo logs <name> --since N

goldsky turbo inspect のフラグ

フラグ短縮形説明
--print-pレコードを stdout に出力します
--topology-node-keys-nフィルターするノードキー(例:transform 名)をカンマ区切りで指定します
--buffer-size-bバッファーに保持するレコードの最大数(デフォルト:10000)

常に -p を使用してください。提案するすべての inspect コマンドに必ず含めてください。

ログ分析スクリプト

パイプラインのログをすばやく分析するには、ヘルパースクリプトを使用してください。

./scripts/analyze-logs.sh <pipeline-name>
./scripts/analyze-logs.sh <pipeline-name> --tail 100

このスクリプトは一般的なエラーパターンをチェックし、推奨事項とともに検出結果を報告します。

一般的なエラーパターン

詳しいエラーパターンと解決方法は data/error-patterns.json にあります。

エラーパターン考えられる原因修正方法
connection refusedデータベースに到達できないネットワーク/ファイアウォールの設定を確認します
authentication failed認証情報が正しくない正しい認証情報でシークレットを更新します
secret not foundシークレットがないgoldsky secret create でシークレットを作成します
SQL syntax errortransform の SQL が無効YAML の SQL を修正して再デプロイします
duplicate key主キーの衝突transform で主キーが一意になるようにします
script transform errorTypeScript のランタイムエラースクリプトのロジック、null の処理、戻り値の型を確認します
dynamic_table errorバックエンドへの接続の問題dynamic table のシークレット/テーブルが存在することを確認します
WASM execution failedサンドボックス内でスクリプトがクラッシュスクリプトをデバッグし、undefined へのアクセスを確認します
handler timeout外部 HTTP エンドポイントの応答が遅いtimeout_ms を増やすか、ハンドラーのエンドポイントを修正します
スクリプト transform の問題
問題修正方法
undefined のプロパティへのアクセスnull チェックを追加します:input.field ?? ''
戻り値の型が誤っている返されるオブジェクトが schema と完全に一致することを確認します
戻り値のフィールドが不足している返されるオブジェクトにすべての schema フィールドが含まれている必要があります
invoke is not a functionスクリプトで function invoke(data) を定義していることを確認します
BigInt エラー数値リテラルを直接使わず、BigInt() コンストラクターを使用します
Dynamic Table の問題
問題修正方法
テーブルが見つからないデプロイ前に PostgreSQL でテーブルを作成します
チェックで一致するものがないバッキングテーブルにデータが存在することを確認します
データが古いpostgres バックエンドの場合、行が実際に存在することを確認します
メモリの逼迫大きな in_memory テーブルは postgres バックエンドに切り替えます

トラブルシューティングのクイックリファレンス

症状考えられる原因簡単な解決方法
データが流れてこないstart_at: latest新しいデータを待つか、earliestを使用します
認証に失敗する認証情報が間違っている正しいパスワードでシークレットを更新します
接続が拒否されるネットワーク/ファイアウォールホストを確認し、Goldsky の IP を許可リストに追加します
ストレージの上限を超えたNeon の無料枠(512MB)プランをアップグレードするか、データを削除します
SQL エラー変換構文が正しくないまず YAML を検証します
パイプラインが見つからない名前が一致しないgoldsky turbo listを実行して名前を確認します
権限が拒否されるロールの権限が不十分プロジェクトのロールが Editor または Admin か確認します
pipeline already existsジョブモードの古い設定先に削除してから、再適用します
ジョブを一時停止/再開できないジョブモードの制限ジョブパイプラインは一時停止/再開に対応していません
ジョブを再起動できないジョブモードの制限削除してから再適用してください
inspect に接続できないパイプラインが実行されていないgoldsky turbo listでステータスを確認します
ログが空パイプラインが起動したばかりデータを待つか、start_atを確認します
TUI の接続が切れるパイプラインが中断された30 分以内に自動再接続されます。ステータスを確認してください

関連項目

  • /turbo-doctor — パイプラインの問題を対話形式で診断するスキル
  • /turbo-builder — 新しいパイプラインを構築してデプロイします
  • /turbo-pipelines — YAML 設定とアーキテクチャのリファレンス

コメント