added logs on send failure. simplified return types