投稿者

Product Support at InterSystems Japan
記事 Megumi Kakechi · 10月 6, 2022 4m read

メッセージログ(messages.log) のログ深刻度が 2 以上でメールを送るようにする方法

Caché/Ensemble 時代からご使用のお客様にはなじみの機能だと思いますが、IRISには「システムがインスタンスのメッセージログ/messages.log(Cachéの場合は コンソールログ/cconsole.log) を監視し、ログ・レベル2(重大なエラー) 以上 のアラートを受け取るとメールを送信する」ログ・モニター機能があります。
この機能を使用すると、アラートログ (alerts.log)へのログ書き込み管理のほかに、メールを送信することもできます。

メール送信の設定は、^MONMGR ユーティリティを使用して簡単に行えます。

以下に、サンプルをご案内します。

USER>zn "%SYS"
 
%SYS>do ^MONMGR
 
 
1) Start/Stop/Update Log Monitor
2) Manage Log Monitor Options
3) Exit
 
Option? 2<-- ログモニター管理の設定を行います
 
1) Set Monitor Interval
2) Set Alert Level
3) Manage Email Options
4) Exit
 
Option? 3<-- Emailオプションの設定を行います 
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option? 1<-- Email設定をにONにします
​​​​​ 
Email is currently OFF            <--  現在の設定は OFF
Change Email setting? No => yes<--  y または yes を入力します
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option? 2<-- 送信元の設定をします  
 
Sender? aaa@bbb.com<-- 送信元のメールアドレスを設定します 
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option? 3<-- メールサーバの設定を行います 
 
Mail server? mail.bbb.com<-- メールサーバ
Mail server port? 25 =>     <-- メールサーバポート
Mail server SSLConfiguration?   <-- (必要に応じて設定)
Mail server UseSTARTTLS? 0 =>   <-- (必要に応じて設定)
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option? 4<-- 送信先(受信者)情報の設定
 
1) List Recipients
2) Add Recipient
3) Remove Recipient
4) Exit
 
Option? 2<-- 送信先メールアドレスの設定 
 
Email Address? test@abcde.com<-- 送信先メールアドレス
 
1) List Recipients
2) Add Recipient
3) Remove Recipient
4) Exit
 
Option?   <-- <Enter> 
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option? 6<-- 送信テスト 
 
Sending email on Mail Server mail.bbb.com
From: aaa@bbb.com
To: test@abcde.com
 
1) Enable/Disable Email
2) Set Sender
3) Set Server
4) Manage Recipients
5) Set Authentication
6) Test Email
7) Exit
 
Option?   <-- <Enter>
 
1) Set Monitor Interval
2) Set Alert Level
3) Manage Email Options
4) Exit
 
Option?   <-- <Enter>
Update running Monitor? Yes => Yes<-- Y でモニター情報を更新
Updating Log Monitor... Log Monitor updated
 
 
1) Start/Stop/Update Log Monitor
2) Manage Log Monitor Options
3) Exit
 
Option?
%SYS>

上記テスト送信で、「%Monitor Email Test」の件名でメールが送られます。これで設定は完了です。

設定が完了したら、メッセージログにログレベルが 2(重大なエラー) 以上のログを書き込み、メールが送られるか確認してみましょう。

次のコマンドで、メッセージログ/コンソールログに任意のメッセージを書き込むことができます。

// 第3引数がログレベル。0 (情報), 1 (警告), 2 (重大なエラー), 3 (致命的なエラー)write##class(%SYS.System).WriteToConsoleLog("Test log message",0,2) 

 

上記コマンドを実行すると、メッセージログに以下のようなログが書き込まれ、

10/05/22-15:18:23:537 (3688) 2 [Utility.Event] Test log message

[InterSystems IRIS SEVERE ERROR xxxxx:IRIS] [Utility.Event] Test log message のような件名でメールが送られます。


詳細は、以下のドキュメントをご覧ください。
ログ・モニタの使用


IRISには便利なユーティリティが数多くあります。以下の記事で紹介しておりますので、ぜひお試しください。
enlightened【ご参考】
IRISで使用できるユーティリティ一覧