2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

TROCCO®Advent Calendar 2024

Day 15

TROCCO®ワークフロー変更履歴キー名早見表

Posted at

はじめに

本記事はTROCCOアドベントカレンダー2024 15日目の記事です。

概要

先日、ワークフローに変更履歴機能が追加されました。機能としてはシンプルで変更内容をyaml形式でどんな変更をしたかを可視化できる機能となります。また過去の状態に戻す復元機能もあります。

こんな感じ
スクリーンショット 2024-10-23 22.42.40.png

yamlのキー名が画面から設定する名前と違いどこを変えたのか(多分このあたりかな、というのは雰囲気で分かるとは思いつつ)ぱっと見わからない人もいると思いますので、早見表を用意しました。

早見表

yamlトップレベル

キー名 画面上の名前 スクショ
id ワークフローの定義ID(urlにあるID)
name ワークフロー名  スクリーンショット 2024-10-23 22.52.12.png
description メモ スクリーンショット 2024-10-23 22.52.26.png
max_parallelism タスク同時実行上限数 スクリーンショット 2024-10-23 22.52.49.png
stop_on_error_task_job タスクのエラーハンドリング スクリーンショット 2024-10-23 23.02.05.png
timeout_min タイムアウト設定(無効の場合0となります) スクリーンショット 2024-10-23 22.53.05.png
retry_count リトライ回数 スクリーンショット 2024-10-23 22.56.03.png
retry_interval_min hoge分経過後にリトライする(リトライしない場合は0となります) スクリーンショット 2024-10-23 22.58.27.png
skip_concurrent_execution ジョブの重複実行 スクリーンショット 2024-10-23 22.53.32.png

tasks階層

キー名 画面上の名前 スクショ
x ワークフロータスクのx座標
y ワークフロータスクのy座標
name ワークフロータスクの名前。 データチェック系のタスク、HTTPリクエスト、Slack通知、Tableauデータ抽出でタスク名を入力することになりますが、そこで入力した名前が入ります。転送設定やデータマート、ワークフロー定義の名前はここには表示されません。
definition_model_id 転送設定、マネージド転送、データマート、ワークフロー、dbt連携、TROCCOエージェントの定義のIDが入ります。それ以外のタスクの場合項目自体がないです
definition_model_type 後述する表で一覧を書いています。
src_dependencies そのタスクが依存されているタスク番号
parallel_execution_enabled 並列実行 スクリーンショット 2024-10-30 20.34.21.png
error_count_limit_enabled エラーハンドリング。「エラー発生時に処理を停止」または「上限回数までエラーをスキップ」にするとtrueになる。「すべてのエラーをスキップ」でfalse スクリーンショット 2024-10-30 20.37.11.png
error_count_limit エラーハンドリング。「上限回数までエラーをスキップ」を選択したときに出てくる回数の部分 スクリーンショット 2024-10-30 20.40.35.png

※definition_model_typeの一覧

definition_model_type 何を意味するか
trocco_transfer 転送設定
trocco_transfer_bulk マネージド転送
trocco_bigquery_datamart BigQueryデータマート
trocco_redshift_datamart Redshiftデータマート
trocco_snowflake_datamart Snowflakeデータマート
trocco_pipeline ワークフロー
trocco_dbt dbt連携
bigquery_data_check BigQueryデータチェック
snowflake_data_check Snowflakeデータチェック
redshift_data_check Redshiftデータチェック
slack_notify Slack通知
tableau_extract Tabueauデータ抽出
http_request HTTPリクエスト

各タスク固有のプロパティ

bigquery_data_check(Biguqeryデータチェック)

キー名 画面上の名前 スクショ
query クエリ スクリーンショット 2024-12-14 16.27.23.png
operator 条件。greater_equal(以上)
less_equal(以下)
greater(より大きい)
less(より小さい)
equal(等しい)
not_equal(等しくない)
スクリーンショット 2024-12-14 16.28.36.png
argument クエリ結果 スクリーンショット 2024-12-14 16.31.42.png
succeeded_on_null クエリ結果がNULLの場合に成功とする スクリーンショット 2024-12-14 16.32.16.png
bigquery_connection_id Google BigQuery接続情報

※カスタム変数の項目名については後述

snowflake_data_check(Snowflakeデータチェック)

※bigquery_data_checkと基本的には同じ。差分だけ記載。

キー名 画面上の名前 スクショ
warehouse ウェアハウス スクリーンショット 2024-12-14 16.35.23.png
snowflake_connection_id Snowflake接続情報

redshift_data_check(Redshiftデータチェック)

※bigquery_data_checkと基本的には同じ。差分だけ記載。

キー名 画面上の名前 スクショ
database データベース スクリーンショット 2024-12-14 16.37.18.png
redshift_connection_id Snowflake接続情報

slack_notify(Slack通知)

キー名 画面上の名前 スクショ
slack_channel_id 通知先 スクリーンショット 2024-12-14 16.39.36.png
slack_channel_id 通知先 スクリーンショット 2024-12-14 16.39.36.png
message メッセージ スクリーンショット 2024-12-14 16.39.47.png
ignore_error エラー条件
エラーにする: false
成功にする: true
スクリーンショット 2024-12-14 16.39.57.png

tableau_extract(Tableauデータ抽出)

キー名 画面上の名前 スクショ
tableau_connection_id Tableau接続情報 スクリーンショット 2024-12-14 17.44.00.png
tableau_task_id 更新対象、データソース、実行スケジュールから導出したtableau側で定義されているtask_id スクリーンショット 2024-12-14 17.45.00.png

http_request(HTTPリクエスト)

キー名 画面上の名前 スクショ
url URL スクリーンショット 2024-12-14 17.50.04.png
http_method HTTPメソッド スクリーンショット 2024-12-14 17.49.47.png
http_connection_id HTTP・HTTPS接続情報 スクリーンショット 2024-12-14 17.51.09.png
request_body HTTPリクエストボディ
POSTリクエストのみ利用可
スクリーンショット 2024-12-14 17.52.36.png
params HTTPパラメータ
マスキングを有効化すると変更履歴でも ***のように画面に表示はされなくなります。
スクリーンショット 2024-12-14 17.52.47.png
headers HTTPヘッダ  スクリーンショット 2024-12-14 17.52.54.png

trocco_transfer(転送設定)、

固有の設定はないです。すべての設定の詳細は転送設定で定義されているので、変更履歴にはdefinition_model_idで定義されたのIDを参照できるようにされるだけとなります。

trocco_transfer_bulk(マネージド転送)

↑と同じ

trocco_bigquery_datamart(Bigqueryデータマート)

↑と同じ

trocco_redshift_datamart(Redshiftデータマート)

↑と同じ

trocco_snowflake_datamart(Snowflakeデータマート)

↑と同じ

trocco_pipeline(ワークフロー)

↑と同じ

trocco_dbt(Dbt連携)
↑と同じ

その他共通的な設定

カスタム変数

カスタム変数が設定できるタスクについてはそのtask配下にcustom_variable_settingsというkey名でカスタム変数についての変更履歴が閲覧できます。

キー名 画面上の名前 スクショ
name 変数名 スクリーンショット 2024-12-14 17.59.57.png
type データ型
string: 文字列
timestamp: キューイング時
timestamp_runtime: 実行時
スクリーンショット 2024-12-14 18.00.12.png
value
文字列のカスタム変数のみ利用可
スクリーンショット 2024-12-14 18.09.30.png
quantity
日時系のカスタム変数のみ利用可
スクリーンショット 2024-12-14 18.01.56.png
unit 単位
 日時系のカスタム変数のみ利用可
hour: 時間
date: 日
month: 月
スクリーンショット 2024-12-14 18.02.23.png
direction 前/後
 日時系のカスタム変数のみ利用可
ago: 前
later: 後
スクリーンショット 2024-12-14 18.02.45.png
format 日付フォーマット
 日時系のカスタム変数のみ利用可
スクリーンショット 2024-12-14 18.02.58.png
time_zone タイムゾーン
 日時系のカスタム変数のみ利用可
スクリーンショット 2024-12-14 18.03.11.png

カスタムループ設定

カスタム変数ループが設定できるタスクの場合、そのtask配下にcustom_variable_loop_settingというkey名でカスタム変数についての変更履歴が閲覧できます。

カスタム変数ループの種類は大きく文字列を指定してループ、日時の範囲に対してのループ、DWHへのクエリ結果に対してのループの3つあり、それぞれ出力される項目が違うので、それぞれまとめます。

文字列でのループ設定

以下のように文字列を直接指定するようなパターンです。
スクリーンショット 2024-12-14 18.14.29.png

キー名 画面上の名前 スクショ
実際のカスタム変数名 - スクリーンショット 2024-12-14 18.17.42.png
loop_type ループの種類(文字列でのループの場合、 string という値が入ります) スクリーンショット 2024-12-14 18.19.01.png
string_value 実際の指定した値 スクリーンショット 2024-12-14 18.21.02.png

以下の画像のように定義されます。
スクリーンショット 2024-12-14 18.21.48.png

期間(相対指定)でループ

キー名 画面上の名前 スクショ
実際のカスタム変数名 - スクリーンショット 2024-12-14 19.57.05.png
loop_type relative_range
interval ループ間隔
date: 1日
month: 1ヶ月
year: 1年
 スクリーンショット 2024-12-14 19.55.17.png
relative_range_start_value 期間 スクリーンショット 2024-12-14 19.55.48.png
relative_range_start_unit 期間
date: 日前
month: ヶ月前
year: 年前
スクリーンショット 2024-12-14 19.55.55.png
relative_range_end_value 期間 スクリーンショット 2024-12-14 19.56.05.png
relative_range_end_unit 期間
date: 日前
month: ヶ月前
year: 年前
スクリーンショット 2024-12-14 19.56.14.png
relative_range_offset_value - スクリーンショット 2024-12-14 19.56.30.png
relative_range_offset_unit date_ago: 日前
date_later: 日後
month_ago: 月前
month_later: 月後
year_ago: 年前
year_later: 年後
スクリーンショット 2024-12-14 19.54.39.png
time_zone タイムゾーン スクリーンショット 2024-12-14 20.04.59.png

履歴はこんな感じで見れます

スクリーンショット 2024-12-14 20.25.44.png

クエリ結果でループ

キー名 画面上の名前 スクショ
column_mapping -
クエリ結果の場合、クエリ結果のカラム順にカスタム変数に割り当てられます。その 順番のindexをkeyにしてvalueにカスタム変数名というjsonが変更履歴には表示されます。
スクリーンショット 2024-12-14 20.08.42.png
loop_type bigquery or snowflake or redshift
[bigquery or snowflake or redshift]_connection_id [Google BigQuery or Snowflake or Redshift ]接続情報 スクリーンショット 2024-12-14 20.08.54.png
query クエリ スクリーンショット 2024-12-14 20.09.02.png

おわりに

Have a nice Christmas🎄🎁

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?