def __init__(self, monitoring_url, source_id=None, timeout=<NUM_LIT:10>):
self.monitoring_url = monitoring_url<EOL>self.sock_timeout = timeout<EOL>self.source_id = source_id<EOL>try:<EOL><INDENT>self.scheme, self.ip, port = (x.strip('<STR_LIT:/>') for x in monitoring_url.split('<STR_LIT::>'))<EOL>self.port = int(port)<EOL><DEDENT>except Exception:<EOL><INDENT>raise Exception("<STR_LIT>".format(monitoring_url))<EOL><DEDENT>self.sock = socket.socket(socket.AF_INET,<EOL>socket.SOCK_DGRAM,<EOL>socket.IPPROTO_UDP)  <EOL>self.sock.settimeout(self.sock_timeout)<EOL>
Parameters
----------

monitoring_url : str
    URL of the form <scheme>://<IP>:<PORT>
message : py obj
    Python object to send, this will be pickled
source_id : str
    String identifier of the source
timeout : int
    timeout, default=10s