前提・実現したいこと
同じアベイラビリティゾーンのあるサブネットにEC2があり、別のサブネットにRDSがあります。
EC2はrailsでWebシステムを組んでいるのですが、お問い合わせ機能があり、
「運営(お客様)のメールアドレス」と「お問い合わせするユーザが入力したメールアドレス」それぞれに
お問い合わせをした件のメールが送信されます。
この部分はpostfixで作っており、システムと同じEC2をSMTPサーバにして動いています。
ここで、何らかの理由でメールが届かなかったときにバウンスをpostfixが検知すると、
通常は設定したメールアドレス宛にバウンス検知のメールが飛ぶと思いますが、
これを以下のようにしたいという要望がお客様から出ております。
- バウンスを検知した旨はメールで通知させない
- RDSに新しくテーブルを作り、そこにバウンス検知した情報をリアルタイムでinsertする
- Webシステムの方で新しくページを作成し、検知した情報を見れるようにする(RDSから情報を拾ってくる)
質問内容
1と3はなんとかなると思うのですが、2のいいやり方が思いつきません。
真っ先に思いついたのはbatchなどを用意しておいて、バウンス検知したら引数つけてshellを叩いてbatchを起動するような形式ですが、
ググっても検知したものをshellコマンドに落とし込む手法がわかりませんでした。
無理やりどこかにメールを送信、あるいはWebhookなどを作成し、受け取ったサーバがどうこうというのもチラッとよぎりましたが、
出来る限り面倒なことはしたくないです。
上記の真っ先に思いついた方法のやり方、あるいはよりスマートな方法があればご教授いただきたいです。
制限事項
- postfixを別のツール(Sendgridなど)に変更するのは別の要求を満たすために不可
- 有料リソースの追加不可
回答1件
あなたの回答
tips
プレビュー