Linux の総合システム監視ツール dstat の詳細な例

Linux の総合システム監視ツール dstat の詳細な例

オールラウンドなシステム監視ツール dstat

dstat は、vmstat、iostat、netstat、ifstat コマンドを置き換えることができる多機能製品です。 dstat はこれらのコマンドの制限を克服し、いくつかの追加機能を追加し、監視項目を増やし、より柔軟になります。 dstat は、システムの健全性を監視するための便利なツールであり、ベンチマークやトラブルシューティングに使用できます。

dstat を使用すると、すべてのシステム リソースをリアルタイムで確認できます。たとえば、IDE コントローラーの現在のステータスをカウントしてディスク使用率を比較したり、ネットワーク帯域幅の値 (同じ時間間隔内) でディスク スループットを直接比較したりできます。

dstat はオプションに関する情報を表形式で提供し、出力がどの範囲と単位で表示されるかを明確に示します。これにより、情報の混乱や誤報をより適切に回避できます。さらに重要なのは、必要なデータ情報を収集するためのプラグインの作成が容易になり、これまで不可能だった方法で拡張できることです。

Dstat のデフォルトの出力は、人間がリアルタイムで表示できるように設計されていますが、詳細を CSV ファイルにエクスポートし、Gnumeric または Excel にインポートして表を生成することもできます。

特性

  • vmstat、iostat、ifstat、netstatなどからの情報を組み合わせます
  • 統計のリアルタイム表示
  • 分析やトラブルシューティングを行う際に、監視項目を有効にして並べ替えることができます。
  • モジュラー設計
  • Pythonで書かれているので、既存のタスクを拡張するのに便利です
  • 簡単に拡張してカウンターを追加できます (ぜひご協力ください)
  • 多数の拡張機能により、新しい監視項目を簡単に追加できます。
  • ブロックデバイス/ネットワークデバイスをグループ化し、合計数を表示できます
  • 各デバイスの現在のステータスを表示できます
  • 極めて正確な時間精度、システムの負荷が高い場合でも表示の遅延なし
  • 正確な単位を表示し、変換エラーを最小限に抑えます
  • 異なるユニットを示すために異なる色を使用する
  • 中間結果の表示の遅延は1秒未満です
  • CSV形式のレポートのエクスポートをサポートし、GnumericやExcelにインポートしてグラフィックを生成することができます。

インストール方法

1. CentOSでは、yum -y instatll dstatを実行できます。

2. インストール用のrpmパッケージをダウンロードする

http://packages.sw.be/dstat/dstat-0.7.2-1.el5.rfx.noarch.rpm で実行します。

rpm -ivh dstat-0.7.2-1.el5.rfx.noarch.rpm

使い方

dstat の基本的な使用方法は、dstat コマンドを入力することです。出力は次のようになります。

デフォルトの出力は次のようになります。

デフォルトでは、次の 5 つの領域があります。

1. --total-cpu-usage----CPU 使用率

usr: ユーザー空間内のプログラムの割合。

sys: システムスペースプログラムの割合。

idel: アイドル率;

待機: ディスク I/O の待機に費やされた時間の割合。

hiq: ハード割り込みの数;

siq: ソフト割り込みの数;

2. -dsk/total-disk 統計

読み取り: 読み取り総数

書き込み: 書き込み総数

3. -net/total- ネットワーク統計

recv: 受信したネットワークパケットの総数

送信: 送信されたネットワークパケットの合計数

4. ---ページング-- メモリページング統計

in: ページイン

アウト: ページアウト

注: システム ページング アクティビティ。ページングとは、システムシナリオを見つけるために使用されるメモリ管理手法を指します。ページが大きいほど、システムが大量のスワップ領域を使用していることを示します。通常、システムがスワップ領域を使い始めたときは、メモリが不足しているか、メモリが非常に断片化されていることを意味します。理想的には、ページインとページアウトの値は 0 0 です。

5. --system--システム情報

int: 中断回数

csw: コンテキストスイッチ

注: 割り込み (int) とコンテキスト スイッチ (csw)。この統計は、比較のための基準がある場合にのみ意味を持ちます。この列の統計値が高い場合、通常、多数のプロセスが輻輳を引き起こしており、CPU に注意を払う必要があることを示します。通常、サーバーでは何らかのプログラムが実行されているため、この項目には常に何らかの値が表示されます。

デフォルトでは、dstat は 1 秒ごとにデータを更新し、データの更新と出力を続けます。Ctrl+C を押して「dstat」を終了します。

dstat には多くの特定のパラメータがあり、それらは man dstat コマンドを通じて表示できます。

一般的なパラメータは次のとおりです。

dstatが使用できるすべてのパラメータはdstat --listで確認できます。

  • -l : 負荷統計を表示する
  • -m: メモリ使用量を表示します(使用済み、バッファ、キャッシュ、空き値を含む)
  • -r : I/O統計情報を表示する
  • -s: スワップパーティションの使用状況を表示
  • -t : 最初の行に現在の時刻を表示します
  • –fs : ファイルシステムの統計情報を表示します(ファイルの総数とinode値を含む)
  • –nocolor : 色を表示しない(便利な場合がある)
  • --socket : ネットワーク統計情報を表示する
  • –tcp : 一般的なTCP統計情報を表示する
  • –udp: 監視対象のUDPインターフェースの動的データと現在の使用状況を表示します。

もちろん、これらの用途以外にもさまざまなものがあります。dstat には、機能を大幅に拡張するプラグインがいくつか付属しています。 /usr/share/dstat ディレクトリを調べると、それらの使用法の一部を確認できます。よく使用されるものは次のとおりです。

  • -–disk-util: 特定の時間におけるディスクの使用状況を表示します
  • -–freespace: 現在のディスク容量の使用状況を表示する
  • -–proc-count : 実行中のプログラムの数を表示する
  • -–top-bio : ブロックI/Oが最も大きいプロセスを示します
  • -–top-cpu : CPUを最も多く使用するプロセスをグラフィカルに表示します
  • -–top-io: 通常I/Oが最も大きいプロセスを表示します
  • -–top-mem : 最も多くのメモリを使用するプロセスを表示します

アプリケーション例:

dstat のデフォルトの監視およびレポート出力間隔は 3 秒で、レポートには 10 件の結果が出力されます。

# dstat 3 10

メモリを占有しているユーザーを確認します。

# dstat -g -l -m -s --top-mem

CPU リソースの消費に関するデータを表示します。

# dstat -c -y -l --proc-count --top-cpu
csv ファイルを出力する方法# dstat --output /tmp/sampleoutput.csv -cdn

注: 出力された csv ファイルは、Windows の Excel で開いてグラフを生成できます。

要約する

上記は、編集者が紹介した Linux 汎用システム監視ツール dstat の詳細な例です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux の運用と保守で netstat の代わりに ss コマンドを使用する方法
  • Linux mpstat コマンドの使用方法の詳細な説明
  • Linux パフォーマンス デバッグ vmstat 分析
  • Linux stat関数の説明(構成)
  • Linux でファイル属性を表示する詳細な例 (ls、lsattr、file、stat)
  • Linuxでnetstatを使用してネットワークステータスとポートステータスを表示する
  • Linux での stat 関数と stat コマンドの使用法の詳細な説明

<<:  MySQL データのバックアップと復元のサンプル コード

>>:  MySQL のデータベース パフォーマンスに影響を与える要因の説明

推薦する

システムエラー 1067 を解決するための MySQL データベース グリーン バージョンのインストール チュートリアル

ソフトウェアのグリーンバージョンとインストールバージョンの違いは何ですか?通常、ファイルのインストー...

外部ネットワークアクセスを許可するためのMysql5.6の設定手順の詳細を共有する

最近、MySQL 5.6 を導入しましたが、デフォルトでは MySQL はローカル サービスのみを許...

MacでMysqlのルートパスワードを忘れた場合の解決方法

長い間コンピューターで mysql を使用していなかったので、パスワードを忘れてしまいました。でも、...

CSS フロントエンドの知識ポイントのまとめ(必読)

1. CSS の概念: (カスケーディング スタイル シート)利点: 1. コンテンツとプレゼンテ...

ByteDance インタビュー: JS を使用して Ajax 同時リクエスト制御を実装する方法

序文正直に言うと、最近とても混乱していると感じています。テクノロジーと人生について。また、将来の発展...

MYSQL サブクエリとネストされたクエリの最適化例の分析

ゲーム史上最高スコアトップ100をチェックSQLコード cdb_playsgame ps から ps...

Linux/Docker で System.Drawing.Common を使用する

序文プロジェクトを .net core に移行した後、 System.Drawing.Commonコ...

MySQLのカバーインデックスに関する知識ポイントのまとめ

インデックスにクエリする必要があるすべてのフィールドの値が含まれている(またはカバーしている)場合、...

JS 非同期スタック トレース: await が Promise よりも優れている理由

概要async/await と Promise の基本的な違いは、await fn() は現在の関数...

js キャンバスはランダムなパーティクル効果を実現します

この記事の例では、参考のためにjsキャンバスランダムパーティクルエフェクトの具体的なコードを共有して...

Linux スレッド間の同期と排他制御の知識ポイントのまとめ

スレッドが同時に実行される場合、スレッドがリソースを競合してデータの曖昧さが生じるのを防ぐために、重...

IE6/IE7/IE8/IE9/FF 向け CSS ハック (概要)

IE8.0の正式版をインストールしたので、基本的なCSS HACKをいくつかまとめてみました。We...

HTMLコードテキストボックスの制限入力テキストボックスが灰色になり、制限テキストボックスの入力

方法 1: readonly 属性を true に設定します。入力値=読み取り専用 readOnly...

Linux は、Deepin がルートユーザーとして Google Chrome ブラウザを起動できない問題を解決します

Deepin がルートユーザーとして Google Chrome ブラウザを起動できない問題を解決す...

Vueは双方向データバインディングを実装します

この記事の例では、双方向データバインディングを実装するためのVueの具体的なコードを参考までに共有し...