```lua local err = producer:close() -- always stop consumer to send all pending messages before app close if err ~= nil then print(err) os.exit(1) end ``` but producer:close returns true, nil or false, err ```lua function Producer:close() local ok, err = self._producer:close() self._msg_delivery_poll_fiber:cancel() if self._poll_logs_fiber ~= nil then self._poll_logs_fiber:cancel() end if self._poll_errors_fiber ~= nil then self._poll_errors_fiber:cancel() end self._producer = nil return ok, err end ```