Changeset 664
- Timestamp:
- 09/04/12 14:49:23 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/jobmond/jobmond.py
r663 r664 963 963 del self.jobs[ id ] 964 964 965 #966 # Gmetric by Nick Galbreath - nickg(a.t)modp(d.o.t)com967 # Version 1.0 - 21-April2-2007968 # http://code.google.com/p/embeddedgmetric/969 #970 # Modified by: Ramon Bastiaans971 # For the Job Monarch Project, see: https://subtrac.sara.nl/oss/jobmonarch/972 #973 # added: DEFAULT_TYPE for Gmetric's974 # added: checkHostProtocol to determine if target is multicast or not975 # changed: allow default for Gmetric constructor976 # changed: allow defaults for all send() values except dmax977 #978 979 965 GMETRIC_DEFAULT_TYPE = 'string' 980 966 GMETRIC_DEFAULT_HOST = '127.0.0.1' … … 995 981 996 982 self.prot = self.checkHostProtocol( host ) 997 self.msg = xdrlib.Packer() 983 self.data_msg = xdrlib.Packer() 984 self.meta_msg = xdrlib.Packer() 998 985 self.socket = socket.socket( socket.AF_INET, socket.SOCK_DGRAM ) 999 986 … … 1035 1022 typestr = GMETRIC_DEFAULT_TYPE 1036 1023 1037 msg = self.makexdr( name, value, typestr, units, self.slopestr, self.tmax, dmax ) 1038 1039 return self.socket.sendto( msg, self.hostport ) 1040 1041 def makexdr( self, name, value, typestr, unitstr, slopestr, tmax, dmax ): 1024 (meta_msg, data_msg) = self.makexdr( name, value, typestr, units, self.slopestr, self.tmax, dmax ) 1025 1026 meta_rt = self.socket.sendto( meta_msg, self.hostport ) 1027 data_rt = self.socket.sendto( data_msg, self.hostport ) 1028 1029 return ( meta_rt, data_rt ) 1030 1031 def makexdr( self, name, value, typestr, unitstr, slopestr, tmax, dmax, group=None, spoof=None ): 1032 1033 hostname = "unset" 1042 1034 1043 1035 if slopestr not in self.slope: … … 1053 1045 raise ValueError( "Name must be non-empty" ) 1054 1046 1055 self.msg.reset() 1056 self.msg.pack_int( 0 ) 1057 self.msg.pack_string( typestr ) 1058 self.msg.pack_string( name ) 1059 self.msg.pack_string( str( value ) ) 1060 self.msg.pack_string( unitstr ) 1061 self.msg.pack_int( self.slope[ slopestr ] ) 1062 self.msg.pack_uint( int( tmax ) ) 1063 self.msg.pack_uint( int( dmax ) ) 1064 1065 return self.msg.get_buffer() 1047 self.meta_msg.reset() 1048 self.meta_msg.pack_int( 128 ) 1049 1050 if not spoof: 1051 self.meta_msg.pack_string( hostname ) 1052 else: 1053 self.meta_msg.pack_string( spoof ) 1054 1055 self.meta_msg.pack_string( name ) 1056 1057 if not spoof: 1058 self.meta_msg.pack_int( 0 ) 1059 else: 1060 self.meta_msg.pack_int( 1 ) 1061 1062 self.meta_msg.pack_string( typestr ) 1063 self.meta_msg.pack_string( name ) 1064 self.meta_msg.pack_string( unitstr ) 1065 self.meta_msg.pack_int( self.slope[ slopestr ] ) 1066 self.meta_msg.pack_uint( int( tmax ) ) 1067 self.meta_msg.pack_uint( int( dmax ) ) 1068 1069 if not group: 1070 self.meta_msg.pack_int( 0 ) 1071 else: 1072 self.meta_msg.pack_int( 1 ) 1073 self.meta_msg.pack_string( "GROUP" ) 1074 self.meta_msg.pack_string( group ) 1075 1076 self.data_msg.reset() 1077 self.data_msg.pack_int( 128+5 ) 1078 1079 if not spoof: 1080 self.data_msg.pack_string( hostname ) 1081 else: 1082 self.data_msg.pack_string( spoof ) 1083 1084 self.data_msg.pack_string( name ) 1085 1086 if not spoof: 1087 self.data_msg.pack_int( 0 ) 1088 else: 1089 self.data_msg.pack_int( 1 ) 1090 1091 self.data_msg.pack_string( "%s" ) 1092 self.data_msg.pack_string( str( value ) ) 1093 1094 return ( self.meta_msg.get_buffer(), self.data_msg.get_buffer() ) 1066 1095 1067 1096 def printTime( ):
Note: See TracChangeset
for help on using the changeset viewer.