8章オブザーバビリティ(可観測性)

カーネルからユーザに接する部分まで、ソフトウェアスタック全体で何が起こっているのかを可視化する必要があります。そのためには、それぞれの箇所に適した可視化ツールを知ることが重要です。

この章では、Linuxとそのアプリケーションが生成するシグナル(イベント、通知)を収集し、利用することで、事実に基づいた判断をできるようにするのが目的です。例えば、以下のようなことができます。

  • プロセスのメモリ消費量を把握する
  • ディスク領域がどのくらいで不足するかを予測する
  • セキュリティ上の理由から、カスタムイベントのアラートを取得する

認識を合わせるために、まず、システムログやアプリケーションログ、メトリクス、プロセストレースなど、誰もが遭遇するであろうシグナルの種類を確認します。また、トラブルシューティングとパフォーマンス測定の方法についても見ていきます。次にログについて、さまざまな選択肢と内容を確認します。また、CPU、メモリ、I/Oトラフィックなど、リソースの監視について説明します。利用できるツールを検討し、採用するときの手順を紹介します。

オブザーバビリティは、たいていは事後(対症的)になります。つまり、何かがクラッシュしたり、動作が遅くなったりした後に、プロセスとそのCPUやメモリの使用量を見たり、ログを調べたりします。しかし、オブザーバビリティがより調査的になる場合もあります。例えば、あるアルゴリズムにどれくらい時間がかかるかを測定するときです。また、重要なこととして、(対症的ではなく)予測のための監視もあります。例えば、現在の動作から将来の状態を推測して、それに到達したときにアラートを上げます(負荷に対するディスク使用量を推定するなど)。

オブザーバビリティについて有名で優れた図は、パフォーマンスの第一人者であるBrendan ...

Get 入門 モダンLinux ―オンプレミスからクラウドまで、幅広い知識を会得する now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.