ここではSite24x7を使って、Postgresサーバーのパフォーマンス、可用性、使用統計を詳細に可視化するための、PostgreSQLプラグインと監視メトリクスを設定する方法について説明します。コストをかけずに活用できるため、統計情報コレクタを活用する際に合わせてお試しください。
Postgresパフォーマンス監視メトリクス
以下のような重要メトリクスを追跡して、情報に基づいたトラブルシューティングの決定を行います
Idle user count
現在アイドル状態のデータベースに接続しているユーザー/バックエンドの合計数です。
Active user count
現在アクティブ状態のデータベースに接続しているユーザー/バックエンドの合計数です。このメトリクスを使用すると、アイドルユーザー数メトリクスに加えて、さまざまなサーバーユーザーの全体像を把握できます。
Database conflict count
Postgresサーバー内すべてのデータベースで発生するデータ回復との競合によりキャンセルされたクエリーの合計数です。
Database cache usage ratio
SUM(blks_hit)/ SUM(blks_read)の式を使用して、キャッシュの使用率を計算します。
DB rollbacks
すべてのデータベースでロールバックされたトランザクションの合計数です。
DB commits
すべてのデータベースでコミットされたトランザクションの合計数です。
Back-end buffers
バックエンドによって直接書き込まれたバッファーの合計数です。
Checkpoint buffers
チェックポイント中に書き込まれたバッファーの合計数です。
Checkpoints timed
実行されたスケジュール済みチェックポイントの合計数です。
手順
- Site24x7アカウントにログインします。アカウントをお持ちでない場合は、こちら からサインアップへお進みください。
- Site24x7 Linuxエージェント の最新バージョンをダウンロードおよびインストールします。
- Postgresプラグインをインストールします。
- エージェントはPostgresプラグインを実行し、Site24x7サーバーにデータをプッシュします。
前提条件
- Pythonモジュール[psycopg2]をインストールして、Postgresデータベースから統計を取得します。sudo apt install libpq-dev python3-devsudo pip install psycopg2
Postgresプラグインのインストール
cd /opt/site24x7/monagent/plugins/
mkdir postgres
cd postgres
wget https://raw.githubusercontent.com/site24x7/plugins/master/postgres/postgres.py
- Site24x7 Linux エージェントのプラグインディレクトリー[/opt/site24x7/monagent/plugins/postgres ]に、[postgres]という名前のディレクトリーを作成します。
- GitHubリポジトリ―からpostgres.py" ファイルをダウンロードし、[postgres]ディレクトリーに配置します。
- 上記手順の実行コマンド:
統計をサポートするPostgresの設定
- パスワードベースの認証でユーザー名を作成し、このユーザーにスーパーユーザー権限を付与しますCREATE USER username WITH PASSWORD 'yourpassword' SUPERUSER
- Postgresデータベースサーバーが、パスワードとMD5認証接続を許可する設定になっていることを確認します。
Postgresプラグインの設定
Eg : userName = "username" passWord = "yourPassword"
/etc/init.d/site24x7monagent restart
- プラグインスクリプトで指定されているデフォルトのPythonパスは、[#!/usr/bin/python]です。代替えのpythonパスを作成する場合は、shebang(シバン)文字「#!」が前に付いた既存パスを置き換えます。
- グローバル変数[username]、[password]の値を上記手順で設定した値に変更します。
- また、変数[db]、[hostname]および[port]に適切な値を設定します。
- 変更を保存して、エージェントを再起動します。
メトリクスを追加で監視
- メトリクスを追加で監視するには、[postgres.py]ファイルを編集し、監視が必要なメトリクスを新しく追加します。
- 新しく追加されたメトリクスを表示するには、[postgres.py]ファイルのプラグインバージョン値をインクリメントします ( たとえば、デフォルトのプラグインのバージョンをPLUGIN_VERSION=「1」からPLUGIN_VERSION=「2」に変更します)。
関連プラグイン
- Redisプラグイン - Redisデータベースのメトリクスを監視します。
- VoltDBプラグイン - VoltDBデータベースのパフォーマンスメトリクスを監視します。
- Lighttpdプラグイン - Lighttpdサーバーのパフォーマンスを分析します。
- Nagiosプラグイン - Site24x7では、Nagiosサーバーを実行する必要なしに、何千ものNagiosプラグインを実行することができます。
- Out-of-the-boxプラグイン - 豊富な連携リストでアプリケーション全体を監視します。
- カスタムプラグインの作成 - カスタム Linux および Windows プラグインを作成し、カスタム属性を監視します。