no keepalive by default; output service errors when caught