このセクションの内容:
DTP は、JMS イベント ブローカーを使って DTP で発生するイベントについてのリアルタイムな情報を提供します。サーバーはイベント メッセージをトピックにパブリッシュし、クライアントはトピックをサブスクライブしてイベント メッセージを受け取ることができます。
イベント ブローカーは、クライアントの接続性とメッセージの配布を NIO プロトコル (nio://) を使って管理します。デフォルト ポートは 61617 です (デフォルト ポートの変更方法については 「JMS イベント ブローカーのポート番号の変更」 を参照)。サンプル URI: nio://<HOSTNAME>:61617
イベント ブローカーにパブリッシュされるすべてのイベントは jms.log ファイルに記録されます。ログへのアクセス方法については 「ログ ファイルの参照」 を参照してください。
設定メニュー (歯車のアイコン) から [Report Center 設定] を選択し、サイドバー メニューの [イベント ブローカー] をクリックしてイベント ブローカーのインターフェイスにアクセスします。このインターフェースを使用すると、イベント ブローカーのトピックを確認できます。
デフォルトでは、DTP は MQTT トランスポート コネクタを使用するように設定されています。トランスポート コネクタは、<DTP_DATA_DIR>/conf
ディレクトリにある EventsConfig.xml 構成ファイルで指定します。
<?xml version="1.0" encoding="UTF-8"?> <events-configuration> <transport-connector port="61617" /> <transport-connector port="1883" protocol="mqtt"/> </events-configuration> |
現在、以下のトピックはサブスクリプションに使用できます。
イベント トピック | 説明 | ||
---|---|---|---|
| このトピックは、違反エクスプローラーとテスト エクスプローラーでの解析メタデータの変更についてサブスクライバに通知します。 対応する
JSON メッセージのボディは以下のスキーマを使用します。
| ||
| このトピックは、変更エクスプローラー でのビルド レビューへの変更についてサブスクライバに通知します。対応する
各メッセージには、リクエスト アクションの種類を表す文字列プロパティ action も含まれます。
メッセージは、メッセージ ボディとして JSON を持つ
メッセージ ボディの JSON は、対応する REST 認証の提供方法を含め、REST エンドポイントの詳細については 「DTP REST API の使用」 を参照してください。 | ||
DataCollector | Data Collector から作成したイベントについてサブスクライバに通知します。対応する
JSON メッセージのボディは以下のスキーマを使用します。
| ||
Project | このトピックは、プロジェクトに対する変更についてサブスクライバに通知します。プロジェクトが作成、更新、削除されるたびに、DTP はイベントをパブリッシュします。メッセージは、メッセージ ボディとして JSON を持つ
JMSType の値は以下のとおりです:
各メッセージには文字列プロパティ
以下の例では、メッセージ セレクタは Parabank プロジェクトだけが更新されたことを検出します。
たとえば、上記の例の更新された "Parabank" プロジェクトのプロジェクト ID が 27 だとします。この URL に
REST 認証の提供方法を含め、REST エンドポイントの詳細については 「DTP REST API の使用」 を参照してください。 |
認証は、トピックへのサブスクリプションには不要ですが、トピックへのパブリッシュには必要です。EventsConfig.xml または eventsbeans.xml 構成ファイルに変更を加えたら、変更を有効にするために、必ず DTP Server を再起動しなければなりません。
<DTP_DATA_DIR>/conf
ディレクトリにある EventsConfig.xml 構成ファイルを開きます。<topic-authentication>
要素を探し、enabled 属性を true に設定します (true
がデフォルトです) 。認証を無効にするには、enabled 属性を false
に設定します。ユーザー名とパスワードの変更は推奨しません。 認証を有効化した後に、特定のトピックについて認証を不要にすることができます。
<DTP_INSTALL>/tomcat/webapps/grs/WEB-INF/springs/
ディレクトリにある events-beans.xml を開きます。destinationAuthenticationManager
Bean の nonAuthenticatedTopics
プロパティの list にトピック名を追加します。
<bean id="destinationAuthenticationManager"> <property name="nonAuthenticatedTopics"> <list> <value>MyTopicName</value> </list> </property> </bean> |
DTP Server を再起動します (「DTP アプリケーションの開始」 を参照)。