Actions

Difference between revisions of "Mahara日本語ドキュメント/システム管理者ガイド/MaharaをMuninで監視する"

From Mahara Wiki

< Mahara日本語ドキュメント‎ | システム管理者ガイド
(設定およびプラグインのテスト)
(設定およびプラグインのテスト)
Line 84: Line 84:
 
  ~# munin-run mahara_mahara-db
 
  ~# munin-run mahara_mahara-db
  
will output the current data values for each graph
+
上記コマンドは、それぞれのグラフに関する現在のデータ値を出力しいます。
  
 
<pre>
 
<pre>

Revision as of 04:01, 14 August 2013

作成中です - mits

Mahara munin plugin.jpg

さまざまなMahara統計データを生成できるMuninプラグインはランカスター大学 (Lancaster University) CISの無償提供により、GitHubにてダウンロードすることができます。これは複数グラフのためのワイルドカードMuninプラグインであり、Maharaデータベースから有用な統計を取得して美しいグラフに表示します。生成されるグラフは以下のとおりです:

  • 現在のログインユーザ
  • グループ
  • ディスク使用量
  • ページ
  • ユーザ活動

プラグインはMahara 1.5またはそれ以上で使用することができます。現在のところ、PostgreSQLデータベースのみで動作します

事前要件 (Pre-requires)

あなたのシステムにおいて、Muninをインストールおよび設定する必要があります。これはディスカッションの範囲を超えているため、詳細情報に関して、Munin documentationをご覧ください。

設定

これを動作させるため、あなたはプラグインをインストール、プラグイン設定ファイルの作成およびプラグインへのシンボリックリンク (Moodleデータベース名を反映させるため) を作成する必要があります。

プラグインのインストール

あなたはgitを使用してコピーするか、GitHubからプラグインをダウンロードすることができます。あなたがプラグインをダウンロードした場合、解凍してMunin標準プラグインディレクトリ (例 /usr/share/munin/plugins/) に入れること、またカスタムプラグインを分離したい場合はカスタムディレクトリに入れることができます。

mv /tmp/mahara_ /usr/share/munin/plugins/mahara_

プラグインの設定

あなたは「plugin-conf.d」ディレクトリ内に設定ファイルを作成する必要があります。通常、このディレクトリは「/etc/munin/」となります。設定ファイル名に関して、特定の要件はありませんが、利便性のため「mahara」にした方が良いでしょう。設定には、標準Muninプラグイン設定属性、データベース接続設定のlibpq環境変数 (例 PGUSER, PGHOST等) および プラグイン独自の設定が含まれます。通常、postgresユーザとして、データベースサーバ上でプラグインを直接実行した方が簡単です。この場合、minimum設定は下記のようになります:

[mahara_*]
user postgres

あなたのプラグインが異なるサーバにある場合、Maharaデータベースにアクセスするため、さらなる設定が必要となります。プラグインがMunin::Plugin::Pgsqlライブラリを使用する場合、すべてのlibpq変数をサポートします。一般的な変数は下記のとおりです:

  • PGHOST - 接続するホスト名
  • PGPORT - 接続するポート番号
  • PGUSER - 接続するユーザ名
  • PGPASSWORD - 接続するパスワード (パスワードが必要な場合)

プラグイン設定で3つの変数を使用するために、あなたは環境設定として渡す必要があります。例) 「env.」を先頭に付加

[mahara_*]
user root
env.PGHOST your_db_hostname
env.PGUSER your_db_username
env.PGPASSWORD your_db_password

あなたがプラグインを使用したい場合、同様に環境設定として設定する必要のある独自設定変数があります:

  • env.updatetime - あなたは時間ベースのデータを計算するための期間を設定することができます (例 ログインユーザ数レポートまたは課題提出数)。デフォルトでは値300秒 (Munin更新間隔5分) が使用されます。
  • env.dbprefix - あなたがMaharaデータベーステーブルで接頭辞を使用する場合、このパラメータを使用して正しい接頭辞を渡してください。
  • env.showdefaultpages - デフォルト/システムページ (ユーザダッシュボード、ユーザプロファイル、グループホームページ) をグラフに表示するかどうか指定します。設定にて、この変数の値を「1」にすることができます。デフォルトでは無効にされています。

Muninプラグイン設定に関する詳細はMunin wikiページをご覧ください。

シンボリックリンク (symlink) を作成する

最後の作業は「/etc/munin/plugins」ディレクトリのシンボリックリンク (symlink) を作成することです。[http://munin-monitoring.org/wiki/WildcardPlugins ワイルドカードプラグインとして、Maharaプラグインは使用されるシンボリックリンクからデータベース名の決定を試みます。そのため、シンボリックリンクにはMaharaデータベース名を含む必要があります:

ln -s /usr/share/munin/plugins/mahara_ /etc/munin/plugins/mahara_yourmaharadatabasename

/usr/share/munin/plugins」ディレクトリ内でコマンド「ls -la」を実行することで、シンボリックリンクが正しいかどうか確認することができます:

lrwxrwxrwx 1 root root 52 Nov 21 16:29 mahara_mahara-db -> /usr/share/munin/plugins/mahara_

上記例のデータベース名は「mahara-db」です。

あなたが同じデータベースサーバ上に1つ以上のMaharaデータベースを動作させる場合、ワイルドカードプラグインの考え方は大規模システムに対して特に有用です。この場合、あなたは同一システム内のそれぞれのMaharaデータベースにシンボリックリンクを作成して、すべてを監視することができます。

設定およびプラグインのテスト

新しいプラグインが取り込まれることを確認するため、あなたはクライアントのmuninノードを再起動する必要があります。ここであなたは、Muninサービスから問い合わせがあった場合に何が表示されるのか閲覧することができます:

~# munin-run mahara_mahara-db

上記コマンドは、それぞれのグラフに関する現在のデータ値を出力しいます。

multigraph maharausers
users.value 1

multigraph maharapages
groupportfolio.value 42
instportfolio.value 1
userportfolio.value 531
...

to see the graphs configuration that plugin returns run

~# munin-run mahara_mahara-db config

You may read more about plugin debugging in Munin wiki document.

役立つヒント

You may set up warning and critical thresholds for particular services on the Munin server side. When one of the values will be above defined limits, the service will be highlighted in the Munin web interface. You may elaborate this further and set up various alerts. For more info see page.

開発者メモ

This Munin Mahara plugin is using Munin::Plugin::Pgsql library, which makes it work with PostgreSQL database only at the moment. It is also a multigraph plugin which allows to keep all the graphs generation code within the same file. The wildcard plugin functionality is implemented the way that it takes database name from the symlink.

You are more than welcome to contribute to this work and create pull request for integration of your changes.

有用なリンク