GIS マップは、Pandora FMS のエージェントの地理的な場所を視覚的に表現したものです。このマップで、エージェントの現在の位置と、これまでの位置履歴の概要を見ることができます。
GIS マップを利用できるようにするには、エージェント、サーバ、コンソールの設定が必要です。
ソフトウエアエージェント の pandora_agent.conf
ファイルには、デバイスの位置を設定するパラメータがあります。
別途 gis_exec
パラメータで、座標を返すスクリプトのパスを指定することもできます。スクリプトは “緯度,経度,高度” というフォーマットの文字列で座標を返す必要があります。</font>
例:
# Agent position parameters # Those parameters define the geographical position of the agent # gis_exec: Call a script that returns a string with "latitude,longitude,altitude" # i.e.: 41.377,-5.105,2.365 #gis_exec /tmp/gis.sh # latitude latitude 40.37346827 # longitude longitude -3.6418548 # altitude altitude 637 # Position description position_description Madrid, Vallecas
GIS 機能はサーバの activate_gis
パラメータで有効化できます。このフラグを 1 に設定することにより、サーバがエージェントから受け取った GIS 情報を処理するようになります。
位置情報により Pandora FMS にエージェントの位置を保存することができますが、このデータは完全には信頼できないソースから届くため、大きく移動していないのにエージェントが場所移動の情報を送信する可能性があります。これを避けるために、location_error
パラメータに同じ位置であるとみなす距離を設定します。これは閾値によるエラー許容であり、エージェントの位置が閾値内にとどまっていれば同じ位置であると認識します。
逆ジオロケーションアルゴリズム(位置情報からの住所検索)と IP アドレスおよび位置情報のデータベースを利用することにより、自動検出サーバは検出したエージェントの位置を推測することができます。利用のためには MaxMind GeoIP GeoLiteCity フォーマットか、データベース内の IP アドレスと位置情報のテーブルの組み合わせを利用します。
自動検出サーバの動作を定義する、2つのパラメータがあります。recon_reverse_geolocation_file
は、MaxMind GeoLiteCity.dat
を用いた逆ジオロケーションを含むファイルを指し示すのみに使われます。recon_location_scatter_radius
は、 検出したエージェントのおおよその位置をアルゴリズムで推測する際、推測位置から recon_location_scatter_radius
のパラメータによって定義される半径(メートル単位)の中でランダムに配置するために利用されます。
また、Google API® および OpenStreetMaps® により提供される位置情報変換 (リバースジオロケーション) サービスを利用することもできます。
google_maps_description
を 1
に設定します。openstreetmaps_description
を 1
に設定します。# Flag to activate GIS (positional information for agents and maps) by default it is deactivated activate_gis 1 # Radius of the Error in meters to consider two gis locations as the same location. location_error 10 # Recon reverse geolocation file (databases with the reverse geolocation information using # MaxMind GPL GeoLiteCity.dat format). # Comment it to disable the IP geolocation on agent creation. recon_reverse_geolocation_file /usr/local/share/GeoIP/GeoLiteCity.dat # Radius (in meters) of the circle in where the agents will be place randomly when found by a recon task # The center of the cicle is guessed by geolocating the IP address. recon_location_scatter_radius 1000 # This enables realtime reverse geocoding using Google Maps public API. # This requires internet access, and could have performance penalties processing GIS # information due the connection needed to resolve all GIS input. google_maps_description 1 # This enables realtime reverse geocoding using OpenStreetMaps public API. # This requires internet access, and could have performance penalties processing GIS # information due the connection needed to resolve all GIS input. # You can alter the code to use a local (your own) OpenStreetMaps server. openstreetmaps_description 1
コンソールで GIS 機能を利用するには、最初にメインの設定で有効にする必要があります。
管理(Management) → 設定(Setup) → システム設定(Setup) → 基本設定(General Setup) → GIS 機能の有効化(Enable GIS features) → 更新(Update) へ進みます。
すると、ユーザインタフェースに新たなメニューが追加されます。
設定(Setup) → システム設定(Setup) → 利用 GIS マップ(GIS map connection) にて、GIS で利用するマップを提供する地図サーバへの接続を定義する必要があります。
基本パラメータを設定したら、利用マップのタイプを選択する必要があります。タイプによりオプションが異なります。
Pandora FMS のデフォルトインストール状態では、Open Street マップ を利用するようになっています。これを使って直接 GIS 機能を確認することができます。
マップに OpenStreet マップを利用するのに必要なパラメータは タイルサーバの URL のみです。
例:
http://tiles.example.com/${z}/${x}/${y}.png http://tile.example.com/${z}/${x}/${y}.png
サーバの名前と認定についての説明は OpenStreetMap® の公式サーバ一覧サイトを確認してください。
また Pandora FMS はGoogle Maps® もサポートしています。これを利用するには、正しい パスワード を Google から取得し、接続設定の対応するフィールドに設定する必要があります。(詳細は、Google マップ API ポリシー を参照)
このパスワードで、ベースのマップの種類 (航空写真 、地形 、地図) を設定することができます。
このパスワードは取得してから利用できるまでに数分かかる場合があります。
ほかには、マップとして静的画像の利用をサポートしています。この種類のマップを利用するには、画像ファイルは、EPSG:4326 である必要があります。
マップの定義に必要なパラメータは、画像の URL 、高さ 、幅 および、マップ画像の境界 (右 、左 、上 、下) の位置情報 (経度 、緯度) です。
ローカル WMS マップサーバをインストールし、オンラインマップサービスを利用できない際に使用できます。これは高速処理のために モザイク タイプの 定義を行うこともできます。
バージョン 723 から、GeoServer のような WMS サーバ(Web マップサービス)への接続を追加できるようになりました。それには、サービスが提供されているアドレスを入力し、そこから取得したいレイヤの名前を入力する必要があります。
GeoServer サーバの最小限のインストールと設定は、こちら を参照してください。
マップ接続定義の最後は、位置情報を持っていないエージェントに対するマップの中心とデフォルトの位置の定義です。それらを定義するには、マップをプレビューし、マップをクリックして、マップ内での変更(Change in the Map) セレクタで選択されているパラメータ (マップの中心(Map center) もしくは GIS データが無い場合のエージェントのデフォルト位置(Default position for agents without GIS data)) に応じて、このパラメータを設定します。
このプレビューマップでは、左上の緑色の矢印を使用して移動したり、+ または - アイコンでズームレベルを変更したり、 虫眼鏡アイコンでフルズームにしたりすることができます。
入力セルに値(小数点はドットです)を入れることによって、位置を設定することもできます。
すべての接続パラメータを設定したら、保存(Save) ボタンをクリックすることにより、マップビルダから利用できるように接続を保存できます。
接続の設定を行うと、GIS マップ(GIS Map) で利用することができるようになります。
定義済のマップを含む画面が表示されます。ここでは、マップの編集、マップの表示、デフォルトマップの定義、マップの削除ができます。
新たなマップを作成するボタン(作成(Create) ボタン)もあります。
デフォルトマップ を設定する必要があります。これは、エージェント表示でその位置を表示するために使用されます。
GIS マップの作成
マップ作成ページにアクセスして最初に行うことは、マップ名(Map Name) と 利用マップの追加(Add Map connection) を既に利用可能なものの中から追加することです。一つ以上を追加することができますが、これらは後ほどベースレイヤーとして利用可能になります。(同時には一つのみが有効です)
利用マップを選択すると (またはデフォルトの利用マップを変更すると) 、Pandora FMS コンソールが利用マップのデフォルトデータを利用したいかどうかを尋ねてきます。それを'受け入れる'と、コンソールは 全ての位置データ を利用マップに設定されている値に設定 (更新) します。ユーザは デフォルトの拡大率 のみ設定する必要があります。キャンセルすると、これらのフィールドの変更は行われず 、利用マップの設定のみが追加されます。
基本的なマップのパラメータを設定したら、どのエレメントをマップに表示するかを選択するための、マップのレイヤ を定義します。ただし、デフォルトマップでは レイヤを定義する必要がありません。なぜならエージェントビューにおいて、エージェントの位置を表示するのに利用されるためです。
それぞれのマップは、エージェントを表示するための一つ以上のレイヤを持っています。それぞれのレイヤは、グループに属するエージェント や エージェント一覧 、代表エージェント付きのグループ を表示することができます。これにより、それぞれのレイヤに表示するエージェントを簡単に設定できます。
レイヤは、'表示' または '非表示' を定義できます。また、
代表エージェントを持つレイヤにグループを作成したら、 他のエージェントで別のグループを作成することはできません。
レイヤが定義されると(マップの保存 をクリックするまで、完全には保存されません)、定義されたレイヤーの左の列に移動します。ここでレイヤの並び替えやレイヤの削除、または編集が再度可能になります。
マップのレイヤ定義が完了したら、マップの保存(Save Map) ボタンにて全てを保存することができます。マップを編集する場合は、マップの更新(Update Map) ボタンが表示されます。
GIS マップメニューは、すべての定義済マップを表示します。それぞれマップに定義されたパラメータでマップを表示できます。また、開いたマップは上端にある 設定(Setup) ボタンをクリックして編集できます。
左上にマップ操作のための4つの緑の矢印があり、それぞれの方向へマップを動かすことができます。+ と - は拡大率を増減させるアイコンで、ズームバーで直接設定したい拡大率を選択することができます。
マップをドラッグすることによっても、動かすことができます。
マップ上に表示されているエージェントをクリックすると、そのエージェントに関する詳細情報を表示できます。追加情報のバルーンが表示される場合、エージェントの名前はエージェント表示へのリンクになっています。
+ アイコンをクリックすると、レイヤの操作パネルが開きます。緑色のボックスが表示され、ベースのレイヤ (マップが一つ以上定義されている場合は利用マップ) および、表示するレイヤを選択することができます。
エージェントの階層(Agent Hierarchy) と呼ばれる特別なシステム定義レイヤもあります。 このレイヤーが表示されている場合は、エージェントとその親要素をつなぐ赤い点線が表示されます。(両方が表示されている場合のみ)
フィルタボタンの隣に、マップの更新間隔を設定する 更新(Refresh) というコンボボックスがあります。マップは、指定した間隔でエージェントを更新するために AJAX を呼び出します。
Pandora FMS コンソールのエージェント表示にもまた GIS 機能があります。その1つはメイン画面でのエージェントの経度、緯度、高度の表示です。
トップバーに、エージェントの GISビュー を表示するためのボタンがあります。(GIS が有効な場合)
ここでデフォルトマップ でのエージェントの位置が表示されます。エージェントから届いた全情報が、国名、町名、通り名の逆ジオロケーション情報と共に表形式で表示されます。
エージェント管理タブの中に、新たにエージェントの位置を手動で設定する項目があります。また、GIS 機能に関連するいくつかのタブがあります。
エージェント管理 メニューに、新たな GIS データを更新(Update new GIS data) というオプションがあります。
GIS データ(GIS Data) タブでデフォルトのマップを表示します。クリックすることによりエージェントの新たな位置を設定することができます。また、位置情報を下部のボックスから入力することもできます。
エージェントの位置を手動で設定すると、同時に GISデータを無視 オプションが有効になります。(新たな GIS データを更新(Update new GIS data) と逆の値です) そのため、エージェントから次の位置情報データが来ても、エージェントの位置情報をリセットしなくなります。
これが望む動作でない場合は、更新(Update) をクリックする前に GISデータを無視する(Ignore new GIS data) オプションを無効にすることをお勧めします。