差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
ja:documentation:08_technical_reference:04_anexo_plugins_considerations [2022/08/27 01:33] – [サーバプラグインとエージェントプラグイン] junichi | ja:documentation:08_technical_reference:04_anexo_plugins_considerations [Unknown date] (現在) – 削除 - 外部編集 (Unknown date) 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== プラグイン開発において考慮すべき点 ====== | ||
- | {{indexmenu_n> | ||
- | |||
- | [[ja: | ||
- | |||
- | ===== プラグイン開発で考慮すべき点 ===== | ||
- | |||
- | ==== 概要 ==== | ||
- | プラグインにより Pandora は、複雑な処理を必要とするものや、複雑なシステムや API を利用する必要のある情報収集を実行することができます。プラグインの例をあげると、複雑な処理が必要な Oracle データベースのモニタリングや、何らかの自動検出処理があります。他には、Goliat が実行できないような簡単な HTML のパースができます。 | ||
- | |||
- | ==== 実装とパフォーマンスの違い ==== | ||
- | Pandora のプラグイン実行には、エージェントでの実行とサーバでの実行の二種類があります。 | ||
- | |||
- | サーバプラグインは、収集する情報ごとに個々に実行されます。サーバプラグインの実行は、重くなく、一つの種類の情報を取得するのを簡単な処理にする必要があるため、とても難しいです。特定の HTML をパースするプラグインは、多くの処理を実装せずにサーバに負荷をかけないようにする必要があります。 | ||
- | |||
- | エージェントプラグインは、同時に複数のモジュールの情報を取得することができます。このことにより、サーバプラグインよりより柔軟性があります。一つの情報を取得するのに多くの処理が必要なプラグインに適しています。そのため、同時に複数のモジュールの値を返すことができ、開発者にとってより柔軟性があります。 | ||
- | |||
- | ==== 自動検出処理 ==== | ||
- | プラグインで自動検出処理を実行するには、次の二種類の方法があります。 | ||
- | |||
- | 一つは、Pandora サーバの自動検出サーバを利用しての構成です。これを行うには、特定の技術や状況に応じてアドホックなコードを作成する必要があります。自動検出処理は、Pandora サーバに負荷を与えます。そのため、大量のデータ処理が必要な場合は、この選択枝は考えるべきではありません。 | ||
- | |||
- | エージェントプラグインを用いても自動検出処理を作成することができます。通常、エージェントプラグインは、Pandora サーバに対して送信する XML に記載されたモジュールを返します。しかし、エージェントのインストールと一緒にプラグインをインストールし、tentacle も入っていれば、Pandora サーバに XML を送信することができます。自動検出処理をエージェントプラグインから実行するには、この方法を利用することができます。さらに、通常のプラグインの実行と同じように、モジュールを追加します。自動検出処理が実行するように、エージェントの更新情報を Pandora へ XML で送信するようにプラグインを用意します。 | ||
- | |||
- | プラグインにより平均的なモジュールの作成および情報収集を行ったり、必要に応じて他のエージェントをシミュレートするXMLを作成して送信するという考え方です。 | ||
- | |||
- | XML でデータを送信するプラグインを作成する理由は、自動検出処理の負荷をサーバに集中させずに分散することにあります。 | ||
- | |||
- | ==== サーバプラグインとエージェントプラグイン ==== | ||
- | |||
- | A [[: | ||
- | |||
- | [[: | ||
- | |||
- | * 実行負荷が小さい場合。例えば単純な処理など。 | ||
- | * 自動検出処理が多くのデータ処理を必要後する場合。 | ||
- | * 自動検出処理の実行間隔が長い場合。例えば、1週間に一度など。 | ||
- | |||
- | An [[: | ||
- | |||
- | [[: | ||
- | |||
- | * 情報収集において多くの処理がある場合。 | ||
- | * 自動検出処理で高い負荷がかかる場合。 | ||
- | * 自動検出処理の実行間隔が通常のエージェントの実行間隔に近い場合。例えば、5分間隔など。 | ||
- | |||
- | ==== 開発における標準化 ==== | ||
- | |||
- | In order that all plugins would be the more standard possible, and that they have similar features, you should consider the following aspects: | ||
- | |||
- | すべてのプラグインを可能な限り標準化し、同様の機能を持たせるには、次の点を考慮する必要があります。 | ||