Skip to content

setup_monitoring

terukusu edited this page Apr 8, 2019 · 18 revisions

再起動やMT4/5の監視を設定

概要

自動売買で監視しして検知しなければならないことは、何をおいても以下の 3つ。ここではそのうち最初の2つの検知を設定します。

  • 意図しないサーバの再起動
  • MetaTrader のクラッシュ
  • サーバーやネットワークのダウン

加えて、以下の3つもここで設定します

  • 定時連絡。毎日サーバーから「可動OK!」とLINEを送ってもらう
  • セキュリティアップデートやソフトウェアアップデートが利用可能になったらLINEに通知
  • 再起動時に自動的にMT4/5を起動

手順

定期的に確認を行う設定をする

VMインスタンスへSSHログインしたターミナルから以下を実行

$ ~/auto-trading-support-tools-master/setup_cron.sh

この設定をすると以下の定期的なチェックがスケジュールされます

  • 1分毎に再起動したかどうかを確認
  • 10分毎に MetaTrader がクラッシュしていないかどうかを確認
  • 毎朝9時に「サーバー可動OK!」という定時LINE通知
  • 毎朝9時に更新可能なパッケージが有るか確認
  • VMインスタンスの再起動時に MetaTrader を自動起動

正しく設定されたかを確認
VMインスタンスへSSHログインしたターミナルから以下を実行

$ crontab -l

↓この様に表示されればOK

MAILTO=""
ATST_HOME="/path/to/the/atst_home" ← ここは大抵 /home/<ユーザー名>/auto-trading..... となっているはず

# start MetaTrader automatically at boot
@reboot "$ATST_HOME/mtctl.sh" start "land-fx"

0 9 * * * "$ATST_HOME/check_daily.sh"
*/10 * * * * "$ATST_HOME/check_process.sh" "land-fx"
* * * * * "$ATST_HOME/check_order.sh" "land-fx"
* * * * * "$ATST_HOME/check_reboot.sh"

監視が機能しているか確認する

再起動検知を確認する

再起動検知が機能しているかを確認するために再起動を行う。 VMインスタンスへSSHログインしたターミナルから以下を実行

$ sudo reboot

再起動が始まりSSHは自動切断される。 しばらくしたら再起動を検知した旨が LINE に届く

MetaTrader のクラッシュ検知を確認する

もういちどVMインスタンスへSSHログインしてターミナルから以下を実行

$  ~/auto-trading-support-tools-master/mtctl.sh status land-fx

↓ 実行結果。今はMetaTraderが動いているはずなので、このように一覧に表示されるはず。

status=running, pid=1257, name=land-fx

以下を実行して MetaTrader を終了する。

~/auto-trading-support-tools-master/mtctl.sh stop land-fx

MetaTrader が終了していることを確認する。

~/auto-trading-support-tools-master/mtctl.sh status land-fx

↓ 実行結果。status=stopped となり終了していることを確認する。

status=stopped, pid= -, name=land-fx

10分毎に MetaTrader が動いているかチェックされるので、10分程度で MetaTrader が動いていない旨の通知がLINEに届く

次のステップ

Clone this wiki locally