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 のデータベース パフォーマンスに影響を与える要因の説明

推薦する

ページを更新せずにフォームを送信するには iframe を使用します

そこで、この問題を解決するために埋め込みフレームワークを導入します。具体的な原則は、フォームがデータ...

Mysqlアカウント管理の原理と実装方法の詳細な説明

この記事では、例を使用して、MySQL アカウント管理の原則と実装方法を説明します。ご参考までに、詳...

JSはBaidu Newsナビゲーションバーの効果を実現

この記事では、Baidu News Navigation Barの効果を実現するための具体的なJSコ...

Dockerオーバーレイはホスト間のコンテナ相互通信を実現します

目次1. Dockerの設定2. レジストリとネットワークを作成する3. コンテナを起動する環境説明...

Linux でファイルをあいまい検索するのに適したコマンドは何ですか?

1. はじめにこの記事では、主に Linux システムでコマンドライン ツールを使用してファイルを...

MySQL スローログ実践のまとめ

遅いログクエリ機能スロー ログ クエリの主な機能は、設定された時間しきい値を超える SQL ステート...

Mysql5.7でのスケジュールバックアップの実装

1. MySQL インストール パス D:\xxx\MYSQL\MySQL Workbench CE...

バージョン管理ツール Rational ClearCase の紹介

Rational ClearCase は、コードやその他のソフトウェア開発資産のバージョン管理を実...

MySQL で JSON 形式のフィールドをクエリする詳細な説明

作業開発プロセス中に、顧客の名前、携帯電話番号、ID カード、およびドキュメントの種類を動的に保存す...

jQueryの競合問題を解決する方法

フロントエンド開発において、$ は jQuery の関数です。$ のパラメータが異なると、実装される...

React仮想リストの実装

目次1. 背景2. バーチャルリストとは何か3. 関連概念の紹介4. 仮想リストの実装4.1 ドライ...

VMware Workstation Pro 16 ライセンス キーと使用方法のチュートリアル

VMware Workstation は、開発、テスト、デモンストレーション、展開のために仮想マシン...

Vueコンポーネント間のデータ共有の詳細な説明

目次1. プロジェクト開発において、コンポーネント間の最も一般的な関係は次の 2 つのタイプに分けら...

SSMプロジェクトは、ホットデプロイメント構成を実装するためにTomcatとMavenを使用してWARパッケージとしてデプロイされることが多い。

背景ご存知のとおり、JavaEE プロジェクトを開発した後は、そのプロジェクトをサーバーの Tomc...

MySQL マルチバージョン同時実行制御 MVCC の詳細な研究

MVCC MVCC (Multi-Version Concurrency Control) は、マル...