Docs

TMPL-OPS-001

定期レポート自動生成テンプレート

Opsintermediatelongverified: 2026-02

sanitized snapshot

Last synced: 2026-02-14

要約

定期レポート作成と配信の運用を、再現可能な手順として整理した。
監視と復旧を前提に、停止しない運用を優先した構成にしている。
共有可能な情報だけで構成し、秘匿情報は除外した。

決定事項

  • 作成処理と配信処理を分離して管理する
  • 失敗時の再実行ルールを事前定義する
  • 秘密値は設定領域で管理し本文には残さない

未決

  • 再実行の判断基準をどの運用単位で持つか
  • 通知の優先度をどう分類するか
  • 監視結果の保管期間をどう決めるか

次アクション

  • 実装担当: 処理分離と例外分岐をテンプレート化する
  • 運用担当: 再実行手順を定型化する
  • 監督担当: 監視項目のレビュー頻度を定義する

リスク

  • 配信前検証が弱いと誤配信につながる
  • 監視閾値が曖昧だと異常検知が遅れる
  • 再実行ルールがないと対応品質が不安定になる

参照ID

  • TMPL-OPS-001
  • CL-2026-02

概要

定期レポート(日次/週次/月次)のデータ集計から整形・配信までを自動化し、手作業を排除する。

対象ユーザー

  • 定期的にデータを集計しレポートを作成・送信している運用担当者
  • レポート作成に毎回同じ作業を繰り返しているチーム

前提条件

  • レポートに使用するデータソースへの読み取りアクセスがあること
  • 自動化ツールがスケジュール実行に対応していること
  • 配信先(メール受信者 or チャットチャンネル)が確定していること

構成(ノード/データフロー)

  1. スケジュールトリガー — Cron式で定期起動
  2. データ取得 — APIまたはDBクエリでraw dataを取得
  3. 集計・加工 — 必要な計算・フィルタ・ソートを実行
  4. テンプレート整形 — レポートフォーマットに整形
  5. 配信 — メール送信 or チャットツールへ投稿
  6. 実行ログ記録 — 成功/失敗をログに記録

セットアップ

Step 1: データソース接続

  • 自動化ツールにデータソースの認証情報を設定(値は環境変数に格納、記載禁止)
  • テスト接続で疎通確認
  • 取得クエリ/APIコールを作成し、期待するデータ形式を確認

Step 2: 集計ロジックの構築

  • Functionノードまたはコードノードで集計処理を記述
  • 集計結果のスキーマ(列名・型)を定義
  • テストデータで計算結果を検証

Step 3: レポート整形

  • HTMLメール or Markdown形式のテンプレートを作成
  • 動的値の埋め込み箇所を変数で指定
  • ヘッダー/フッターに「自動生成レポート」の旨を明記

Step 4: 配信設定

  • メール送信: SMTP設定 or メールAPIの認証情報を環境変数で設定
  • チャット: Webhook URLを環境変数で設定(記載禁止)
  • テスト送信で受信確認

Step 5: スケジュール設定

  • スケジュールトリガーにCron式を設定(例: 毎週月曜9時)
  • タイムゾーンを明示的に設定

運用(監視・例外・復旧)

  • 監視: 各実行ログを確認。データ取得件数がゼロの場合はアラート
  • 例外: データソース一時停止時はスキップしリトライ。配信先エラー時はログ記録のみ
  • 復旧: 直前の正常実行結果を手動で再送(ログから取得)

詰まりTOP5

  1. スケジュールのタイムゾーン設定漏れで実行時刻がずれる
  2. データソースの認証トークンが期限切れで取得失敗
  3. 集計ロジックのNULL/欠損データ処理漏れ
  4. メールのSPF/DKIM設定不備で迷惑メール判定
  5. レポートのデータ量が大きすぎてタイムアウト

反証3(失敗条件)

  1. データソースの仕様変更: APIスキーマ変更で集計が壊れる。バージョン固定+変更通知の監視
  2. レポートの形骸化: 誰も読まないレポートを配信し続ける。定期的に配信先・内容の棚卸し
  3. 集計誤り: ロジック変更時のテスト不足で誤った数値を配信。テストデータでの検証を必須化

トラブルシュート

症状原因対処
レポートが届かないスケジュール未起動 or 配信エラー自動化ツールの実行履歴を確認
データが空認証エラー or クエリ誤りデータ取得ノードの単体テスト
数値がおかしい集計ロジックの不具合テストデータで期待値と比較
メールが迷惑メールにSPF/DKIM設定不備送信ドメインのDNS設定を確認
実行が途中で止まるタイムアウトデータ量を制限 or タイムアウト値を延長

Secrets注意

  • データソースの接続文字列、APIキー、パスワードは絶対に記事に記載しない
  • メールのSMTP認証情報も非公開
  • Webhook URLも記載禁止
  • レポートに含まれる実数値は raw_private にのみ保存可(公開記事には含めない)

ロールバック(停止/戻し)

  1. 即時停止: スケジュールトリガーを無効化
  2. 配信停止: 配信ノードのみ無効化(集計は継続しログ確認可能)
  3. 完全戻し: ワークフロー全体を無効化し、手動レポート作成に切り替え

FAQ10

  1. Q: どの頻度が推奨か? A: 業務要件による。日次/週次/月次をそれぞれ別ワークフローで管理推奨
  2. Q: PDFで出力できるか? A: HTML→PDF変換ノードを追加すれば可能
  3. Q: 複数配信先に送れるか? A: 配信ノードをループまたは並列に設定
  4. Q: データソースを複数結合できるか? A: Mergeノードで結合可能
  5. Q: 過去のレポートを再生成できるか? A: 日付パラメータを手動指定して実行
  6. Q: レポートのフォーマットを変えたいとき? A: テンプレートノードを編集。本文構造の変更はDoD再チェック
  7. Q: 配信失敗のリトライは? A: エラーハンドリングノードでリトライ回数・間隔を設定
  8. Q: ダッシュボードとの違いは? A: プッシュ型(レポート) vs プル型(ダッシュボード)。用途で使い分け
  9. Q: 集計対象期間の指定は? A: トリガー実行日時から相対で算出(例: 「過去7日」)
  10. Q: コスト管理は? A: API呼び出し回数をモニタリングし、無料枠を超えないようアラート設定

変更履歴

日付変更内容関連ID
2026-02初版作成TMPL-OPS-001

last_verified

2026-02