プロダクト
Dagu サーバー 1 台を無料でモニタリング
Dagu コンソール で、ワークスペースごとに Dagu サーバー 1 台を無料でモニタリングできるようになりました。ヘルスと実行を一か所で確認でき、失敗や停止をメールで知らせます。Dagu v2.19.2 が必要です。
TL;DR Dagu コンソール で、ワークスペースごとに Dagu サーバー 1 台を無料でモニタリングできるようになりました。サーバーのヘルスと実行を一か所で確認でき、ワークフローが失敗したときやサーバーからのレポートが止まったときにメールが届きます。Dagu v2.19.2 に更新し、プランと機能 で 無料で接続 を選んでください。
Dagu サーバーはそれ単体で完結しています。自分のスケジューラーを動かし、自分の実行履歴を持ち、自分の Web UI を提供します。運用しやすい大きな理由ですが、同時に、見なくなりやすい理由でもあります。
ワークフローエンジンの Web UI を一日中開いている人はいません。火曜日に失敗し始めたジョブは、たいてい木曜日に、その出力を必要とした誰かによって見つかります。止まったスケジューラーはエラーすら出しません。予定された実行が、ただ起きなくなるだけです。
Dagu コンソール のモニタリングは、そのためのものです。サーバーがヘルスと実行を Dagu コンソール にレポートし、問題があれば Dagu コンソール がメールで知らせます。これまでは Team か Pro のプラン、または 14 日間のトライアルが必要でした。そのため、ライセンスなしの Community で動く大半の Dagu サーバーでは使えませんでした。今日からは、ワークスペースの最初の 1 台を無料でモニタリングできます。
できること
- サーバーの状態がひと目でわかる: レポートが届いているか、Dagu のバージョン、スケジューラー、実行中の実行、今日失敗したもの。
- ワークフローが失敗したらメール: 後の実行が成功したときにもう一度届きます。失敗し続けるワークフローは、実行ごとにメールを送るのではなく、アラートを 1 件開いたままにします。
- サーバーが静かになったらメール: レポートが 25 分間届かなかったときと、再びレポートしたときに届きます。
- 実行履歴と傾向: 直近 7 日間の実行と、7 日間または 30 日間のワークフローごとの実行数、成功率、所要時間。
サーバーから送られるもの
モニタリングは、サーバーの管理者がオンにするまでオフです。オンにすると、外向きの HTTPS でメタデータだけを送ります。
- ヘルス: Dagu のバージョン、OS とアーキテクチャ、プロセスの起動時刻、動作中のスケジューラーとコーディネーターの数。
- 実行状況(選んだ場合): 完了した実行ごとの DAG 名、実行 ID、ステータス、トリガー、時刻、失敗したステップの名前、そして実行中の実行。
ログ、出力、パラメーター、環境変数、ステップのコマンド、DAG の YAML、シークレットの値、エラーメッセージは送られません。サーバーへ外から接続することはなく、プランと機能 で最後のレポートの JSON をそのまま確認できます。
ワークフローは、Dagu コンソール に接続できるかどうかに関係なく、サーバー上で動き続けます。Dagu コンソール がワークフローを実行することはありません。
設定する
Dagu v2.19.2 以降の Community サーバーでは、プランと機能 に案内が表示されます。
- サーバーを Dagu v2.19.2 以降に更新します。
- 管理者として プランと機能 を開き、無料で接続 を選びます。シェルからは
dagu license activateでも同じことができます。 - ブラウザで Dagu コンソール が開きます。サインインするか、無料のアカウントを作成します。コードが Dagu に表示されたものと一致することを確認し、無料モニタリングで接続 を選びます。
- Dagu に戻り、ヘルスと実行状況 を選びます。
5 分以内に、Dagu コンソール の サーバー ページでサーバーが レポート中 と表示されます。以降、ワークスペースのオーナーと管理者にアラートメールが届きます。
コンテナで動かすサーバーには、Dagu コンソール の サーバー ページでサーバーキーを作成し、DAGU_LICENSE_KEY に設定して Dagu を起動します。Dagu のデータディレクトリは永続ストレージに置いてください。そうしないと、新しいコンテナが起動するたびに別のサーバーとして数えられます。
無料と有料
無料枠は、同じモニタリングを低めの制限で提供します。
| 無料 | トライアル、Team、Pro | |
|---|---|---|
| サーバー | ワークスペースごとに 1 台 | トライアルは 1 台、Team は 3 台、Pro は 15 台 |
| レポート | 5 分ごと | 60 秒ごと |
| サーバーが静かになったときのアラート | 25 分後 | 10 分後 |
| 1 日に保存する完了した実行 | 100 件 | 500 件 |
| 実行履歴 | 7 日間 | 14 日間 |
| インサイト | 7 日間または 30 日間 | 7 日間、30 日間、90 日間 |
| アラートメール | オーナーと管理者 | 追加したメンバーとアドレスにも |
無料のサーバーは Community のままです。シングルサインオン、ロールベースのアクセス制御、監査ログ、インシデントルーティング、3 つ目以降の API キーは使えません。無料モニタリングに v2.19.2 が必要なのもこのためです。それより前のリリースは Dagu コンソール のライセンスをすべて有料として扱うため、Dagu コンソール は古いサーバーに、無料で接続する前に更新するよう求めます。
トライアルやプランを始めると、サーバーはすぐにそちらへ移ります。Dagu は 1 時間ごとの次のチェックインで、または プランと機能 の 今すぐ確認 ですぐに、新しいライセンスを読み込みます。トライアルやプランが終わると、ほかのサーバーが無料枠を使っていなければ、サーバーは無料モニタリングに戻ります。モニタリングはベータ版のため、これらの制限は変わる可能性があります。
試してみる
サーバーを 1 台更新して接続し、1 週間そのままにしてみてください。設定の詳細はモニタリングのドキュメントにあり、サーバーは Dagu コンソール に表示されます。困ったことがあれば Discord で教えてください。
ジョブが止まったことは、誰かがその出力を必要とする前に知るのがいちばんです。
Written by
Daguプロジェクトのコントリビューター。
More from Yota Hamada