通知概要
エラー通知機能の概要
LightFile Batchは、想定外の事態が発生してバッチ処理を継続できないときに、自動的に通知を送信する機能を提供します。
継続的にバッチ処理を運用する上で、運用者が対応すべきエラーをいち早く検知できます。
通知機能の特徴
- メールとSlackによる通知 - メールまたはSlackで通知を受け取れる
- 複数通知の同時送信 - メールとSlackの両方に同時送信可能
- 独立動作 - 一方の送信が失敗しても他方には影響しない
通知されるタイミング
継続不可能なエラー(Fatal Error) が発生した際に通知が送信されます。
継続不可能なエラーとは、バッチ処理全体の継続が困難な障害を指します。
継続不可能なエラーの例:
- ライセンス検証失敗
- システムディレクトリの作成失敗
- ファイルシステムへの接続失敗
- バックアップ処理の重大な失敗(strictモード)
注意: 個別ファイルの最適化失敗は通知されません。
通知方法
簡易Email通知
弊社のメールサーバーを使用してメール送信します。SMTP設定不要です。
- 用途 - 簡単にメール通知を設定したい場合
- 設定 - メールアドレスのみで利用可能
- 制約 - 月1000件まで
- 詳細 - 簡易Email通知
SMTP Email通知
ユーザーが指定するSMTPサーバー経由でメール送信します。
- 用途 - 独自のSMTPサーバーやクラウドメールサービスを使用
- 設定 - SMTPサーバーの接続情報が必要
- 詳細 - SMTP Email通知
Slack通知
Slack Webhook経由でメッセージ送信します。
- 用途 - Slackでリアルタイム通知を受け取る
- 設定 - Webhook URLのみで利用可能
- 詳細 - Slack通知
通知設定のテスト
test-notifyサブコマンドで通知設定をテストできます。
コマンドライン:
lightfile-batch test-notify \
--notify-email-to admin@example.comYAML設定ファイル:
notify:
email:
to: admin@example.comテストメッセージの特徴
テスト送信では、実際のエラー通知と明確に区別できる形式でメッセージが送信されます。受信者が混乱しないよう、以下の3つの方法でテストであることが明示されます:
- 件名に「(テスト送信)」を追加
- メッセージ冒頭に「このメッセージはテスト送信です。」と明記
- エラー内容の代わりにテストメッセージを表示
テストメッセージの例:
件名:
[server01.example.com] ⚠️ lightfile-batch 重大エラー通知 (テスト送信)本文:
**このメッセージはテスト送信です。**
バッチ処理中に継続が困難なエラーが発生したため、プログラムの実行を中断しました。
## エラー内容
これはテスト送信です。このメッセージを受信できた場合、通知システムは正しく動作しています。
## 環境情報
* **プロジェクト名:** my-project
* **ホスト名:** server01.example.com
* **ファイルシステム:** local:///path/to/images
* **セッションディレクトリ:** /home/user/.lightfile-next/batch/my-project/sessions/20250127-103000
* **発生時刻:** 2025-01-27 10:30:00 JST
詳細はセッションディレクトリとログをご確認ください。