EPSTDSサービスがApplication Errorで停止した理由を調べたら「保存先ディスク」「記憶域ドライバー」に問題があるとされていた new!

業務システムからの定期的なメール通知が送信されない、という事象で調査したところ、E-PostのEPSTDSサービスが停止していた、というお問い合わせをいただくことがあります。E-Postを業務アプリケーションからのSMTP中継サーバとしてご利用の構成でも起こり得る事象です。

このようなときは、EPSTDSサービスを開始し直すと、プール(滞留)されていたメールがまとめて送信され、滞留していた通知メールが届いた、というケースが多く見られます。まずはWindowsの「イベント ビューアー」の「アプリケーション」ログを確認することで、停止の原因の手がかりが得られます。以下、確認のポイントと対策の考え方をご説明します。

EPSTDSサービスが停止するとどうなるか
EPSTDSサービスは、E-Postが外部宛にメールを配送する(SMTP配送を行う)サービスです。E-PostをメールボックスなしのSMTP中継サーバとしてご利用の構成でも、実際に外部へメールを送り出しているのはこのEPSTDSサービスです。
そのため、EPSTDSサービスが何らかの理由で停止すると、SMTP配送そのものが止まり、業務システムからの定期通知メールやメーリングリストの配送などが行われなくなります。停止している間に受け付けたメールは、送信されずにプール(滞留)され、サービスを開始し直した時点でまとめて送信されます。「サービスを開始したら、滞留していたメールが一斉に送られた」という挙動は、この仕組みによるものです。

イベント ビューアーで停止の原因を確認する
Windowsの「イベント ビューアー」→「Windowsログ」→「アプリケーション」を開き、サービスが停止した時刻の前後を確認します。
ディスクや記憶域に起因してEPSTDSサービスが停止した場合、次のような「Application Error」が記録されます。
---------------
・ソース:Application Error
・イベントID:1005
・タスクのカテゴリ:アプリケーション クラッシュ イベント
・プログラム:epstds.exe
---------------
説明欄には、要旨として次のような内容が記録されます。
---ネットワーク接続、ファイルの保存先ディスク、またはこのコンピューターにインストールされている記憶域ドライバーに問題があるため、ファイルにアクセスできない。このエラーによりプログラムepstds.exeは終了した。---
なお、具体的なエラー値(エラーコード)は、イベントの[追加データ]セクションに一覧表示されます。原因の切り分けやサポートへのお問い合わせの際は、この値もあわせてご確認ください。
このメッセージは、EPSTDSが動作に必要なファイルへアクセスできなかったことを示しています。具体的には、E-Postのインストール先ドライブ、またはメール作業フォルダ(既定値C:\mail。環境によっては別のドライブへ割り当て)のいずれかに、ディスクの劣化などの問題が生じている可能性が高いと考えられます。
 ※ 同じ時間帯に別のApplication Errorが続けて記録されている場合は、上記のディスク側の問題に引きずられて発生したものと考えられます。異なる日時に同一のメッセージが繰り返し記録されているときも、同じ原因が疑われます。

対策方法について
1.ディスクの点検・修復(根本対策)
本事象は、E-Postのプログラム自体の不具合ではなく、OSがディスクまたは記憶域ドライバーへのアクセスに失敗していることを示しています。したがって、根本的な対策としては、ディスク側の点検・修復をご検討ください。
・CHKDSK /Fによるファイルシステムの点検・修復
・改善しない場合、または再発する場合は、ディスクの物理的な交換
同じディスク上の他のファイルが問題なく開けるかどうかも、切り分けの目安になります。開けない場合は、ディスク自体が損傷している可能性が高まります。ハードウェアの状態については、サーバやディスクのベンダーへのご確認もあわせてご検討ください。

2.バックアップやウイルス対策ソフトとの競合の確認
停止の発生時刻が夜間バックアップなどの実行時間帯と重なっている場合は、あわせて次の点をご確認ください。
ウイルス対策ソフトやバックアップソフトが、E-Postの「メール作業フォルダ」配下を常時監視(リアルタイムスキャン)していると、メール送受信処理との間でファイルの競合(ファイルの取り合い)が発生し、ファイルアクセス上の問題を引き起こすことがあります。メール作業フォルダ(既定値C:\mail)配下は、ウイルス対策ソフトやバックアップソフトの常時監視の対象から除外する設定を行ってください。
 ※ ただし、上記1.のようにOSがディスク/記憶域ドライバーへのアクセス失敗を報告している場合は、まずディスク自体の健全性の確認を優先してください。

3.バージョンアップについて
「E-Postのバージョンアップで改善するか」というご質問をいただくことがありますが、本事象の原因は上記のとおりディスク/記憶域層でのアクセス失敗であり、E-Postのバージョンアップによって解消される性質のものではありません。まずはディスク側の問題の切り分けと対処を優先してください。

4.サービスの自動再起動設定(次善の安全策)
万が一サービスが停止した場合に自動的に復旧させるための設定として、Windowsの「サービス」画面でEPSTDSに対応するサービス(表示名「E-Post SMTP Delivery Agent」)のプロパティを開き、「回復」タブで次のように設定しておく方法があります。
・最初のエラー :サービスを再起動する
・次のエラー  :サービスを再起動する
・その後のエラー:サービスを再起動する
この設定により、次回サービスが停止した際に自動的に再起動されることが見込まれます。ただし、これはあくまで停止したときに自動で復旧させるための次善の安全策であり、ディスク側の根本的な問題を解消するものではありません。根本対策(ディスクの点検・交換)とあわせてご検討ください。

ディスクトラブルを早期に検知するために
E-Postには、ログの書き込みに失敗した際(ディスクトラブル時など)にイベント ビューアーへ警告を記録する設定があります。あらかじめ有効にしておくと、ディスクの異常をより早い段階で把握しやすくなります。

別サーバへの移行について
ディスクやハードウェアの交換に伴い、別のサーバへE-Postを移行される場合は、移行手順書をサポートにてご用意しております。また、「サポート2」にも掲載しております。必要な場合はサポート窓口までお問い合わせください。

(関連FAQ)
●Windowsの「サービス」で「サービスを再起動する」設定しておくことをお薦め
●イベントビューアーに記録されるイベントIDの一覧
●ロギング(ログ出力)機能はありますか?