富岳上でジョブを実行する際に pjsub コマンドを使います。
pjsub には様々なオプションがあるのですが、このなかに指定イベントごとにメールを送信するオプションがあります。
オプションの詳細は man pjsub を参照してください。たくさんあります。
これと SlackアプリのEmailを組み合わせれば、メールではなく直接Slackへのメッセージとして受け取ることができます。
Slack アプリ Email
https://slack.com/apps/A0F81496D-email?tab=more_info
Slackアプリサイトにてインストールボタンを押して、どのチャネルへ送信するかを指定すると、送信先メールアドレス(ex. hogehoge@workspace_name.slack.com)を受け取ることができます。
pjsub の引数に -m b,e,s --maillist "hogehoge@workspace_name.slack.com" と指定すればOK。
引数にいちいち指定するのが面倒くさい場合は、ジョブスクリプト上部のPJMオプション指定箇所に、以下のように指定すればOKです。
#!/bin/bash
:
#PJM -m b,e,s
#PJM --mail-list "hogehoge@workspace_name.slack.com"
#PJM -S
:
-mの後ろがメール送信が発生するイベントを指定しています。ここでは開始、終了、ステータスを指定していますが、ほかのイベントについては man pjsub の -m の箇所を読んでください(-Sは、ステータスを表示させるために必要)。
p.s.
実行ジョブ監視にログインノード上で watch pjstat -E している人も多いと思うのですが、おそらく私のネットワーク環境の問題だと思いますが、SSH接続がたまにぷつんと切れてしまうので..メールへ送ってましたが..ジョブスクリプト開発中はやたらめったらpjsubするので、ほぼスパムメール状態に..
あと、たくさんの種類のジョブを投げる人はジョブ名をつけたほうがよいとおもいます。
pjコマンドは宣言的な設計になっており、APIもあるのでIPリーチャブルな環境にあるCIサーバ(BLUE WATERのWebinerで紹介していたjenkinsみたいなやつ、スパコンの場合はslumというのがあるそうですが..よく知りません)があれば、CI管理画面上で完結できるので、たぶんそちらが正解なのかもしれませんが..
0 件のコメント:
コメントを投稿