<< Click to Display Table of Contents >> マニュアル > 監視システム構築ガイド > 主要機能の構築 > ロギング/トレンドグラフ > トレンドグラフの長期間データ表示 > トレンドグラフに集計データを表示する |
概要
トレンドグラフに長期間のデータを表示するもう一つの方法として、日報などの集計データをグラフに表示するという選択肢があります。
サマリアクションの場合、通常はRAWデータ(生データ)の定周期ログをグラフに表示しますが、トレンドグラフ画面側のプロパティに適切な設定を行うことにより、グラフの表示期間(表示スパン)の長さに応じて、表示対象とするデータの参照先を、生データ、日報集計データ、月報集計データ、年報集計データなどの中から自動的に切り替えて表示することが可能です。
又、サマリアクションは、集計処理の単位を自由に追加することができるようになっています。標準フレームワークでは日報集計(一時間毎の集計)、月報集計(1日毎の集計)、年報集計(1ヶ月毎の集計)の3つの集計単位があらかじめ用意されていますが、たとえば、10分単位、30分単位などの集計を新たに追加することができます。この集計機能を利用して生データを任意の集計単位に集約することで、長期間のデータを間引きしてグラフ上に表示する事が可能となります。
そこで、本セクションでは、表示期間に応じて参照先を集計データに切り替えるための設定方法及び、サマリアクションの集計単位を追加する方法について紹介します。
サンプルのダウンロード
このページで紹介されている作成例には、サンプルが用意されています。
サンプルは以下からダウンロードすることができます。
尚、サンプルプロジェクトには、テストデータとして以下のデータが含まれています。履歴表示の検証の際には、下記の範囲に該当する日付を指定することとします。
•RAWデータ ・・・2018/9/10から2018/9/24までの1秒周期のログデータ
•日報データ ・・・2018/9/10から2018/9/24までの日報データ。日報データとは、RAWデータを基に1時間単位で集計を行い、1時間1レコードの24時間分のレコードとして集計したデータです。
日報集計データをグラフに表示する
ここでは、グラフの表示期間(表示スパン)の長さに応じて、表示対象とするデータソースの参照先を、生データ(RAWデータ)、日報集計データ、月報集計データ、年報集計データに自動的に切り替えて表示する方法を紹介します。
この設定は、トレンドグラフ画面ライブラリとして用意されている以下のプロパティに対して行います。
プロパティ名 |
内容 |
_ChangeSpanMode
|
データソース参照先の自動切り替えを行うか否かを設定します。このプロパティにTrueを設定すると、自動切換えが有効になります。 (デフォルト設定:False)
尚、自動切り替え処理は、以下の関連プロパティである「_ChangeSpan」及び「_ChangeSpanDataName」の設定に従って行われます。
|
_ChangeSpan
|
「_ChangeSpanMode」がTrueの時、データソースを切り替えるスパンの期間を設定します。 (デフォルト設定: 86400;2592000;31536000)
設定は秒単位で行い、「 ; 」(半角セミコロン)で期間を区切って設定します。デフォルト設定の動作では、1日以上、30日以上、365日以上のスパンとした場合に、「_ChangeSpanDataName」で設定されたデータソースに接続を自動的に切り替えます。
|
_ChangeSpanDataName
|
「_ChangeSpanMode」がTrueの時、自動で切り替えるデータソース文字列を設定します。 (デフォルト設定: .RAW::/.DAY::/.MONTH::/.YEAR::)
本プロパティの設定では、「_ChangeSpan」で指定した期間区切りにより切り替える接続先の情報を、置換元、置換先の文字列で列挙して指定します。
|
以下に、具体的な例をもとに説明します。
■プロパティ編集
1.自動切換えに必要なプロパティを設定する
Panel Editorから、_Trendフォルダ内にある「_Main」フォームを右クリックしてメニューを表示し、メニューから「プロパティ」を選択します。
プロパティダイアログが表示されるので、期間設定にある「有効・無効」を、「True」に変更してください(この設定が_ChangeSpanModeプロパティです)。
2.動作確認
Panel Serverの画面上部にあるオンライン(黄矢印)をクリックしてください。
続いて、Panel Editorの画面上部にあるブラウザ実行アイコン(緑矢印)をクリックし、Panel Browserを呼び出します。
Panel Browserが起動したら、トレンドグラフ画面を表示してください。
ここでは例として、履歴表示モードとして、表示期間を10分にして、「点表示」を有効にしています。また、日時の指定にはサンプルデータとして履歴データが存在する日時を指定しています(例:2018/9/12 0:00:00など)。
グラフの表示期間を3日間に変更すると、グラフの表示内容が以下のように変化しました。
上記の動作は、表示期間に1日以上(30日未満)の期間が指定されたことにより、自動的に日報集計データが参照されて表示されたものとなります。
このようにトレンドグラフでは、表示期間の長さに応じて集計データを表示するように設定することができます。
上記の設定例では、_ChangeSpanには「86400;2592000;31536000」と設定されています。この設定値では、表示期間が1日以上の場合に日報データ、30日以上の場合に月報データ、365日以上の場合に年報データを参照するように自動的に切り替わります。
但し、標準の表示期間ダイアログでは、スパンに指定可能な日数は最大で20日までとなっており、このままでは、それを超える日数を指定することができません。30日以上の表示スパンの指定が必要になるような場合は、表示期間ダイアログの期間指定にボタンを追加する等のカスタマイズを行うことで対応できます。
(表示期間ダイアログ)
|
10分集計を追加してグラフに表示する
標準プロジェクトにあらかじめ組み込まれているサマリアクションに対して、任意の単位の集計処理を追加する方法について紹介します。
標準プロジェクトのデフォルト設定では、日報集計、月報集計、年報集計の3つの集計処理があらかじめ用意されていますが、ここでは10分単位の集計処理を新たに追加します。
1.サマリマスタを編集する
サマリマスタに対して10分集計のための設定を追記します。
プロジェクトの以下のフォルダ配下にある「master.txt」をメモ帳などで開いてください。
(プロジェクトフォルダ)\server\summary\master.txt
サマリマスタの集計ログ定義に、以下のセクションを追加してください(集計ログ定義の先頭、[RAW::DAY]のセクションの前あたりに追加すると良いでしょう)。
(編集内容)
[RAW::10MIN] CsvFileName=DB\10MIN\SMR_10MIN_.csv CsvFileUnit=DAY SummaryType=[SummaryType1] SummaryParam=[SummaryParam1] SummaryUnit=10MIN
|
(メモ帳での編集例)
上記の意味としては、RAWを基にして10分単位の集計を行うという定義となります。
また、データソースの識別名は「10MIN」となります。
以上で設定は完了です。サマリマスタを上書き保存してください。
尚、各列の集計処理の種類は、タグフィールドマスタ「fieldmaster_tag.csv」の、「SummaryType1」の列に記述された内容に従って行われます。本サンプルのタグフィールドマスタには「AVERAGE」が設定されているため、10分間の平均値を求める動作となります。
(fieldmaster_tag.csvのSummaryType1列)
2.動作確認
Panel Serverの画面上部にあるオンライン(黄矢印)をクリックしてください。尚、サマリマスタの設定変更を反映させるには、Panel Serverを一度オフラインにしてから、再度オンラインにする必要がある点に注意してください。
続いて、Panel Editorの画面上部にあるブラウザ実行アイコン(緑矢印)をクリックし、Panel Browserを呼び出します。
トレンドグラフ画面が表示されたら、設定メニューからペン設定ダイアログを表示してください。
ここでは例として、新たに「Group02」というグループを作成して新たにペンを1本追加し、ペンのデータソース選択を表示します。
データソース選択ダイアログが表示されたら、先ほど追加した「10MIN」のデータソースがリストに表示されていることを確認し、10MINのデータの中から任意の1つを選択してください。
データソースを選択したら、ペン設定ダイアログのOKボタンをクリックして設定を閉じて下さい。
トレンドグラフ画面からペングループを「Group02」に変更し、表示期間を4時間にしてみてください。
すると、先ほど追加したペンに、10分集計データが表示されていることが確認できます。
尚、10分集計は、定刻の10分毎に行われます(毎時0分、10分、20分、30分、40分、50分)。実際に集計が行われるまで、グラフ上にデータは表示されません。データが表示されない場合は、しばらく待ってから再度確認してみてください。