perfsonar-dev - Re: [pS-dev] time types in requests to SQL MA and E2Emon MP
Subject: perfsonar development work
List archive
- From: "Jeff W. Boote" <>
- To: Roman Lapacz <>
- Cc: Roman Lapacz <>, Mark Yampolskiy <>, "Matthias K. Hamm" <>, Loukik Kudarimoti <>, "" <>, Jason Zurawski <>
- Subject: Re: [pS-dev] time types in requests to SQL MA and E2Emon MP
- Date: Thu, 03 May 2007 10:24:27 -0600
Roman Lapacz wrote:
It would be good to find time to discuss the schema of transformation stuff and container structures in parameter (see my one of previous emails). I asked Szymon to include these topics in the aganda.
I'm attaching two requests to this message. The first one is a simple transformation from the snmp namespace to the characteristic namespace.
The second one is more complex - it allows you to specify exactly which elements in the response message should be converted using XPath. (Alternatively, it could be made much more simple if we just used a specific targeted eventType that would do this conversion for one type of response data only. I was just playing with the idea of a general time conversion transformation description. What do you think?)
I'd be happy to show the demo next week (and I'll send out a link too).
Not sure how long this will be working - but here are the two demos:
http://packrat.internet2.edu/circUIts/both.html
http://packrat.internet2.edu/gmaps/index.cgi?mode=map&domain=perfsonar.net&action=Go
They are probably very dependent on browser version - the first one only supports FireFox 1.5 right now. (I wrote the first one - Yee wrote the second one. Jason made modifications to both and added support into services for us.)
jeff
<?xml version='1.0' encoding='UTF-8'?> <!-- Purpose: Transform tool snmp namespace of 'utilization' into the characteristic namespace --> <!-- Version: $Id$ --> <nmwg:message id="msg4" type="http://schema.perfsonar.net/MessageTypes/SetupDataRequest/2.0" <!-- perhaps ops namespace? --> xmlns:trans="http://schema.perfsonar.net/tools/transform/SnmpToUtil/2.0/" xmlns:utilization="http://ggf.org/ns/nmwg/characteristic/utilization/2.0/" xmlns:snmp="http://ggf.org/ns/nmwg/tools/snmp/2.0/" xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/" xmlns:nmwgt="http://ggf.org/ns/nmwg/topology/2.0/" xmlns:select="http://ggf.org/ns/nmwg/ops/select/2.0/" xmlns:nmtm="http://ggf.org/ns/nmwg/time/2.0/"> <nmwg:metadata id="meta1"> <snmp:subject id="iusub1"> <nmwgt:interface> <nmwgt:ipAddress type="v4">10.10.11.1</nmwgt:ipAddress> <nmwgt:hostName>dreadnought</nmwgt:hostName> <nmwgt:ifName>eth0</nmwgt:ifName> <nmwgt:ifDescription>gigE</nmwgt:ifDescription> <nmwgt:ifAddress type="ipv4">128.4.133.163</nmwgt:ifAddress> <nmwgt:ifIndex>0</nmwgt:ifIndex> <!-- Can specify this up here, or use seperate metadata chains to describe. <nmwgt:direction>*</nmwgt:direction> <nmwgt:direction>in</nmwgt:direction> <nmwgt:direction>out</nmwgt:direction> --> </nmwgt:interface> </snmp:subject> <snmp:parameters id="param1"> <nmwg:parameter name="SNMPVersion" value="1"/> <nmwg:parameter name="SNMPCommunity" value="public"/> <nmwg:parameter name="OID" value="1.3.6.1.2.1.2.2.1.10"/> <nmwg:parameter name="Alias" value="ifInOctets"/> </snmp:parameters> </nmwg:metadata> <!-- The second metadata is used to convert the results of the second operation. It selects a specific time-range. This could potentially be chained in before the conversion to the 'characteristic' namespace. --> <nmwg:metadata id="meta2"> <select:subject id="iusub2" metadataIdRef="meta1"/> <select:parameters id="param2"> <nmwg:parameter name="startTime">1121472000</nmwg:parameter> <nmwg:parameter name="endTime">1121904000</nmwg:parameter> <!-- <nmwg:parameter name="startTime"> <nmtm:time type="ISO" value="2005-07-16T00:00:00Z"/> </nmwg:parameter> <nmwg:parameter name="endTime"> <nmtm:time type="ISO" value="2005-07-21T00:00:00Z"/> </nmwg:parameter> --> <nmwg:parameter name="consolidationFunction">AVERAGE</nmwg:parameter> <nmwg:parameter name="resolution">60</nmwg:parameter> </select:parameters> <nmwg:eventType>http://ggf.org/ns/nmwg/ops/select/2.0</nmwg:eventType> </nmwg:metadata> <!-- The third metadata is used to convert the results of the first operation. It converts it into the 'characteristic' namespace. --> <nmwg:metadata id="meta3"> <trans:subject id="iusub3" metadataIdRef="meta2"/> <trans:parameters id="param3"> <!-- <nmwg:parameter name="AnyConversionOptionsNeeded">Blah</nmwg:parameter> --> </trans:parameters> <nmwg:eventType>http://schema.perfsonar.net/tools/transform/SnmpToUtil/2.0</nmwg:eventType> </nmwg:metadata> <!-- This is the specific data we wish to see --> <nmwg:data id="data1" metadataIdRef="meta3"/> </nmwg:message>
<?xml version='1.0' encoding='UTF-8'?> <!-- Purpose: Transform tool snmp namespace of 'utilization' into the characteristic namespace --> <!-- Version: $Id$ --> <!-- perhaps ops namespace for xmlns:trans? --> <nmwg:message id="msg4" type="http://schema.perfsonar.net/MessageTypes/SetupDataRequest/2.0" xmlns:trans="http://schema.perfsonar.net/tools/transform/SnmpToUtil/2.0/" xmlns:utilization="http://ggf.org/ns/nmwg/characteristic/utilization/2.0/" xmlns:snmp="http://ggf.org/ns/nmwg/tools/snmp/2.0/" xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/" xmlns:nmwgt="http://ggf.org/ns/nmwg/topology/2.0/" xmlns:select="http://ggf.org/ns/nmwg/ops/select/2.0/" xmlns:nmtm="http://ggf.org/ns/nmwg/time/2.0/"> <nmwg:metadata id="meta1"> <snmp:subject id="iusub1"> <nmwgt:interface> <nmwgt:ipAddress type="v4">10.10.11.1</nmwgt:ipAddress> <nmwgt:hostName>dreadnought</nmwgt:hostName> <nmwgt:ifName>eth0</nmwgt:ifName> <nmwgt:ifDescription>gigE</nmwgt:ifDescription> <nmwgt:ifAddress type="ipv4">128.4.133.163</nmwgt:ifAddress> <nmwgt:ifIndex>0</nmwgt:ifIndex> <!-- Can specify this up here, or use seperate metadata chains to describe. <nmwgt:direction>*</nmwgt:direction> <nmwgt:direction>in</nmwgt:direction> <nmwgt:direction>out</nmwgt:direction> --> </nmwgt:interface> </snmp:subject> <snmp:parameters id="param1"> <nmwg:parameter name="SNMPVersion" value="1"/> <nmwg:parameter name="SNMPCommunity" value="public"/> <nmwg:parameter name="OID" value="1.3.6.1.2.1.2.2.1.10"/> <nmwg:parameter name="Alias" value="ifInOctets"/> </snmp:parameters> </nmwg:metadata> <!-- The second metadata is used to convert the results of the second operation. It selects a specific time-range. This could potentially be chained in before the conversion to the 'characteristic' namespace. --> <nmwg:metadata id="meta2"> <select:subject id="iusub2" metadataIdRef="meta1"/> <select:parameters id="param2"> <nmwg:parameter name="startTime">1121472000</nmwg:parameter> <nmwg:parameter name="endTime">1121904000</nmwg:parameter> <!-- <nmwg:parameter name="startTime"> <nmtm:time type="ISO" value="2005-07-16T00:00:00Z"/> </nmwg:parameter> <nmwg:parameter name="endTime"> <nmtm:time type="ISO" value="2005-07-21T00:00:00Z"/> </nmwg:parameter> --> <nmwg:parameter name="consolidationFunction">AVERAGE</nmwg:parameter> <nmwg:parameter name="resolution">60</nmwg:parameter> </select:parameters> <nmwg:eventType>http://ggf.org/ns/nmwg/ops/select/2.0</nmwg:eventType> </nmwg:metadata> <!-- The third metadata is used to convert the results of the first operation. It converts it into the 'characteristic' namespace. --> <nmwg:metadata id="meta3"> <trans:subject id="iusub3" metadataIdRef="meta2"/> <trans:parameters id="param3"> <nmwg:parameter name="ConvertTo">unix</nmwg:parameter> <nmwg:parameter name="ConvertFrom">iso</nmwg:parameter> <nmwg:parameter name="ConvertElements"> <trans:parameters id="cp1"> <nmwg:parameter name="startTime">//nmwg:message//select:parameters/nmwg:parameter[@name="startTime"]</nmwg:parameter> <nmwg:parameter name="endTime">//nmwg:message//select:parameters/nmwg:parameter[@name="endTime"]</nmwg:parameter> <nmwg:parameter name="datumTimeValue">//nmwg:message//nmwg:data/nmwg:datum[@timeType!="iso"]</nmwg:parameter> </trans:parameters> </nmwg:parameter> </trans:parameters> <nmwg:eventType>http://schema.perfsonar.net/tools/transform/Time/2.0</nmwg:eventType> </nmwg:metadata> <!-- This is the specific data we wish to see --> <nmwg:data id="data1" metadataIdRef="meta3"/> </nmwg:message>
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/03/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Roman Lapacz, 05/07/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/07/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Roman Lapacz, 05/08/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/08/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Roman Lapacz, 05/09/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/08/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Szymon Trocha, 05/09/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/08/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Roman Lapacz, 05/08/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Jeff W. Boote, 05/07/2007
- Re: [pS-dev] time types in requests to SQL MA and E2Emon MP, Roman Lapacz, 05/07/2007
Archive powered by MHonArc 2.6.16.