外部エンドポイントの設定

DSA 設定ファイルを使用して外部モニタリングのエンドポイントを設定できます。set external monitor コマンドを使用して、複数のエンドポイントを設定できます。
cad126jp
DSA 設定ファイルを使用して外部モニタリングのエンドポイントを設定できます。
set external monitor
コマンドを使用して、複数のエンドポイントを設定できます。
以下の設定オプションは、外部モニタリングを使用する場合に使用されます。
clear external-monitor;
get external-monitor;
set external-monitor <label> = { <monEndPointDef> <monEventDef>
                                  <monVersionDef> <monCredDef> <monOptionsDef>
                                  <monFormatDef> <monPushInterval> };
<label>              ::=     <string>
<monEendPointDef>    ::=     endpoint = <string>
<monEventDef>        ::=     monitor-events = <event-list>
<monCredDef>         ::=     credentials = username <string> password <string> | NULL
 <monOptionsDef>      ::=     options = no-http-header | NULL
 <monPushInterval>    ::=     push-interval = <num> | NULL
 <event-list>         ::=     <event> | <event> , <event-list>
 <event>              ::=     alarm-log-all | alarm-log-information | alarm-log-critical |
                              alarm-log-caution | update-log | query-log |
                              auth-failures | account-susp | op-error | mw-error |
                              multiwrite | cache | stats | dsastats
clear external-monitor;
このオプションは、外部モニタリング エンドポイントの現在のリストをクリアします。このアクションは、
dxserver init
を介して設定が再ロードされるときに必要です。
get external-monitor;
このオプションは、
DXconsole
を通じて設定されたエンドポイントのリストを表示します。
set external-monitor …
label (必須)
現在のエンドポイント設定ブロックを一意に識別するラベルです。
endpoint (必須)
endpoint の形式は、http[s]://host:port[/uri] です
https を指定すると、DSA は SSL 暗号化リンクを介してモニタリング メッセージを送信します。SSL リンクを介したこの転送には、以下の追加 DSA 設定が必要です。
  • 各 DSA の DSA パーソナリティ証明書
  • $DXHOME/config/ssld/trusted.pem に、モニタリング情報を受信するサーバからのパブリック ルート CA 証明書を含める必要があります。この証明書が、SSL ハンドシェイク中に DSA によって確認されます。
オプションの uri コンポーネントが、モニタリング オブジェクトがプットされる位置に当たる dxmonitor/v1 uri の先頭に追加されます。
注:
外部モニタリング用に設定されたすべての DSA で、設定済みのエンドポイントのホスト名へのアクセス(ルート)が必要です。
monitor-events (必須)
以下の表では、さまざまなイベント、トリガ、およびモニタリング オブジェクトについて説明します。
monitor-events
説明
生成されるモニタリング オブジェクト
トリガ
alarm-log-critical
クリティカル アラーム メッセージを受信します。
alarm
アラーム イベント
alarm-log-caution
警告アラーム メッセージを受信します。
alarm
アラーム イベント
alarm-log-information
情報アラーム メッセージを受信します。
alarm
アラーム イベント
alarm-log-all
すべてのアラーム メッセージを受信します。
alarm
アラーム イベント
query-log
すべてのディレクトリ操作について、リクエスト/レスポンス情報を受信します。
ログ
すべてのディレクトリ リクエストおよびレスポンス
update-log
正常に適用された更新リクエストの更新の詳細を受信します。
ログ
正常な更新
auth-failures
認証に失敗したユーザについてのメッセージを受信します。
event
認証(バインド)拒否
account-susp
アカウントが一時停止されているユーザについてのメッセージを受信します。
event
パスワード ポリシーによるアカウントの一時停止
op-error
障害が生じている操作に関する情報を受信します。
event
リクエストしたが失敗
mw-error
レプリケートされる際に更新に失敗したエントリに関する情報を受信します。これは、データの不整合を示す可能性があります。
event
スレーブ エラーによる Multiwrite レプリケーションの失敗
cache
キャッシュの統計情報を受信します。
cache
タイマ: 設定済み
push-interval
 (デフォルト: 60 秒)
dsastats
内部の DSA 統計情報を受信します。
dsastats
タイマ: 60 秒
multiwrite
Multiwrite キューのステータスを受信します。各 Multiwrite 同格構成に対してメッセージが送信されます。
multiwrite
タイマ: 設定済み
push-interval
(デフォルト: 60 秒)
stats
すべてのディレクトリ操作を対象としたカウンタ数を受信します。
stats
タイマ: 設定済み
push-interval
(デフォルト: 60 秒)
              
警告:
高ボリューム環境で
query-log
および
update-log
オプションを使用する場合は、十分に注意してください。生成されるトラフィックのボリュームが、パフォーマンスおよびメモリ使用率に深刻な影響を与える可能性があります。ログの統合が必要な場合は、query-log および update-log ファイルを直接操作するバックグラウンド ツールを使用することをお勧めします。
credentials (オプション)
credentials では、以下の形式を使用します。
username <string> password <string>
設定されている場合、ユーザ名とパスワードは HTTP 許可ヘッダ(ベーシック)に含まれます。これにより、不要なイベントがポストされることからエンドポイントが保護されます。
パスワードは、
dxpassword -P CADIR password
コマンドを使用してエンコードし、含めることができます。
例:
% dxpassword -P CADIR password
{CADIR}2RqNRjmDUKw=
….
credentials = username monitorUser password {CADIR}2RqNRjmDUKw=
….
options (オプション)
no-http-header
このオプションは、HTTP リクエストの PUT 行およびリクエスト本文のみを送信します。このアクションは、受信しているイベントの処理で、いくつかのエンドポイントを支援できます。
push-interval (オプション)
このオプションは、タイマがトリガするイベントを送信する秒数を定義します。過度のモニタリング トラフィックを防止するために、値を 5 秒 以上に設定する必要があります。
注:
monitoring-event = dsastats を使用する場合、60 秒ごとのスナップショット間でリセットされる既存の内部統計計算が共有されるため、このオプションは設定できません。
以下のイベントは、このオプションをサポートします。
monitoring-event = multiwrite, stats, cache.
設定例
clear external-monitor;
set external-monitor STATS = {
endpoint = "http://hostname.com:8080/rest"
monitor-events = stats, cache, multiwrite
credentials = username "dxmonitor" password "{CADIR}2RqNRjmDUKw="
push-interval = 120
};
# dsastats must occur every 60 seconds
set external-monitor DSASTATS = {
endpoint = "http://hostname.com:8080/rest"
monitor-events = dsastats
credentials = username "dxmonitor" password "{CADIR}2RqNRjmDUKw="
};
set external-monitor EVENTS = {
endpoint = "http:// hostname.com:8080/rest"
monitor-events = auth-failures, account-susp, op-error, mw-error
credentials = username "dxmonitor" password "{CADIR}2RqNRjmDUKw="
};
# protect confidential information
set external-monitor ENCRYPTED = {
endpoint = "https://hostname.com:8443/rest"
monitor-events = alarm-log-all, update-log, query-log
options = no-http-header
credentials = username "dxmonitor" password "{CADIR}2RqNRjmDUKw="
};