外部システムのログデータをODBC経由でトレンド表示する

<< Click to Display Table of Contents >>

マニュアル > 監視システム構築ガイド > 主要機能の構築 > ロギング/トレンドグラフ > ヒストリカルデータサーバの利用 >

外部システムのログデータをODBC経由でトレンド表示する

概要

ヒストリカルデータサーバ(ODBC)アクションを使用して、データベース上のログデータをトレンドグラフに表示する手順について説明します。

 

 

 

サンプルのダウンロード

このページで紹介されている作成例には、サンプルが用意されています。

 

サンプルは以下からダウンロードすることができます。

 

尚、上記のサンプルには、各DBMS用のテーブル作成DDL(logtable.sql)が含まれています。サンプルDDLは以下のフォルダに格納されています。

 

(サンプルフォルダ)\table_DDL

\myslq\logtable.sql

\oracle\logtable.sql

\postgresql\logtable.sql

\sqlserver\logtable.sql

 

 

また、ここで紹介する手順では、以下の環境を用いた構築手順について記載します。

 

OS: Windows10

DBMS: SQL Server 2017

 

 

hint

対応可能なデータベースの種類、バージョンなどの最新情報については、弊社ホームページのFAQ「対応しているデータベース製品は何ですか?」にも掲載されています。

 

 

設定手順

■データベースの準備

 

まず、ヒストリカルデータサーバ(ODBC)アクションから接続して参照するためのデータベースを1つ用意してください。データベースの名称は自由に付与することができますが、今回は例として、「LOGGERDB」という名称のデータベースが作成されているものとします。

 

以下は、SQLServer Management Studioのオブジェクトエクスプローラで表示した例です。

 

p_logger_0338

 

 

■ログデータ参照用のテーブルについて

 

続いて、上記のデータベースに、ログデータが格納されているテーブルを用意してください。

 

テーブル名は自由に付与することができますが、今回は例として、LOGGERDBデータベースに「LOGTABLE」という名称のテーブルが作成されているものとします。

LOGTABLEテーブルには以下のフィールドを作成してください。サンプルに含まれているテーブル作成DDL(logtable.sql)を使用してテーブルを作成することもできます(※以下はSQLServerの例です)。

 

尚、以下のデータ型は一例です。格納されているデータの種類に応じて適切なデータ型を選択するようにしてください。

 

フィールド名

データ型

キー設定

NULL許容

補足

F01

datetime

(なし)

しない

レコードが生成された日時です。

SD0008

int

(なし)

する

数値タグを格納するための数値型のフィールドを用意します。

SD0009

int

(なし)

する

同上

SD0010

int

(なし)

する

同上

SD0011

int

(なし)

する

同上

SD0012

int

(なし)

する

同上

SD0013

int

(なし)

する

同上

SD0014

int

(なし)

する

同上

SD0015

int

(なし)

する

同上

 

 

以下は、SQLServerで表示した例です。

 

p_logger_0027

 

 

テーブルを作成したら、テスト的に表示するためのログデータを数件、登録しておいてください。

 

以下は、SQLServer Management Studioを使用して1秒間隔でデータを登録した例です。

 

(SQLServer Management Studioによる表示例)

p_logger_0339

 

 

hint

本サンプルには、SQLServer以外のDBMS用のテーブル作成DDL(logtable.sql)が含まれています。実際に使用するDBMSでテーブル定義を行う際の参考としてください。

 

hint

データベース側のテーブルで定義するフィールドのデータ型の名称(例えば「INT」「INTEGER」「NUMBER」「FLOAT」「DOUBLE」など)は、DBMSの種類により差があります。アラームサーバー(ODBC)のようにあらかじめテーブルを手動で作成しておく必要のあるアクションでは、接続するDBMS側で適切なテーブル定義を行う必要があります。接続可能なDBMS毎の推奨データ型については、Appendixの「データベースとの接続設定」を参照してください。

 

attention

PostgreSQLを使用したデータベースに接続する場合、データベース側に用意するテーブルでは、テーブル名、フィールド名ともに全て小文字で定義する必要があります。

 

 

■ヒストリカルデータサーバアクションの設定

 

1.ヒストリカルデータサーバ(ODBC)アクションを追加する

 

対象のプロジェクトを開き、Panel Serverでサーバ設定ファイルをを開いた状態にしてください。

 

Panel Serverの左ツリーからActionを右クリックしてメニューを表示し、「追加」「アクション」を選択してください。

 

p_logger_0319

 

アクションの追加ダイアログが表示されるので、「ヒストリカルデータサーバ(ODBC)」を選択してOKボタンをクリックします。

 

p_logger_0340

 

ツリーのアクションの下に、「A01」としてアクションが新たに追加されました。

この名称は変更することも可能ですが、今回の例ではこのまま使用します。

 

p_logger_0341

 

 

2.ヒストリカルデータサーバ(ODBC)アクションの設定

 

続いて、上記で登録したヒストリカルデータサーバ(ODBC)アクションのプロパティを開き、設定を行います。

 

p_logger_0342

 

左記は「ODBC設定」タブです。

 

データベースの選択から、接続するDBMSを選択してください。今回の例では「SQLServer」を選択します。

 

データソースには、あらかじめ用意しておいたデータベース「LOGGERDB」に接続するためのODBCデータソースを設定してください。尚、データソースの設定手順は、各DBMSとも共通的な操作により行うことができます。ODBC設定については、アクションの共通設定の「ODBC設定」の記述を参照してください。

 

テーブル名には、参照するテーブルを指定します。ここでは「LOGTABLE」としています。

 

 

 

 

 

 

attention

PostgreSQLを使用したデータベースに接続する場合、データベース側に用意するテーブルでは、テーブル名、フィールド名ともに全て小文字で定義する必要があります。従って、以下で指定するテーブル名は小文字で指定するようにしてください。

 

(PostgreSQLの例)

p_logger_0029

 

 

 

3.ヒストリカルデータサーバ(ODBC)のフィールドを定義する

 

続いて、ヒストリカルデータサーバアクションに対して、フィールドの定義を行います。

 

左ツリーから「A01」を右クリックし、「追加」「時刻フィールド」を選択してください。

 

p_logger_0343

 

マルチビューを見ると、A01に「F01」というフィールドが追加されました。

 

p_logger_0344

 

F01フィールドのプロパティを開きます。

 

p_logger_0345

 

ODBCフィールドタブでは、以下を設定します。

 

名称には、本アクションとしてのフィールドの名称を指定します。ここでは「F01」としておきます。

 

ODBCフィールド名には、データベース上のテーブルのフィールド名を指定します。事前に準備したテーブルのフィールド名である「F01」を指定します。

 

 

 

p_logger_0346

 

時刻フィールドタブでは、このフィールドの日付時刻のフォーマットを詳細に定義できるようになっています。

 

ここではデフォルト設定のまま、「OK」ボタンをクリックして閉じてください。

 

 

 

 

 

続いて、値フィールドを定義します。このフィールドは、取り込むデータの1列につき、対応させる値フィールドを1つずつ追加する必要があります。テータベース上のテーブルのフォーマットに合わせて1つずつ追加してください。

 

値フィールドを追加するには、左ツリーから「A01」を右クリックし、「追加」「値フィールド」を選択してください。

 

p_logger_0347

 

すると、A01に「F02」というフィールドが追加されました。

 

p_logger_0348

 

F02フィールドのプロパティを開き、設定を行います。

 

p_logger_0349

 

ODBCフィールドタブでは、以下を設定します。

 

名称には、アクション側のフィールド名を指定します。ここでは「DATA1」としておきます。

 

ODBCフィールド名には、データベース上のテーブルのフィールド名を指定します。ここでは、事前準備したテーブルのフィールド名である「SD0008」を指定します。

 

 

 

上記と同様の手順で、テータベース上の各フィールドに対応した全ての値フィールドを1つずつ追加してください。

A01アクションの内容をマルチビューで表示すると、以下のようなフィールドが登録されていることが確認できます。

 

p_logger_0350

 

以上で設定は完了です。

 

 

動作確認

それでは、動作を確認してみましょう。

 

Panel Serverの画面上部にあるオンライン(黄矢印)をクリックしてください。

 

p_logger_0019

 

Panel Serverを起動したら、Panel Browserを実行してトレンドグラフ画面を表示してください。

 

p_logger_0334

 

現状、何もペンが登録されていないため、グラフには何も表示されていません。

トレンドグラフ画面の設定メニューからペン選択を表示し、ペンの追加を行ってください。

 

以下はペングループの設定例です。

 

p_logger_0351

 

p_logger_0352

 

ペン設定からデータソース選択ダイアログを表示すると、先ほどヒストリカルデータサーバ(ODBC)アクションに定義した値フィールドの名称が表示されます。

 

 

 

 

 

ペンを追加したら、トレンドグラフのリアルタイム更新のチェックを外し、グラフの開始日時にデータベース上のテーブルにデータが存在する日時を指定してください。

 

データベース上のテーブルに格納されているログデータが、トレンドグラフに表示される事を確認してください。

 

p_logger_0353