def start_kernel(self, notebook_id=None, **kwargs):
kernel_id = self.kernel_for_notebook(notebook_id)<EOL>if kernel_id is None:<EOL><INDENT>kwargs['<STR_LIT>'] = self.kernel_argv<EOL>kernel_id = super(MappingKernelManager, self).start_kernel(**kwargs)<EOL>self.set_kernel_for_notebook(notebook_id, kernel_id)<EOL>self.log.info("<STR_LIT>" % kernel_id)<EOL>self.log.debug("<STR_LIT>" % kwargs)<EOL><DEDENT>else:<EOL><INDENT>self.log.info("<STR_LIT>" % kernel_id)<EOL><DEDENT>return kernel_id<EOL>
Start a kernel for a notebok an return its kernel_id.

        Parameters
        ----------
        notebook_id : uuid
            The uuid of the notebook to associate the new kernel with. If this
            is not None, this kernel will be persistent whenever the notebook
            requests a kernel.