ロギングに似た言葉として、モニタリングがあります。日本語では、主に監視するとか観察するという意味で使用されておりますが、特段相反するような言葉ではありません。そもそも、モニタリングの対象は重要なIT機器や、アプリケーションソフトウェアであるため、その監視しているデータは、機器やアプリケーションから出力された動作記録ということになり、つまり、ログデータと同じ内容のものがほとんどです。
アプリケーションパフォーマンス管理(APM:Application Performance Management)で代表されるようなツールやサービスでは、リアルタイムのモニタリングにより、 レスポンス、メモリ、ネットワークの状態や、CPUの使用量などを常に監視し、アプリケーションが正常稼働しているかとうかを可視化できます。つまり、モニタリングは、その時点の情報をもとにしているため、アプリケーションのパフォーマンスについて即時性のある対応や管理をすることについて、とても重要な役割を果たします。
一方、ロギングは、障害時やセキュリティリスクが疑われるケースなど、過去の情報による原因の究明や対応策の分析などにも有効です。シンプルに考えると、機器やアプリケーションソフトウェアなどの動作状況のデータを、モニタなどに表示するのがモニタリング、ストレージへ保存するのがロギングというイメージとなります。
厳密には、記録保存されたデータがログなわけですから、すべてのログデータがモニタリングしているデータと同じというわけではありません。これは、一旦保存したログデータそのものを理解しやすいように加工していたり、複数のログデータを集めて編集したものを元データとして監視している場合もあります。逆に、監視した結果のレポートをログとして残す場合もありますし、監視さえできていれば、ログとして長期に保存しなくてよいケースもあります。このあたりは、モニタリングやロギングの対象としているデータの入手元の機器やソフトウェアの重要度や環境によって、適切な方法を選べばよいことになります。
ロギングとモニタリングは、セットで適正な仕組みをとるべきです。すべてのデータをロギングしたり、モニタリングする必要はなく、リソースと時間の無駄になります。それを最適に選択するためには、
×