4. DATA GATHER¶
この章ではMaxGauge Repositoryでデータを保存するDG (Data Gatherer)について説明します。
4.1. DG アーキテクチャ¶
- Master DGの役割
- Repositoryにテーブルおよびプロシージャ作成
- テーブル パーテーションおよびスキーマ作成
- テーブル パーテーションおよびスキーマ管理
- Platform.JS Interface
- Slave DGの役割
- 一つ以上のRTSとinterfaceしながらRepositoryにデータを保存
- 一定間隔に(1分、10分、1時間、1日) Summaryテーブルにデータを保存
- Alarm設定内訳を利用してAlarm確認後Master DGにAlarm通信
- SMS(short Message Service)システム連携のためのshell実行
4.2. DGの操作¶
4.2.1. Unix/Linuxサーバ¶
- Master DG : mfo-dg-master
- Slave DG : mfo-dg-slave(Seq#) デフォルト:mfo-dg-slave1
# Start
# RHEL6 系
[root]# service mfo-dg-master start
[root]# service mfo-dg-slave1 start
# RHEL7 系
[root]# systemctl start mfo-dg-master.service
[root]# systemctl start mfo-dg-slave1.service
# Stop
# RHEL6 系
[root]# service mfo-dg-master stop
[root]# service mfo-dg-slave1 stop
# RHEL7 系
[root]# systemctl stop mfo-dg-master.service
[root]# systemctl stop mfo-dg-slave1.service
注釈
Master DGインストール時、Master DG (DGServer_M)およびSlave DG#1(DGServer_S1)がサービスとして登録されます。 DGインストールおよびSlave DG追加に関しては、”インストールガイド”を参照してください。
4.2.2. Windowsサーバ¶
- Master DG : DGServer_M
- Slave DG : DGServer_S(Seq#)
4.3. DG実行フロー¶
DGの実行フローは次のとおりです。
- F1. Data保存
- RTSから受信した性能データを、Repositoryで保存します。
- Data Gather異常回復後、SNDFから受信した性能データをRepositoryに保存します。
- DGが自主的に収集する性能データを一定間隔に収集した後、Repositoryに保存します。
- F2. Alarmチェックおよび通信
- DGは次のような方式でAlarmを処理します。
- 初期起動時に、Repositoryからalert情報(指標ごと閾値、repeat count)を抽出します。
- RTSから受信した性能データおよび自主的に収集する性能データがalarm発生条件に該当するのかチェックします。
- Alarm発生条件を満たした場合、該当情報をPlatform.JSに送信してRepositoryに保存します。
4.4. DG設定ファイル¶
DG設定は、DGServer.xmlファイルを使用します。 該当ファイル内のパラメータはほとんどのデフォルト設定値が使用できます。
4.4.1. Master DG用DGServer.xmlファイル¶
- 主なパラメータ
パラメータ名 説明 master DataGatherの役割を設定します。
● true : Master DG
● false : Slave DGgather_port Master DGで使用するポート番号(デフォルト:7000) slave_gather_list Slave DGリストを設定します。
IP : PORT形式で構成されていて、Slave追加はカンマ’,’で追加します。
例)127.0.0.1 : 7001,127.0.0.1 : 7002connection_pool_init_size DataGatherのPostgreSQL(リポジトリDB)に対するコネクションプールの初期値を設定します。(デフォルト:5/変更する場合はパラメータを明示する)
ロギング実行以外のジョブ用コネクションプールです。
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。connection_pool_max_size DataGatherのPostgreSQL(リポジトリDB)に対するコネクションプールの最大値を設定します。(デフォルト:10/変更する場合はパラメータを明示する)
ロギング実行以外のジョブ用コネクションプールです。
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。encrypt ● デフォルト設定値 : false
● 暗号化適用後 : true
暗号化機能は、” 暗号化機能”セクション を参照してください。database_type Repositoryデータベース タイプを設定します。
● PostgreSQLの場合 : postgresql
● Oracleの場合 : oracledatabase_ip RepositoryデータベースIP Addressを設定します。(デフォルト:127.0.0.1) database_port Repositoryデータベースのポート番号を設定します。 database_sid Repositoryデータベースの名前を設定します。
● PostgreSQLの場合 : データベース名
● Oracleの場合 : SID名database_user JDBCに連結するrepositoryデータベースのユーザ名を設定します。 database_password JDBCに連結するrepositoryデータベースのユーザのパスワードを設定します。
- その他パラメータ
パラメータ名 説明 RAC_DBPool use (Oracle Repository) Repository環境構成時、RACを使用する場合に設定します。(デフォルト:false) encrypt (Oracle Repository) RAC環境設定に対する暗号化の有無を設定します。 load_balance (Oracle Repository) RAC環境でJDBC接続時、load balance設定を有効化する場合に設定します。
(デフォルト:false)fail_over (Oracle Repository) RAC環境でJDBC接続時、fail over機能を有効化する場合に設定します。
(デフォルト:false)user (Oracle Repository) RAC環境接続時のmaxgauge用のログインユーザを設定します。 (database_userと別に認識して処理)
(デフォルト:maxgauge)Password (Oracle Repository) RAC環境接続時のログインユーザのパスワードを設定します。 (database_userと別に認識して処理)
(デフォルト:maxgauge)global_name (Oracle Repository) RAC環境のglobal nameを設定します。
(デフォルト:RACDB)node_address (Oracle Repository) RAC環境で構成されたノードのip addressおよびポート番号を設定します。 client_pool_init_size DataGatherがMaxGaugeの他のコンポーネント(PostgreSQL以外)と通信する際に使用するコネクションプール初期値を設定します。(デフォルト:10)
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。client_pool_max_size DataGatherがMaxGaugeの他のコンポーネント(PostgreSQL以外)と通信する際に使用するコネクションプール最大値を設定します。(デフォルト:30)
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。pool_commit (PostgreSQL Repository) select作業が終わった後、Commitをするのかを設定します。
(デフォルト:true)gather_vacuum PostgreSQL Repository環境でDataGatherによる手動Vacuum作業進行の有無を設定します。
(デフォルト:true)vacuum_max_pool (PostgreSQL Repository) gatherによるVacuum命令実行時thread poolの最大個数を設定します。
(デフォルト:3)tablespace (Oracle Repository)データ保存のためのtablespace名を設定します。
(デフォルト:tablespace_name)index_tablespace (Oracle Repository) Repositoryテーブルにインデックスを生成するtablespace名を設定します。
(デフォルト:tablespace_name)partition (Oracle Repository) Repository内テーブル生成時Partitionで生成するのか設定します。
(デフォルト:true)compress_partition (Oracle Repository) Repository DB内Partitionテーブルに対する圧縮実行の有無を設定します。
(デフォルト:true)domain_index (Oracle Repository) Repository内apm_sql_listテーブルのインデックスをドメイン インデックスで生成するのか設定します。
(デフォルト:false)debug Data Gatherデバッグモード使用の有無を設定します。
(デフォルト:false)
trueに設定する場合:ログファイルに細部事項記録socket_timeout Data GatherとTCP通信連結時、TIMEOUT設定の有無を設定します。
(デフォルト:60sec)
0:TIMEOUT設定をしない。query_timeout パーテーション作業時、Create / Drop命令語に対するtimeoutを設定します。
[単位:sec]
(デフォルト:0)log_retention_days Master DataGatherが生成するログファイルの保存周期を設定します。
[単位:日]
(デフォルト:10)log_max_size Master DataGatherが生成するログファイルの全体のサイズを設定します。[単位:MB]
(デフォルト:10)exa_use EXA環境に対する収集の有無を設定します。
(デフォルト:false)
モニタリング環境のうちEXA環境がある場合、trueに変更します。initialize_limit (PostgreSQL Repository) schema initialize作業時同時に遂行する個数を設定します。
(デフォルト:1)
2以上を設定すれば作業が同時に実行されるが、作業実行時間が長くなって速度には差はありません。partition_create_from Repository DB内パーテーションテーブル生成時間を設定します。
(デフォルト:0時)partiotion_drop_from Repository DB内パーテーションテーブル削除時間を設定します。
(デフォルト:3時)partition_drop_to パーテーションテーブル削除に失敗時やり直し制限時間を設定します。
(デフォルト:8時)partition_query_timeout パーテーションテーブル生成/削除時クエリー待機制限時間を設定します。
(デフォルト:0時)log_level DataGatherでプログラム動作時記録するログの量を設定します。
(デフォルト:INFO)
レベルによりDEBUG / INFO / WARN / ERROR行っていて、左側(DEBUG)で設定するほどログ量が増加します。use_unlogged_table (PostgreSQL Repository)テーブルをunlogged tableで生成するのか設定します。
trueに設定する場合、バックアップをしなくてinsert時性能は向上するがサーバを再起動すれば内容が消えます。
(デフォルト:false)
4.4.2. Slave DG用DGServer.xmlファイル¶
- 主なパラメータ
パラメータ名 説明 master DataGatherの役割を設定します。
● true : Master DG
● false : Slave DGgather_port Slave DGで使用するポート番号(デフォルト:7001) slave_gather_list Slave DGリストを設定します。
IP : PORT形式で構成されていて、Slave追加はカンマ’,’で追加します。
例)127.0.0.1 : 7001,127.0.0.1 : 7002connection_pool_init_size DataGatherのPostgreSQL(リポジトリDB)に対するコネクションプールの初期値を設定します。(connection_pool_max_sizeと同様に設定することを推奨)(デフォルト:5)
ロギング実行以外のジョブ用コネクションプールです。
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。connection_pool_max_size DataGatherのPostgreSQL(リポジトリDB)に対するコネクションプールの最大値を設定します。(デフォルト:10)
ロギング実行以外のジョブ用コネクションプールです。
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。logging_pool_max_size DataGatherがロギング実行のために使用するPostgreSQL(リポジトリDB)に対するコネクションプールの最大値を設定します。(デフォルト:150)
初期値は製品固定で「0」です。
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。encrypt ● デフォルト設定値 : false
● 暗号化適用後 : true
暗号化機能は、” 暗号化機能”セクション を参照してください。database_type Repositoryデータベース タイプを設定します。
● PostgreSQLの場合 : postgresql
● Oracleの場合 : oracledatabase_ip RepositoryデータベースIP Addressを設定します。(デフォルト:127.0.0.1) database_port Repositoryデータベースのポート番号を設定します。
● PostgreSQLの場合 : 5432● Oracleの場合 : 1521database_sid Repositoryデータベースの名前を設定します。
● PostgreSQLの場合 : データベース名
● Oracleの場合 : SID名database_user JDBCに連結するrepositoryデータベースのユーザ名を設定します。(例:maxgauge) database_password JDBCに連結するrepositoryデータベースのユーザのパスワードを設定します。(例:maxgauge)
- その他のパラメータ
パラメータ名 説明 client_pool_init_size DataGatherがMaxGaugeの他のコンポーネント(PostgreSQL以外)と通信する際に使用するコネクションプール初期値を設定します。(デフォルト:10)
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。client_pool_max_size DataGatherがMaxGaugeの他のコンポーネント(PostgreSQL以外)と通信する際に使用するコネクションプール最大値を設定します。(デフォルト:30)
割り当てられたコネクションプールが10分間使用されない場合はコネクションプールを初期値まで減らします。RAC_DBPool use (Oracle Repository) Repository環境構成時、RACを使用する場合に設定します。(デフォルト:false) encrypt (Oracle Repository) RAC環境設定に対する暗号化の有無を設定します。 load_balance (Oracle Repository) RAC環境でJDBC接続時、load balance設定を有効化する場合に設定します。
(デフォルト:false)fail_over (Oracle Repository) RAC環境でJDBC接続時、fail over機能を有効化する場合に設定します。
(デフォルト:false)user (Oracle Repository) RAC環境接続時のmaxgauge用のログインユーザを設定します。 (database_userと別に認識して処理)
(デフォルト:maxgauge)Password (Oracle Repository) RAC環境接続時のログインユーザのパスワードを設定します。 (database_userと別に認識して処理)
(デフォルト:maxgauge)global_name (Oracle Repository) RAC環境のglobal nameを設定します。
(デフォルト:RACDB)node_address (Oracle Repository) RAC環境で構成されたノードのip addressおよびポート番号を設定します。 pool_commit (PostgreSQL Repository) select作業が終わった後、Commitをするのかを設定します。
(デフォルト:true)commit_write (Oracle Repository)セッションレベルのcommit_writeパラメータ値を設定します。 statics_level (Oracle Repository)セッションレベルのstatics_levelパラメータ値を設定します。 session_cached_cursors (Oracle Repository)セッションレベルのsession_cached_cursorsパラメータ値を設定します。(デフォルト:0) cache_preparestatement JDBCのpreparestatementを再使用するかどうかを設定します。(デフォルト:true) domain_index (Oracle Repository) Repository内apm_sql_listテーブルのインデックスをドメイン インデックスで生成するのか設定します。
(デフォルト:false)debug Data Gatherデバッグモード使用の有無を設定します。
(デフォルト:false)
trueに設定する場合:ログファイルに細部事項記録socket_timeout Data GatherとTCP通信連結時、TIMEOUT設定の有無を設定します。
(デフォルト:60sec)
0:TIMEOUT設定をしない。query_timeout パーテーション作業時、Create / Drop命令語に対するtimeoutを設定します。
[単位:sec]
(デフォルト:0)warning_log_elapse ロギング時間が設定値を超えると、ログを保存するオプションで実行時間を設定します。(デフォルト:5) max_batch_count Batch作業時に一度に行う最大個数を設定します。(デフォルト:1000) log_retention_days Master DataGatherが生成するログファイルの保存周期を設定します。
[単位:日]
(デフォルト:10)log_max_size Master DataGatherが生成するログファイルの全体のサイズを設定します。[単位:MB]
(デフォルト:10)log_max_size Master DataGatherが生成するログファイルの全体のサイズを設定します。[単位:MB]
(デフォルト:10)target_connect_retry Target DBへの誤った設定情報入力による接続失敗時、何回まで接続を再トライするかを設定します。(デフォルト:10) db_stop_sms_repeat DB Stop アラームを繰り返し送信するための設定で、繰り返し回数を設定します。(デフォルト:1) db_stop_sms_interval DB Stop アラームを繰り返し送るための設定で、繰り返し周期を設定します。(デフォルト:1) exa_use EXA環境に対する収集の有無を設定します。
(デフォルト:false)
モニタリング環境のうちEXA環境がある場合、trueに変更します。log_level DataGatherでプログラム動作時記録するログの量を設定します。
(デフォルト:INFO)
レベルによりDEBUG / INFO / WARN / ERROR行っていて、左側(DEBUG)で設定するほどログ量が増加します。download_procedure_info dba_proceduresビューに対するデータ収集の有無を設定します。
(デフォルト:false)download_objects dba_objectビューに対するデータ収集の有無を設定します。
(デフォルト:false)alarm_only Repositoryにalarm情報のみ保存する場合に設定します。
(デフォルト:false)sms_alertlog_length Oracle Alert Log発生時、SMSで送信するalert logの最大字数を設定します。
(デフォルト:200字)
0:alert logをSMSに伝送しないsms_alertlog_line alertlog発生時、ORAメッセージを基準に設定されたライン数ぐらい上下を切ってdescriptionで伝達するオプションで、ライン数を設定します。
例) 3に設定された場合、ORA-メッセージ基準の上で3行、下へ3行合計7行発送されます。(デフォルト:3line)cont_alert_interval 同一Levelのアラームが持続的に発生する時、繰り返してアラームを送るために設定します。
(デフォルト:60sec)rts_daemon_disconnect_repeat_count RTSと通信が切れた時、アラームを繰り返し送るための設定で繰り返す回数を設定します。(デフォルト:1回) use_alertlog_filter_for_line alertlogのフィルタリングを専門対象にするのかライン別に処理するのか設定します。
(デフォルト:false)
4.5. SMS連携のための実行フロー¶
MaxGaugeはSMS(Short Message Service)システムとの連携機能を提供します。SMS連携の実行フローは下記のとおりです。
- F1. SMS.jar呼び出し
- 1.Slave DGは登録されたalert別でalarm発生の有無をチェックします。
- 2.該当alarmがSMS連係対象ならSMS.jarを呼び出します。
- F2. SMS.xml説明
SMS.jarはSMS.xmlファイルに定義された内容により動作します。下記はSMS.xmlファイルの例です。
<XmSMS> <SMS_DB encrypt="false"> <sms_database_type>oracle</sms_database_type> <sms_database_ip>127.0.0.1</sms_database_ip> <sms_database_port>1521</sms_database_port> <sms_database_sid>orcl</sms_database_sid> <sms_database_user>maxgauge</sms_database_user> <sms_database_password>maxgauge</sms_database_password> <bind_max_length>80</bind_max_length> </SMS_DB> <SMS_INSERT_QUERY> INSERT INTO sms_msg ( sms_time, sms_user, sms_phone_number, sms_message, sms_desc ) VALUES ( sysdate, ? , ? , ? , 'From Maxgauge' ) </SMS_INSERT_QUERY> <SMS_SET_BIND_VALUE> <b1>p$sms_user_name$</b1> <b2>p$phone_number$</b2> <b3>[MXG SMS] (p$string_level$:p$value$) p$tnsname$ p$description$ 'teqteqteqtqetq' </b3> </SMS_SET_BIND_VALUE> </XmSMS>
注釈
SMS.xmlファイルは{Slave DG設置ディレクトリ}svc配下に位置する。 SMS発送のためにはsample_sms.xml / sample_sms.jar名の「sample_」の除去が必要です。
パラメータ名 説明 SMS_DB encrypt SMS関連の主なパラメータに対する暗号化適用の有無を設定します。
デフォルト値:false
暗号化適用後:true
暗号化機能は“暗号化機能” Sectionを参照してください。sms_database_type SMS SystemのDBMSの種類を設定します。
サポートするDB:oracle / postgres / mssqlsms_database_ip SMS System IP Addressを設定します。
デフォルト値:localhostsms_database_port SMS SystemのDB portを設定します。
デフォルト値:1521sms_database_sid SMS SystemのSIDを設定する。
デフォルト値:orclsms_database_user SMS System接続用DB user名を設定します。
デフォルト値:oraclesms_database_password SMS System接続用DB passwordを設定します。
デフォルト値:oraclesms_database_query_timeout SMS発送のためのクエリー実行時最大応答待ち時間を設定します。
デフォルト値:0bind_max_length <SMS_SET_BIND_VALUE>内のbind値それぞれに対する最大の長さを設定する。
デフォルト値:80level 設定したアラームレベルの時、該当フォーマットでSMSを発送します。
デフォルト値:N
設定可能なレベル:N / W / C
levelをNに設定した場合、Normal Level以上のアラームが発生するとSMSを発送します。SMS_INSERT_QUERY SMS SystemにSMS情報を入力するためのINSERT文章を提供します。
各パラメーターは“?”で表示して、該当内容は<SMS_SET_BIND_VALUE> Sectionで提供します。SMS_SET_BIND_VALUE INSERT構文内で使うbind値を設定します。
4.5.1. SMS_SET_BIND_VALUE¶
パラメータ名 説明 p$sms_user_name$ SMSユーザ名 p$business_name$ Configurationウインドウを通じて、インスタンス情報入力時に設定したビジネス名 p$phone_number$ SMSユーザ情報に登録された電話番号 p$tnsname$ インスタンス名 p$alert_type$ Alert Type(DB Stat,DB Waitなど) p$resource_name$ Alert指標名 p$value$ Alert Value p$level$ Alert Level
0: Normal
1: Warning
C: Criticalp$string_level$ Alert Level (N, W, C) p$description$ Alertに対する説明(TablespaceおよびDisk Alertに対する追加情報提供)
Tablespace Alert:Tablespace Name,Usage (%),Free Size (KB)提供
Disk Alert:File System Name,Mount Point,Usage (%),Total (MB),Free (MB)提供p$server_time$ Alertが発生したSystem Time p$current_time$ DGがAlert情報を受信した時間 注釈
Time Zoneが違うサーバ内に設置されたMaxGaugeに対するalert発生時間を簡単に認知することができるように p$server_time$ (該当サーバ)とp$current_time$ (Local Time)をそれぞれ提供します。
4.6. メール連携のための実行フロー¶
- F1. mail.jar呼び出し
- Slave DGは登録されたalert別でalarm発生の有無をチェックします。
- 該当alarmがMail発送対象ならmail.jarを呼び出します。
- F2. mail.xml説明
Mail.jarはmail.xmlファイルに定義された内容により動作します。下記はmail.xmlファイルの例です。
<XmMail> <SMTP encrypt="false"> <ssl>false</ssl> <auth>false</auth> <host>exemmain.ex-em.com</host> <port>25</port> <user></user> <password></password> </SMTP> <DEFAULT level="N"> <SUBJECT>p$sms_user_name$様[XM-MXG]アラーム</SUBJECT> <CONTENT> [XM-MXG] TNS NAME : p$tnsname$, TIME : p$server_time$ ALERT : p$alert_type$:p$resource_name$ LEVEL : p$string_level$ VALUE : p$value$ DESC : p$description$ </CONTENT> </DEFAULT> </XmMail>
注釈
mail.xmlファイルは{Slave DG設置ディレクトリ}svc配下に位置します。 Mail発送のためにはsample_mail.xml / sample_mail.jar名の「sample_」の除去が必要です。
パラメータ名 説明 SMTP encrypt SMS関連主なパラメーターに対する暗号化適用の有無を設定します。
デフォルト値:false
暗号化適用後:true
暗号化機能は“4.8. 暗号化機能と適用について”を参照します。ssl メール発送のためのプロトコル設定でssl方式で発送するのか設定します。
デフォルト値:trueauth 検証された使用者で接近するのか設定します。
デフォルト値:truehost メール発送のためのサーバのhost情報を設定します。
デフォルト値:smtp.example.comport メール発送のためのサーバのポート情報を設定します。
デフォルト値:465user メール発送のための送信元メールアドレスを設定します。
デフォルト値:example@example.com
※設定なしは不可でダミー値でも設定が必須password メール発送のための送信元メールアドレスのパスワードを設定します。
デフォルト値:example
※設定なしでも可level 設定したアラームレベルの時、該当フォーマットでメール発送します。
デフォルト値:N
設定可能なレベル:N / W / C
levelをNに設定すればNormal Level以上のアラームが発生する時メール発送します。subject アラーム発生時、発送されるメールの題名を設定します。 content アラーム発生時発送されるメールの内容を設定します。
4.6.1. SMS_SET_BIND_VALUE¶
パラメータ名 説明 p$sms_user_name$ SMSユーザ名 p$business_name$ Configurationウインドウを通じて、インスタンス情報入力時に設定したビジネス名 p$phone_number$ SMSユーザ情報に登録された電話番号 p$tnsname$ インスタンス名 p$alert_type$ Alert Type(DB Stat,DB Waitなど) p$resource_name$ Alert指標名 p$value$ Alert Value p$level$ Alert Level
0: Normal
1: Warning
C: Criticalp$string_level$ Alert Level (N, W, C) p$description$ Alertに対する説明(TablespaceおよびDisk Alertに対する追加情報提供)
Tablespace Alert:Tablespace Name,Usage (%),Free Size (KB)提供
Disk Alert:File System Name,Mount Point,Usage (%),Total (MB),Free (MB)提供p$server_time$ Alertが発生したSystem Time p$current_time$ DGがAlert情報を受信した時間 注釈
Time Zoneが違うサーバ内に設置されたMaxGaugeに対するalert発生時間を簡単に認知することができるように p$server_time$ (該当サーバ)とp$current_time$ (Local Time)をそれぞれ提供します。
4.7. API発送のための実行フロー¶
- F1. api.jar呼び出し
- Slave DGは登録されたalert別に、alarm発生の有無をチェックします。
- 該当alarmがMail発送対象ならapi.jarを呼び出します。
- F2. api.xml説明
api.jarはapi.xmlファイルに定義された内容により動作します。下記はapi.xmlファイルの例です。
<XmSMS> <SMS_API encrypt="false"> <sms_method>POST</sms_method> <sms_url>http://localhost:9110/TEST/home.jsp</sms_url> <sms_msg_encode>UTF-8</sms_msg_encode> <sms_content_type>x-www-form-urlencoded</sms_content_type> <sms_tls_version>TLSv1.2</sms_tls_version> <sms_timeout_conn>5</sms_timeout_conn> <sms_timeout_read>5</sms_timeout_read> <sms_max_length>80</sms_max_length> <sms_header> <h1>Authorization:KEY</h1> </sms_header> </sms_header> </SMS_API> <DEFAULT level="N"> <DATA>user_name=%s&phone_number=%s</DATA> <PARAMETER> <p1>p$sms_user_name$</p1> <p2>p$phone_number$</p2> </PARAMETER> </DEFAULT> </XmSMS>
注釈
api.xmlファイルは{Slave DG設置ディレクトリ}svc配下に位置します。 api呼び出しのためにはsample_api.xml / sample_api.jar名の「sample_」の除去が必要です。
パラメータ名 説明 SMS_API encrypt SMS関連主なパラメーターに対する暗号化適用の有無を設定します。
デフォルト値:false
暗号化適用後:true
暗号化機能は“暗号化機能” Sectionを参照します。sms_method Request方式を設定します。
デフォルト値:POSTsms_url RequestするURL住所を設定します。
要請するURL住所の後に?を入力した後パラメーターを入力することができ、またパラメータは&記号に区分されます。
例)http://[ip]:[port]/[page]?[parameter1]=[value]&[parameter2] =[value]sms_msg_encode パラメーターのEncodingタイプを設定します。
デフォルト値:UTF-8sms_content_type SMSに送るデータのタイプを設定します。
デフォルト値:x-www-form-urlencodedsms_tls_version HTTPS通信時使うTLSバージョン情報を設定します。
デフォルト値:TLSv1.2sms_timeout_conn 接続がタイムアウトする時間を設定します。
デフォルト値:5minsms_timeout_read 応答がタイムアウトする時間を設定します。
デフォルト値:5minsms_max_length パラメータのBind値の長さを設定します。
デフォルト値:80bytesms_header HTTPメッセージのヘッダに入る内容を設定します。
デフォルト値:Authorization:KEYlevel 設定したアラームレベルの時、該当フォーマットでメール発送します。
デフォルト値:N
設定可能なレベル:N / W / C
levelをNに設定すればNormal Level以上のアラームが発生する時メール発送します。Data api呼び出し時伝達するメッセージを設定します。
4.7.1. SMS_SET_BIND_VALUE¶
パラメータ名 説明 p$sms_user_name$ SMSユーザ名 p$business_name$ Configurationウインドウを通じて、インスタンス情報入力時に設定したビジネス名 p$phone_number$ SMSユーザ情報に登録された電話番号 p$tnsname$ インスタンス名 p$alert_type$ Alert Type(DB Stat,DB Waitなど) p$resource_name$ Alert指標名 p$value$ Alert Value p$level$ Alert Level
0: Normal
1: Warning
C: Criticalp$string_level$ Alert Level (N, W, C) p$description$ Alertに対する説明(TablespaceおよびDisk Alertに対する追加情報提供)
Tablespace Alert:Tablespace Name,Usage (%),Free Size (KB)提供
Disk Alert:File System Name,Mount Point,Usage (%),Total (MB),Free (MB)提供p$server_time$ Alertが発生したSystem Time p$current_time$ DGがAlert情報を受信した時間 注釈
Time Zoneが違うサーバ内に設置されたMaxGaugeに対するalert発生時間を簡単に認知することができるように p$server_time$ (該当サーバ)とp$current_time$ (Local Time)をそれぞれ提供します。
4.8. 暗号化機能と適用について¶
4.8.1. 暗号化が可能なパラメータ¶
ファイル名 | 項目 |
---|---|
DGServer.xml | ・database_ip ・database_port ・database_sid ・database_user ・database_password |
SMS.xml | ・sms_database_ip ・sms_database_port ・sms_database_sid ・sms_database_user ・sms_database_password |
mail.xml | ・mail_smtp_host ・mail_smtp_port ・mail_smtp_user ・mail_smtp_password |
api.xml | ・sms_url |
4.8.2. DGServer.xmlに暗号化を適用する方法¶
- {Master DGとSlave DGインストールディレクトリ} binディレクトリにあるDGServer.jarファイルを利用して暗号化を実行します。
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar DGServer.jar encrypt
Input:127.0.0.1 ← 暗号化したい値を入力
Encrypt:_sLugnyxb0CCeVTzI/wHTfW9+N0UxThuUVlfXFW9pqJhO8CGhhnHr ←暗号化された値
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar DGServer.jar encrypt
Input:5432 ← 暗号化したい値を入力
Encrypt:_ptptft0IZpbFmaS+LtevatehzL6FuOOFgbvlZ4RTqmbWKFk= ←暗号化された値
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar DGServer.jar encrypt
Input:pg_repo ← 暗号化したい値を入力
Encrypt:_u+vxZs9OGa9RgJkpcP8o2AEY7laBcQrhkGHd8AAsEG7y4Jw= ←暗号化された値
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar DGServer.jar encrypt
Input:maxgauge ← 暗号化したい値を入力
Encrypt:_7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq ←暗号化された値
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar DGServer.jar encrypt
Input:maxgauge ← 暗号化したい値を入力
Encrypt:_irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid ←暗号化された値
- 暗号化された文字列をDGServer.xmlファイル内適用し、<encrypt>をtrueに変更します。
<DBPool>
<encrypt>true</encrypt>
<database_type>postgres</database_type>
<database_ip>127.0.0.1</database_ip>
<database_port>_ptptft0IZpbFmaS+LtevatehzL6FuOOFgbvlZ4RTqmbWKFk=</database_port>
<database_sid>_u+vxZs9OGa9RgJkpcP8o2AEY7laBcQrhkGHd8AAsEG7y4Jw=</database_sid>
<database_user>_7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq</database_user>
<database_password>_irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid</database_password>
</DBPool>
注釈
暗号化適用時、5つの主要なパラメータをすべて暗号化する必要があります。 設定ファイルの編集後は、反映するためにDataGatherを再起動します。
4.8.3. SMS.xmlに暗号化を適用する方法¶
- {Slave DGインストールディレクトリ} binディレクトリにあるSMS.jarファイルを利用して暗号化を実行します。
C:\EXEM\DGServer_S1\bin> java -jar sms.jar encrypt
Input:127.0.0.1
Encrypt:_sLugnyxb0CCeVTzI/wHTfW9+N0UxThuUVlfXFW9pqJhO8CGhhnHr
C:\EXEM\DGServer_S1\bin> java -jar sms.jar encrypt
Input:1521
Encrypt:_ptptft0IZpbFmaS+LtevatehzL6FuOOFgbvlZ4RTqmbWKFk=
C:\EXEM\DGServer_S1\bin> java -jar sms.jar encrypt
Input:orcl
Encrypt:_u+vxZs9OGa9RgJkpcP8o2AEY7laBcQrhkGHd8AAsEG7y4Jw=
C:\EXEM\DGServer_S1\bin> java -jar sms.jar encrypt
Input:maxgauge
Encrypt:_7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq
C:\EXEM\DGServer_S1\bin> java -jar sms.jar encrypt
Input:maxgauge
Encrypt:_irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid
- 暗号化された文字列をSMS.xmlファイル内適用し、<SMS_DB encrypt>をtrueに変更します。
<SMS_DB encrypt="true">
<sms_database_type>oracle</sms_database_type>
<sms_database_ip> sLugnyxb0CCeVTzI/wHTfW9+N0UxThuUVlfXFW9pqJhO8CGhhnHr </sms_database_ip>
<sms_database_port> ptptft0IZpbFmaS+LtevatehzL6FuOOFgbvlZ4RTqmbWKFk=</sms_database_port>
<sms_database_sid> u+vxZs9OGa9RgJkpcP8o2AEY7laBcQrhkGHd8AAsEG7y4Jw=</sms_database_sid>
<sms_database_user>7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq</sms_database_user>
<sms_database_password> irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid /sms_database_password>
<bind_max_length>80</bind_max_length>
</SMS_DB>
注釈
暗号化適用時、5つの主要なパラメータをすべて暗号化する必要があります。 設定ファイルの編集後は、反映するためにDataGatherを再起動します。 DGServer.jar / sms.jar / mail.jar / api.jarには同じ暗号化ロジックのため、区分なく使用可能です。
4.8.4. Mail.xmlに暗号化を適用する方法¶
- {Slave DGインストールディレクトリ} binディレクトリにあるMail.jarファイルを利用して暗号化を実行します。
C:\EXEM\DGServer_S1\bin>java -jar mail.jar encrypt
Input:127.0.0.1
Encrypt:_sLugnyxb0CCeVTzI/wHTfW9+N0UxThuUVlfXFW9pqJhO8CGhhnHr
C:\EXEM\DGServer_S1\bin>java -jar mail.jar encrypt
Input:25
Encrypt: _tAwHtktzTkGR+a8B9titWcawiPswV5UcOgPTTt8XvA==
C:\EXEM\DGServer_S1\bin>java -jar mail.jar encrypt
Input:maxgauge
Encrypt:_7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq
C:\EXEM\DGServer_S1\bin>java -jar mail.jar encrypt
Input:maxgauge
Encrypt:_irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid
- 暗号化された文字列をmail.xmlファイル内適用し、<SMTP encrypt>をtrueに変更します。
<SMTP encrypt="true">
<ssl>false</ssl>
<auth>false</auth>
<host> _sLugnyxb0CCeVTzI/wHTfW9+N0UxThuUVlfXFW9pqJhO8CGhhnHr</host>
<port> </port>
<user_7t10Gf4aA1lmMt5wCZKrxGvLtAm1AxhkOYzZn4EuZuRp9n7a5aKq </user>
<password_irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid </password>
</SMTP>
注釈
暗号化適用時、4つの主要なパラメータをすべて暗号化する必要があります。 設定ファイルの編集後は、反映するためにDataGatherを再起動します。 DGServer.jar / sms.jar / mail.jar / api.jarには同じ暗号化ロジックのため、区分なく使用可能です。
4.8.5. API.xmlに暗号化を適用する方法¶
- {Slave DGインストールディレクトリ} binディレクトリにあるAPI.jarファイルを利用して暗号化を実行します。
C:\EXEM\DGServer_S1\bin>java -jar api.jar encrypt
Input: http://localhost:9110/TEST/home.jsp
Encrypt: _9JDaR+8xrADpw5IG4O3OzkSfbb1klA96gGSr+zm
- 暗号化された文字列をsms.xmlファイル内適用し、<SMS_DB encrypt>をtrueに変更します。
<SMS_API encrypt="true">
<sms_method>POST</sms_method>
<sms_url> _9JDaR+8xrADpw5IG4O3OzkSfbb1klA96gGSr+zm</sms_url>
<sms_msg_encode>UTF-8</sms_msg_encode>
....
</SMS_API>
注釈
暗号化適用時、1つの主要なパラメータをすべて暗号化する必要があります。 設定ファイルの編集後は、反映するためにDataGatherを再起動します。 DGServer.jar / sms.jar / mail.jar / api.jarには同じ暗号化ロジックのため、区分なく使用可能です。
4.8.6. 暗号化stringの確認方法¶
C:\Users\seankim\Desktop\Maxgauge5.2_DG_150308.1\DGServer_S1\bin>java -jar sms.jar decrypt
Input: _irMPnosJd10+dCoIMppGw0npwCcHd+kysDI9fYz9sNdc+dd5nxid
4.9. Alarm¶
4.9.1. Alarm発生関連パラメータ¶
DGは、次のようなパラメータ設定値を利用してalarm発生の有無を決定します。
パラメータ名 | 説明 | 設定方法 | 適用範囲 |
---|---|---|---|
alert_interval | DGが性能データに対するalarm発生の有無をチェックする間隔を設定 | アラート管理管理画面のInterval(Sec) | 個別Stat別 |
repeat_count | 連続的にrepeat_countと設定回数以上alarm発生条件を満たした場合、alarmが発生 | アラート管理管理画面のRepeat | 個別Stat別 |
cont_alert_interval | Alarm条件が持続する場合に、持続的にalarmを発生させる場合に使用する(デフォルト60秒) | /opt/maxgauge/DGServer_S1/conf/DGServer.xml | MaxGaugeサーバ単位 |
- cont_alert_interval(sec)
項目 説明 Syntax cont_alert_interval=integer Option range 0 : 機能使用しない
integer : 設定された間隔ごとにalarm発生Default value 0 例 cont_alert_interval =60