Blue Prismと実行結果の見える化④(メモリ使用量を可視化)
…見える化って奥が深いなぁ。。第4回。
Blue Prismとメモリ使用量
Blue Prismによる自動化において、メモリ使用量を気にすることは、ほとんどないと思います。
しかし、実際には(当たり前ですが)メモリは消費されており、消費しすぎると…
ERROR: Internal : Unexpected error 種類 'System.OutOfMemoryException' の例外がスローされました。
ギャー!
…しかし実際、メモリ使用量は開発/管理者から隠されているので、OutOfMemoryExceptionが出るまでは気づかないし、出ても対処に困ることが多いと思います。
基本的には、OutOfMemoryExceptionが出ないような作りにしていくべきです。
そういった作りについては、以下に指針が出ています。
Blue Prism - Solution Design Overview (Japanese) (Log in | Blue Prism Portal)
サブプロセスの利用に注意することや、オブジェクトの軽量化が基本的な指針ですね。
しかしまぁ、OutOfMemoryExceptionは、起きるときは起きるわけで、メモリ使用量の可視化が必要なときというのは、どうしてもあるものです。さて、そんなときにどうするか。
メモリ使用量をログに書き込む
Blue Prismのメモリ使用量を可視化するには、ランタイムリソースの設定を変更して、メモリ使用量をログに書き込みます。
システム > リソース > 管理から設定可能です。
この状態で、当該ランタイムリソース上で実行したプロセスのログに、メモリ使用量が記録されます。
。
。。
。。。ん?何も変わってなくない?
実は、プロセスのログはデフォルトで全量が表示されません。
右クリックしてColumnsで任意の列を表示できます。
メモリ使用量はBlue Prism Memoryですね。
まとめ
- Blue Prismのメモリ使用量は自動的に管理されている
- System.OutOfMemoryExceptionを防ぐための設計ガイドラインが出ているが、メモリ使用量の超過は起きるときは、起きる
- Blue Prismのメモリ使用量は簡単な設定でログに書き込むことができる
いままでは開発系の記事が多かったけど、インフラ・運用管理系の記事も増やしていきたいですね。