1.4. DiscoveryGetHandler
DiscoveryGetHandler
はデプロイメントスキーマを照合し、これらのスキーマを階層ツリービューで開きます。これにより、Cryostat は、登録された検出可能なプラグインと対話して、特定のデプロイメントスキーマと統合できます。
少なくとも 1 つの Pod を含むデプロイメントを作成し、サービスが Red Hat OpenShift 上のデプロイメントまたは Pod にマップされると、Red Hat OpenShift は、Pod IP
アドレスと Service
ポートのすべての組み合わせに対して、エンドポイントオブジェクト /api/v2.2/discovery
を作成します。DiscoveryGetHandler
は、エンドポイント GET
リクエストから情報を受け取り、デプロイスキーマ情報を JSON 形式で照合します。
次の例は、ハンドラーを開くと JSON 形式の階層ツリービューがどのように表示されるかを示しています。この例では、ツリーのルートは UNIVERSE
ノードです。このノードには、Cryostat の組み込み検出メカニズムと Pluggable Discovery API によって検出されたプラグインに由来する子 Realm
ノードタイプが含まれます。
{ "data": { "result": { "children": [ { "children": [], "labels": {}, "name": "Custom Targets", "nodeType": "Realm" }, { "children": [ { "labels": {}, "name": "service:jmx:rmi:///jndi/rmi://cryostat:9091/jmxrmi", "nodeType": "JVM", "target": { "alias": "io.cryostat.Cryostat", "annotations": { "cryostat": { "HOST": "cryostat", "JAVA_MAIN": "io.cryostat.Cryostat", "PORT": "9091", "REALM": "JDP" }, "platform": {} }, "connectUrl": "service:jmx:rmi:///jndi/rmi://cryostat:9091/jmxrmi", "labels": {} } } ], "labels": {}, "name": "JDP", "nodeType": "Realm" } ], "labels": {}, "name": "Universe", "nodeType": "Universe" } }, "meta": { "status": "OK", "type": "application/json" } }