...
This page outlines steps taken to be able to query a deployed perfSONAR lookup service. The service in question is one deployed by Internet2 under the PS-PS framework. It provides a registry of perfSONAR compatible services such as registered Topology Services, RRD MAs etc etc. It is located at:
Code Block |
---|
http://patdev0.internet2.edu:6666/perfSONAR_PS/services/LS |
...
Code Block |
---|
<SOAP-ENV:Envelope>
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<nmwg:message id="message.9999465" type="response">
<nmwg:metadata id="metadata.14215133">
<nmwg:eventType>error.perfSONAR_PS.transport</nmwg:eventType>
</nmwg:metadata>
<nmwg:data id="data.15234559" metadataIdRef="metadata.14215133">
<nmwgr:datum>
Received message with 'INVALID REQUEST', are you using a web browser?
</nmwgr:datum>
</nmwg:data>
</nmwg:message>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
|
Querying
In order to query the LS, one needs to construct a SOAP envelop with the relevant query to perform as an XML document. One can send the relevant XML via the perfSONAR-PS client via SVN (or use a relevant SOAP wrapper).
Simple Echo (Service up?) Query
Code Block |
---|
<nmwg:message type="EchoRequest"
id="id1"
xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/">
<nmwg:metadata id="meta" xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/">
<nmwg:eventType>echo.ls</nmwg:eventType>
</nmwg:metadata>
<nmwg:data id="data" metadataIdRef="meta" xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/"/>
</nmwg:message>
|
Code Block |
---|
[ytl@Yees-Ubuntu:~/Work/perfSONAR/perfSONAR-PS/trunk/perfSONAR-PS/client]$ ./client.pl http://patdev0.internet2.edu:6666/perfSONAR_PS/services/LS /tmp/test.xml
2007/10/09 13:52:27 DEBUG> Transport.pm:469 perfSONAR_PS::Transport::makeEnvelope - Envelope created.
2007/10/09 13:52:27 DEBUG> Transport.pm:488 perfSONAR_PS::Transport::sendReceive - Sending information to "http://patdev0.internet2.edu:6666//perfSONAR_PS/services/LS".
2007/10/09 13:52:27 DEBUG> Transport.pm:505 perfSONAR_PS::Transport::sendReceive - Response returned.
<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<nmwg:message xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/" id="message.6185033" messageIdRef="id1" type="EchoResponse">
<nmwg:metadata xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/" id="metadata.5527649" metadataIdRef="meta">
<nmwg:eventType>success.echo</nmwg:eventType>
</nmwg:metadata>
<nmwg:data xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/" id="data.8204718" metadataIdRef="metadata.5527649">
<nmwgr:datum xmlns:nmwgr="http://ggf.org/ns/nmwg/result/2.0/">The echo request has passed.</nmwgr:datum>
</nmwg:data>
</nmwg:message>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
|
Shows a successfully configured service.
Query the LS for information
Code Block |
---|
<?xml version='1.0' encoding='UTF-8'?>
<nmwg:message type="LSQueryRequest"
id="msg1"
xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/"
xmlns:xquery="http://ggf.org/ns/nmwg/tools/org/perfsonar/service/lookup/xquery/1.0/">
<nmwg:metadata id="meta1">
<xquery:subject id="sub1">
declare namespace nmwg="http://ggf.org/ns/nmwg/base/2.0/";
collection('control.dbxml')/nmwg:metadata[@id="http://lhcopnmon1-mgm.fnal.gov:8091/axis/services/snmpMA"]
</xquery:subject>
<nmwg:eventType>http://ggf.org/ns/nmwg/tools/org/perfsonar/service/lookup/xquery/1.0</nmwg:eventType>
</nmwg:metadata>
<nmwg:data metadataIdRef="meta1" id="d1"/>
</nmwg:message>
|