定期的に実行ログをフェッチして分析
/monitoring/executions/{runId}/logsエンドポイントと/monitoring/executions/{runId}/logs/statusエンドポイントを使って、特定期間の実行ログをフェッチします。
- /monitoring/executions/{runId}/logsでPOSTメソッドを使って、特定期間のフルログとそのログにアクセスするためのトークンを生成します。このトークンの有効期限は生成から1時間です。
ログの完全性を確保できるよう、ログが必要な実行が完了したかどうかチェックし、APIコールを送信する前に30秒間待ちます。
- /monitoring/executions/{runId}/logs/statusでPOSTメソッドを使って、このログがダウンロード可能かどうかをチェックしてダウンロードURLを生成します。
始める前に
-
TMCトークンを生成:
- ユーザーの場合は、パーソナルアクセストークンを生成に従ってパーソナルアクセストークンを生成します。
- サービスアカウントの場合は、サービスアカウントトークンを生成に従ってサービスアクセストークンを生成します。
生成されたサービスアカウントトークンは30分後に期限切れになります。期限切れになった場合は、エンドポイントhttps://api.<env>.cloud.talend.com/security/oauth/tokenでPOSTメソッドを使って新しいトークンを生成します。トークンの生成に関する詳細は、サービスアカウントトークンを生成をご覧ください。
- 使用するユーザーまたはサービスアカウントが監視するタスクが属するワークスペースで、[Author] (作成者)、[Viewer] (ビューアー)、[Executor] (エグゼキューター)の各権限を持っていること。
- 監視が必要なタスク実行のIDがあること。
このIDは、[Task execution log] (タスク実行ログ)ページの[Task execution ID] (タスク実行ID)が相当します。このIDはまた、/processing/executables/tasks/{taskId}/executionsエンドポイントのGETコールを使って取得することもできます。
このタスクについて
この例では、Talend API Testerを使ってAPIリクエストを発行します。Talend API Testerの詳細は、Talend Cloud API Testerユーザーガイドをご覧ください。
手順
タスクの結果
自分の監視システムにこれらのAPIリクエストを統合することで、指定された時間範囲のフルログを定期的に生成およびダウンロードして分析できるようになります。
https://api.<env>.cloud.talend.com/processing/executables/tasks/{taskId}/executions
次に、各IDを/monitoring/executions/{runId}/logsエンドポイントと/monitoring/executions/{runId}/logs/statusエンドポイントに動的に渡し、使用するログを準備します。
最終的には、Talendジョブなどのプログラムを開発し、自分の監視システムでプロセス全体を自動化できるようになります。