<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "DTD/xhtml1-strict.dtd">
<html>
  

  <head>
    
    <title>pulsar.Client</title>
    <meta name="generator" content="pydoctor 25.4.0"> 
        
    </meta>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1" />
    <link rel="stylesheet" type="text/css" href="apidocs.css" />
    <link rel="stylesheet" type="text/css" href="readthedocstheme.css" />
    <link rel="stylesheet" type="text/css" href="extra.css" />
    
</head>

  <body>

    

    <nav class="navbar navbar-default mainnavbar">
      
  
  <div class="container-fluid">


    <div class="navbar-header">
      
      <div class="navlinks">
        <span class="navbar-brand">
          _pulsar/pulsar <a href="index.html">API Documentation</a>
        </span>

        <a href="moduleIndex.html">
          Modules
        </a>

        <a href="classIndex.html">
          Classes
        </a>

        <a href="nameIndex.html">
          Names
        </a>

        <div id="search-box-container">
          <div class="input-group">
            <input id="search-box" type="search" name="search-query" placeholder="Search..." aria-label="Search" minlength="2" class="form-control" autocomplete="off" />
            
            <span class="input-group-btn">
              <a style="display: none;" class="btn btn-default" id="search-clear-button" title="Clear" onclick="clearSearch()"><img src="fonts/x-circle.svg" alt="Clear" /></a>
              <a class="btn btn-default" id="apidocs-help-button" title="Help" href="apidocs-help.html"><img src="fonts/info.svg" alt="Help" /></a>
            </span>
          </div>
        </div>

      </div>

      <div id="search-results-container" style="display: none;">
        
        <div id="search-buttons">
          <span class="label label-default" id="search-docstrings-button">
          <label class="checkbox-inline">
            <input type="checkbox" id="toggle-search-in-docstrings-checkbox" value="false" onclick="toggleSearchInDocstrings()">
              search in docstrings
            </input>
          </label>
          </span>
          
        </div>
        
        <noscript>
            <h1>Cannot search: JavaScript is not supported/enabled in your browser.</h1>
        </noscript>

        <div id="search-status"> </div>

        <div class="warning" id="search-warn-box" style="display: none;">
          <p class="rst-last"><span id="search-warn"></span></p>
        </div>

        <table id="search-results">
          <!-- Filled dynamically by JS -->
        </table>
        
        <div style="margin-top: 10px;">
          <p>For more information on the search, visit the <a href="apidocs-help.html#rst-search">help page</a>.</p>
        </div>
      </div>

    </div>


  </div>

    
        <!-- Side navigation -->
      <div class="sidebarcontainer">
        <nav class="sidebar">
  

  <div>

      <div class="thingTitle">
        <span>Class</span>
        <code class="thisobject"><a href="pulsar.Client.html" class="internal-link" title="This class"><wbr></wbr>Client</a></code> 
      </div>
      
      <div>
        

        
         

        
        

        <div class="childrenKindTitle">Methods</div>
        <ul>
    
    <li class="">
        
        
        

        
            <div class="itemName"><code><a href="#__init__" class="internal-link" title="pulsar.Client.__init__">__init__</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#close" class="internal-link" title="pulsar.Client.close">close</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#create_producer" class="internal-link" title="pulsar.Client.create_producer">create<wbr></wbr>_producer</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#create_reader" class="internal-link" title="pulsar.Client.create_reader">create<wbr></wbr>_reader</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#create_table_view" class="internal-link" title="pulsar.Client.create_table_view">create<wbr></wbr>_table<wbr></wbr>_view</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#get_topic_partitions" class="internal-link" title="pulsar.Client.get_topic_partitions">get<wbr></wbr>_topic<wbr></wbr>_partitions</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#shutdown" class="internal-link" title="pulsar.Client.shutdown">shutdown</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#subscribe" class="internal-link" title="pulsar.Client.subscribe">subscribe</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="#_prepare_logger" class="internal-link" title="pulsar.Client._prepare_logger">_prepare<wbr></wbr>_logger</a></code>
            </div>
        

    </li>
</ul> 

        
         

        <div class="childrenKindTitle">Attributes</div>
        <ul>
    
    <li class="private">
        
        
        

        
            <div class="itemName"><code><a href="#_client" class="internal-link" title="pulsar.Client._client">_client</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="#_consumers" class="internal-link" title="pulsar.Client._consumers">_consumers</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="#_table_view" class="internal-link" title="pulsar.Client._table_view">_table<wbr></wbr>_view</a></code>
            </div>
        

    </li>
</ul> 

        
         
        
      </div>
  </div><div>

      <div class="thingTitle">
        <span>Package</span>
        <code><a href="pulsar.html" class="internal-link" title="The parent of this class">pulsar</a></code> 
      </div>
      
      <div>
        

        <div class="childrenKindTitle">Modules</div>
        <ul>
    
    <li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.__about__.html" class="internal-link" title="pulsar.__about__">__about__</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.asyncio.html" class="internal-link" title="pulsar.asyncio">asyncio</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.exceptions.html" class="internal-link" title="pulsar.exceptions">exceptions</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.functions.html" class="internal-link" title="pulsar.functions">functions</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.schema.html" class="internal-link" title="pulsar.schema">schema</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.tableview.html" class="internal-link" title="pulsar.tableview">tableview</a></code>
            </div>
        

    </li>
</ul> 

        <div class="childrenKindTitle">Classes</div>
        <ul>
    
    <li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Authentication.html" class="internal-link" title="pulsar.Authentication"><wbr></wbr>Authentication</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.AuthenticationAthenz.html" class="internal-link" title="pulsar.AuthenticationAthenz"><wbr></wbr>Authentication<wbr></wbr>Athenz</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.AuthenticationBasic.html" class="internal-link" title="pulsar.AuthenticationBasic"><wbr></wbr>Authentication<wbr></wbr>Basic</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.AuthenticationOauth2.html" class="internal-link" title="pulsar.AuthenticationOauth2"><wbr></wbr>Authentication<wbr></wbr>Oauth2</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.AuthenticationTLS.html" class="internal-link" title="pulsar.AuthenticationTLS"><wbr></wbr>Authentication<wbr></wbr>TLS</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.AuthenticationToken.html" class="internal-link" title="pulsar.AuthenticationToken"><wbr></wbr>Authentication<wbr></wbr>Token</a></code>
            </div>
        

    </li><li class=" thisobject">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Client.html" class="internal-link" title="pulsar.Client"><wbr></wbr>Client</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.ConsoleLogger.html" class="internal-link" title="pulsar.ConsoleLogger"><wbr></wbr>Console<wbr></wbr>Logger</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Consumer.html" class="internal-link" title="pulsar.Consumer"><wbr></wbr>Consumer</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.ConsumerBatchReceivePolicy.html" class="internal-link" title="pulsar.ConsumerBatchReceivePolicy"><wbr></wbr>Consumer<wbr></wbr>Batch<wbr></wbr>Receive<wbr></wbr>Policy</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.ConsumerDeadLetterPolicy.html" class="internal-link" title="pulsar.ConsumerDeadLetterPolicy"><wbr></wbr>Consumer<wbr></wbr>Dead<wbr></wbr>Letter<wbr></wbr>Policy</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.ConsumerKeySharedPolicy.html" class="internal-link" title="pulsar.ConsumerKeySharedPolicy"><wbr></wbr>Consumer<wbr></wbr>Key<wbr></wbr>Shared<wbr></wbr>Policy</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader"><wbr></wbr>Crypto<wbr></wbr>Key<wbr></wbr>Reader</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.FileLogger.html" class="internal-link" title="pulsar.FileLogger"><wbr></wbr>File<wbr></wbr>Logger</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Message.html" class="internal-link" title="pulsar.Message"><wbr></wbr>Message</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.MessageBatch.html" class="internal-link" title="pulsar.MessageBatch"><wbr></wbr>Message<wbr></wbr>Batch</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.MessageId.html" class="internal-link" title="pulsar.MessageId"><wbr></wbr>Message<wbr></wbr>Id</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Producer.html" class="internal-link" title="pulsar.Producer"><wbr></wbr>Producer</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.Reader.html" class="internal-link" title="pulsar.Reader"><wbr></wbr>Reader</a></code>
            </div>
        

    </li>
</ul>

        <div class="childrenKindTitle">Functions</div>
        <ul>
    
    <li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.html#_check_type" class="internal-link" title="pulsar._check_type">_check<wbr></wbr>_type</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.html#_check_type_or_none" class="internal-link" title="pulsar._check_type_or_none">_check<wbr></wbr>_type<wbr></wbr>_or<wbr></wbr>_none</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.html#_listener_wrapper" class="internal-link" title="pulsar._listener_wrapper">_listener<wbr></wbr>_wrapper</a></code>
            </div>
        

    </li><li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.html#_seek_arg_convert" class="internal-link" title="pulsar._seek_arg_convert">_seek<wbr></wbr>_arg<wbr></wbr>_convert</a></code>
            </div>
        

    </li>
</ul> 

        
         

        <div class="childrenKindTitle">Variables</div>
        <ul>
    
    <li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.html#_retype" class="internal-link" title="pulsar._retype">_retype</a></code>
            </div>
        

    </li>
</ul> 

        
         
        
      </div>
  </div>

</nav>
        <!-- No sidebar toggle for read the docs theme, the sidebar is always
          visible when the screen is width enough.
        -->
      </div>

    </nav>
    
    <div class="container-fluid">

      <div id="main" class="">
        

        


        <div class="page-header">
          <h1 class="class"><code><code><a href="pulsar.html" class="internal-link">pulsar</a></code><wbr></wbr>.<code><a href="pulsar.Client.html" class="internal-link" title="pulsar.Client">Client</a></code></code></h1>
          <div id="showPrivate">
            <button class="btn btn-link" onclick="togglePrivate()">Toggle Private API</button>
          </div>
        </div>

        <div class="categoryHeader">
          class documentation
        </div>

        <div class="extrasDocstring">
          <p class="class-signature"><code><span class="py-keyword">class</span> <span class="py-defname">Client</span>: <a href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L520" class="sourceLink">(source)</a></code></p><p>Constructor: <code><a href="#__init__" class="internal-link" title="pulsar.Client.__init__">Client(service_url, authentication, operation_timeout_seconds, io_threads, ...)</a></code></p>
          <p><a href="classIndex.html#pulsar.Client">View In Hierarchy</a></p>
        </div>

        <div class="moduleDocstring">
          <div><p>The Pulsar client. A single client instance can be used to create producers
and consumers on multiple topics.</p>
<p>The client will share the same connection pool and threads across all
producers and consumers.</p>
</div>
        </div>

        <div id="splitTables">
          <table class="children sortable" id="id69">
  
  
  <tr class="method">
    
    <td>Method</td>
    <td><code><a href="#__init__" class="internal-link" title="pulsar.Client.__init__">__init__</a></code></td>
    <td>Create a new Pulsar client instance.</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#close" class="internal-link" title="pulsar.Client.close">close</a></code></td>
    <td>Close the client and all the associated producers and consumers</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#create_producer" class="internal-link" title="pulsar.Client.create_producer">create<wbr></wbr>_producer</a></code></td>
    <td>Create a new producer on a given topic.</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#create_reader" class="internal-link" title="pulsar.Client.create_reader">create<wbr></wbr>_reader</a></code></td>
    <td>Create a reader on a particular topic</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#create_table_view" class="internal-link" title="pulsar.Client.create_table_view">create<wbr></wbr>_table<wbr></wbr>_view</a></code></td>
    <td>Create a table view on a particular topic</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#get_topic_partitions" class="internal-link" title="pulsar.Client.get_topic_partitions">get<wbr></wbr>_topic<wbr></wbr>_partitions</a></code></td>
    <td>Get the list of partitions for a given topic.</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#shutdown" class="internal-link" title="pulsar.Client.shutdown">shutdown</a></code></td>
    <td>Perform immediate shutdown of Pulsar client.</td>
  </tr><tr class="method">
    
    <td>Method</td>
    <td><code><a href="#subscribe" class="internal-link" title="pulsar.Client.subscribe">subscribe</a></code></td>
    <td>Subscribe to the given topic and subscription combination.</td>
  </tr><tr class="staticmethod private">
    
    <td>Static Method</td>
    <td><code><a href="#_prepare_logger" class="internal-link" title="pulsar.Client._prepare_logger">_prepare<wbr></wbr>_logger</a></code></td>
    <td><span class="rst-undocumented">Undocumented</span></td>
  </tr><tr class="instancevariable private">
    
    <td>Instance Variable</td>
    <td><code><a href="#_client" class="internal-link" title="pulsar.Client._client">_client</a></code></td>
    <td><span class="rst-undocumented">Undocumented</span></td>
  </tr><tr class="instancevariable private">
    
    <td>Instance Variable</td>
    <td><code><a href="#_consumers" class="internal-link" title="pulsar.Client._consumers">_consumers</a></code></td>
    <td><span class="rst-undocumented">Undocumented</span></td>
  </tr><tr class="instancevariable private">
    
    <td>Instance Variable</td>
    <td><code><a href="#_table_view" class="internal-link" title="pulsar.Client._table_view">_table<wbr></wbr>_view</a></code></td>
    <td><span class="rst-undocumented">Undocumented</span></td>
  </tr>
</table>
          

            
        </div>

        <div id="childList">
          <div class="basemethod">
  
  
  <a name="pulsar.Client.__init__">
    
  </a>
  <a name="__init__">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">__init__</span><span class="function-signature long-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">service_url, </span><span class="rst-sig-param">authentication=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">operation_timeout_seconds=30, </span><span class="rst-sig-param">io_threads=1, </span><span class="rst-sig-param">message_listener_threads=1, </span><span class="rst-sig-param">concurrent_lookup_requests=50000, </span><span class="rst-sig-param">log_conf_file_path=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">stats_interval_in_seconds=600, </span><span class="rst-sig-param">use_tls=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">tls_trust_certs_file_path=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">tls_allow_insecure_connection=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">tls_validate_hostname=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">logger=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">connection_timeout_ms=10000, </span><span class="rst-sig-param">listener_name=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">tls_private_key_file_path: <code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a> | <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">tls_certificate_file_path: <code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a> | <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a></span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L529">
      
      (source)
    </a>
    <a class="headerLink" href="#__init__" title="pulsar.Client.__init__">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Create a new Pulsar client instance.</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">service<wbr></wbr>_url:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">The Pulsar service url eg: pulsar://my-broker.com:6650/</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">authentication:</span><code><a href="pulsar.Authentication.html" class="internal-link" title="pulsar.Authentication">Authentication</a></code>, <em>optional</em></td><td class="fieldArgDesc"><p>Set the authentication provider to be used with the broker. Supported methods:</p>
<ul class="rst-simple">
<li><code><a href="pulsar.AuthenticationTLS.html" class="internal-link" title="pulsar.AuthenticationTLS">AuthenticationTLS</a></code></li>
<li><code><a href="pulsar.AuthenticationToken.html" class="internal-link" title="pulsar.AuthenticationToken">AuthenticationToken</a></code></li>
<li><code><a href="pulsar.AuthenticationAthenz.html" class="internal-link" title="pulsar.AuthenticationAthenz">AuthenticationAthenz</a></code></li>
<li><code><a href="pulsar.AuthenticationOauth2.html" class="internal-link" title="pulsar.AuthenticationOauth2">AuthenticationOauth2</a></code></li>
</ul>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">operation<wbr></wbr>_timeout<wbr></wbr>_seconds:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">30</span></td><td class="fieldArgDesc">Set timeout on client operations (subscribe, create producer, close, unsubscribe).</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">io<wbr></wbr>_threads:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1</span></td><td class="fieldArgDesc">Set the number of IO threads to be used by the Pulsar client.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">message<wbr></wbr>_listener<wbr></wbr>_threads:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1</span></td><td class="fieldArgDesc">Set the number of threads to be used by the Pulsar client when delivering messages through
message listener. The default is 1 thread per Pulsar client. If using more than 1 thread,
messages for distinct <tt class="rst-docutils rst-literal"><span class="pre">message_listener``s</span> will be delivered in different threads, however a
single ``MessageListener</tt> will always be assigned to the same thread.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">concurrent<wbr></wbr>_lookup<wbr></wbr>_requests:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">50000</span></td><td class="fieldArgDesc">Number of concurrent lookup-requests allowed on each broker connection to prevent overload
on the broker.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">log<wbr></wbr>_conf<wbr></wbr>_file<wbr></wbr>_path:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">This parameter is deprecated and makes no effect. It's retained only for compatibility.
Use <code>logger</code> to customize a logger.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">stats<wbr></wbr>_interval<wbr></wbr>_in<wbr></wbr>_seconds:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">600</span></td><td class="fieldArgDesc">Set the interval between each stats information update. Stats are printed and/or
passed to the statistics listener at this interval. Set to 0 to disable stats collection.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">use<wbr></wbr>_tls:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Configure whether to use TLS encryption on the connection. This setting is deprecated.
TLS will be automatically enabled if the <tt class="rst-docutils rst-literal">serviceUrl</tt> is set to <tt class="rst-docutils rst-literal"><span class="pre">pulsar+ssl://</span></tt> or <tt class="rst-docutils rst-literal"><span class="pre">https://</span></tt></td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">tls<wbr></wbr>_trust<wbr></wbr>_certs<wbr></wbr>_file<wbr></wbr>_path:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Set the path to the trusted TLS certificate file. If empty defaults to certifi.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">tls<wbr></wbr>_allow<wbr></wbr>_insecure<wbr></wbr>_connection:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Configure whether the Pulsar client accepts untrusted TLS certificates from the broker.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">tls<wbr></wbr>_validate<wbr></wbr>_hostname:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Configure whether the Pulsar client validates that the hostname of the endpoint,
matches the common name on the TLS certificate presented by the endpoint.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">logger:</span><em>optional</em></td><td class="fieldArgDesc"><p>Set a Python logger for this Pulsar client. Should be an instance of <code><a href="https://docs.python.org/3/library/logging.html#logging.Logger" class="intersphinx-link">logging.Logger</a></code>.
It should be noted that if the Python logger is configured, during the termination of the Python
interpreter, the Python logger will be unavailable and the default logger will be used for logging.
To avoid strange behavior, you'd better delete all instances explicitly before exiting.</p>
<pre class="py-doctest">
<span class="py-keyword">import</span> logging
client = Client(service_url, logger=logging.getLogger(<span class="py-string">'pulsar'</span>))
producer = client.create_producer(topic)
<span class="py-comment"># ...</span>
<span class="py-keyword">del</span> producer
<span class="py-keyword">del</span> client</pre></td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">connection<wbr></wbr>_timeout<wbr></wbr>_ms:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">10000</span></td><td class="fieldArgDesc">Set timeout in milliseconds on TCP connections.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">listener<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Listener name for lookup. Clients can use listenerName to choose one of the listeners as
the service URL to create a connection to the broker as long as the network is accessible.
<tt class="rst-docutils rst-literal">advertisedListeners</tt> must be enabled in broker side.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">tls<wbr></wbr>_private<wbr></wbr>_key<wbr></wbr>_file<wbr></wbr>_path:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">The path to the TLS private key file</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">tls<wbr></wbr>_certificate<wbr></wbr>_file<wbr></wbr>_path:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">The path to the TLS certificate file.</td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.close">
    
  </a>
  <a name="close">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">close</span><span class="function-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span></span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1301">
      
      (source)
    </a>
    <a class="headerLink" href="#close" title="pulsar.Client.close">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Close the client and all the associated producers and consumers</p></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.create_producer">
    
  </a>
  <a name="create_producer">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">create_producer</span><span class="function-signature long-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">topic, </span><span class="rst-sig-param">producer_name=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">schema=<a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">schema.BytesSchema</a>(), </span><span class="rst-sig-param">initial_sequence_id=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">send_timeout_millis=30000, </span><span class="rst-sig-param">compression_type: <code><a href="_pulsar.CompressionType.html" class="internal-link" title="_pulsar.CompressionType">CompressionType</a></code> = CompressionType.NONE, </span><span class="rst-sig-param">max_pending_messages=1000, </span><span class="rst-sig-param">max_pending_messages_across_partitions=50000, </span><span class="rst-sig-param">block_if_queue_full=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">batching_enabled=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">batching_max_messages=1000, </span><span class="rst-sig-param">batching_max_allowed_size_in_bytes=128 * 1024, </span><span class="rst-sig-param">batching_max_publish_delay_ms=10, </span><span class="rst-sig-param">chunking_enabled=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">message_routing_mode: <code><a href="_pulsar.PartitionsRoutingMode.html" class="internal-link" title="_pulsar.PartitionsRoutingMode">PartitionsRoutingMode</a></code> = PartitionsRoutingMode.RoundRobinDistribution, </span><span class="rst-sig-param">lazy_start_partitioned_producers=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">properties=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">batching_type: <code><a href="_pulsar.BatchingType.html" class="internal-link" title="_pulsar.BatchingType">BatchingType</a></code> = BatchingType.Default, </span><span class="rst-sig-param">encryption_key=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">crypto_key_reader: <code><a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a> | <a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">access_mode: <code><a href="_pulsar.ProducerAccessMode.html" class="internal-link" title="_pulsar.ProducerAccessMode">ProducerAccessMode</a></code> = ProducerAccessMode.Shared, </span><span class="rst-sig-param">message_router: <code><a href="https://docs.python.org/3/library/typing.html#typing.Callable" class="intersphinx-link">Callable</a>[<wbr></wbr>[<wbr></wbr><a href="pulsar.Message.html" class="internal-link" title="pulsar.Message">Message</a>, <wbr></wbr><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a>], <wbr></wbr><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a>]</code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a></span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L680">
      
      (source)
    </a>
    <a class="headerLink" href="#create_producer" title="pulsar.Client.create_producer">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Create a new producer on a given topic.</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">The topic name</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">producer<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Specify a name for the producer. If not assigned, the system will generate a globally unique name
which can be accessed with <code><a href="pulsar.Producer.html#producer_name" class="internal-link" title="pulsar.Producer.producer_name">Producer.producer_name()</a></code>. When specifying a name, it is app to the user
to ensure that, for a given topic, the producer name is unique across all Pulsar's clusters.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">schema:</span><code><a href="pulsar.schema.schema.Schema.html" class="internal-link" title="pulsar.schema.schema.Schema">pulsar.schema.Schema</a></code>, <em>default</em> <code><a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">pulsar.schema.BytesSchema</a></code></td><td class="fieldArgDesc"><p>Define the schema of the data that will be published by this producer, e.g,
<tt class="rst-docutils rst-literal">schema=JsonSchema(MyRecordClass)</tt>.</p>
<dl class="rst-docutils">
<dt>The schema will be used for two purposes:</dt>
<dd><ul class="rst-simple rst-first rst-last">
<li>Validate the data format against the topic defined schema</li>
<li>Perform serialization/deserialization between data and objects</li>
</ul>
</dd>
</dl>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">initial<wbr></wbr>_sequence<wbr></wbr>_id:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>optional</em></td><td class="fieldArgDesc">Set the baseline for the sequence ids for messages published by the producer. First message will be
using <tt class="rst-docutils rst-literal">(initialSequenceId + 1)</tt> as its sequence id and subsequent messages will be assigned
incremental sequence ids, if not otherwise specified.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">send<wbr></wbr>_timeout<wbr></wbr>_millis:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">30000</span></td><td class="fieldArgDesc">If a message is not acknowledged by the server before the <tt class="rst-docutils rst-literal">send_timeout</tt> expires, an error will be reported.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">compression<wbr></wbr>_type:</span><code><a href="_pulsar.CompressionType.html" class="internal-link" title="_pulsar.CompressionType">CompressionType</a></code>, <em>default</em> <code>CompressionType.NONE</code></td><td class="fieldArgDesc"><p>Set the compression type for the producer. By default, message payloads are not compressed.</p>
<p>Supported compression types:</p>
<ul class="rst-simple">
<li>CompressionType.LZ4</li>
<li>CompressionType.ZLib</li>
<li>CompressionType.ZSTD</li>
<li>CompressionType.SNAPPY</li>
</ul>
<p>ZSTD is supported since Pulsar 2.3. Consumers will need to be at least at that release in order to
be able to receive messages compressed with ZSTD.</p>
<p>SNAPPY is supported since Pulsar 2.4. Consumers will need to be at least at that release in order to
be able to receive messages compressed with SNAPPY.</p>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">max<wbr></wbr>_pending<wbr></wbr>_messages:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1000</span></td><td class="fieldArgDesc">Set the max size of the queue holding the messages pending to receive an acknowledgment from the broker.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">max<wbr></wbr>_pending<wbr></wbr>_messages<wbr></wbr>_across<wbr></wbr>_partitions:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">50000</span></td><td class="fieldArgDesc">Set the max size of the queue holding the messages pending to receive an acknowledgment across partitions
from the broker.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">block<wbr></wbr>_if<wbr></wbr>_queue<wbr></wbr>_full:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Set whether <code><a href="pulsar.Producer.html#send_async" class="internal-link" title="pulsar.Producer.send_async">send_async</a></code> operations should block when the outgoing message queue is full.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batching<wbr></wbr>_enabled:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">When automatic batching is enabled, multiple calls to <code><a href="pulsar.Producer.html#send" class="internal-link" title="pulsar.Producer.send">send</a></code> can result in a single batch to be sent to the
broker, leading to better throughput, especially when publishing small messages.
All messages in a batch will be published as a single batched message. The consumer will be delivered
individual messages in the batch in the same order they were enqueued.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batching<wbr></wbr>_max<wbr></wbr>_messages:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1000</span></td><td class="fieldArgDesc">When you set this option to a value greater than 1, messages are queued until this threshold or
<code>batching_max_allowed_size_in_bytes</code> is reached or batch interval has elapsed.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batching<wbr></wbr>_max<wbr></wbr>_allowed<wbr></wbr>_size<wbr></wbr>_in<wbr></wbr>_bytes:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> 128*1024</td><td class="fieldArgDesc">When you set this option to a value greater than 1, messages are queued until this threshold or
<code>batching_max_messages</code> is reached or batch interval has elapsed.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batching<wbr></wbr>_max<wbr></wbr>_publish<wbr></wbr>_delay<wbr></wbr>_ms:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">10</span></td><td class="fieldArgDesc">The batch interval in milliseconds. Queued messages will be sent in batch after this interval even if both
the threshold of <code>batching_max_messages</code> and <code>batching_max_allowed_size_in_bytes</code> are not reached.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">chunking<wbr></wbr>_enabled:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">If message size is higher than allowed max publish-payload size by broker then chunking_enabled helps
producer to split message into multiple chunks and publish them to broker separately and in order.
So, it allows client to successfully publish large size of messages in pulsar.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">message<wbr></wbr>_routing<wbr></wbr>_mode:</span><code><a href="_pulsar.PartitionsRoutingMode.html" class="internal-link" title="_pulsar.PartitionsRoutingMode">PartitionsRoutingMode</a></code>, <em>default</em> <code>PartitionsRoutingMode.RoundRobinDistribution</code></td><td class="fieldArgDesc"><p>Set the message routing mode for the partitioned producer.</p>
<p>Supported modes:</p>
<ul class="rst-simple">
<li><tt class="rst-docutils rst-literal">PartitionsRoutingMode.RoundRobinDistribution</tt></li>
<li><tt class="rst-docutils rst-literal">PartitionsRoutingMode.UseSinglePartition</tt></li>
</ul>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">lazy<wbr></wbr>_start<wbr></wbr>_partitioned<wbr></wbr>_producers:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc"><p>This config affects producers of partitioned topics only. It controls whether producers register
and connect immediately to the owner broker of each partition or start lazily on demand. The internal
producer of one partition is always started eagerly, chosen by the routing policy, but the internal
producers of any additional partitions are started on demand, upon receiving their first message.</p>
<p>Using this mode can reduce the strain on brokers for topics with large numbers of partitions and when
the SinglePartition routing policy is used without keyed messages. Because producer connection can be
on demand, this can produce extra send latency for the first messages of a given partition.</p>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">properties:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#dict" class="intersphinx-link">dict</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the properties for the producer. The properties associated with a producer can be used for identify
a producer at broker side.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batching<wbr></wbr>_type:</span><code><a href="_pulsar.BatchingType.html" class="internal-link" title="_pulsar.BatchingType">BatchingType</a></code>, <em>default</em> <code>BatchingType.Default</code></td><td class="fieldArgDesc"><p>Sets the batching type for the producer.</p>
<p>There are two batching type: DefaultBatching and KeyBasedBatching.</p>
<dl class="rst-docutils">
<dt>DefaultBatching will batch single messages:</dt>
<dd>(k1, v1), (k2, v1), (k3, v1), (k1, v2), (k2, v2), (k3, v2), (k1, v3), (k2, v3), (k3, v3)</dd>
<dt>... into single batch message:</dt>
<dd>[(k1, v1), (k2, v1), (k3, v1), (k1, v2), (k2, v2), (k3, v2), (k1, v3), (k2, v3), (k3, v3)]</dd>
<dt>KeyBasedBatching will batch incoming single messages:</dt>
<dd>(k1, v1), (k2, v1), (k3, v1), (k1, v2), (k2, v2), (k3, v2), (k1, v3), (k2, v3), (k3, v3)</dd>
<dt>... into single batch message:</dt>
<dd>[(k1, v1), (k1, v2), (k1, v3)], [(k2, v1), (k2, v2), (k2, v3)], [(k3, v1), (k3, v2), (k3, v3)]</dd>
</dl>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">encryption<wbr></wbr>_key:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">The key used for symmetric encryption, configured on the producer side</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">crypto<wbr></wbr>_key<wbr></wbr>_reader:</span><code><a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code>, <em>optional</em></td><td class="fieldArgDesc">Symmetric encryption class implementation, configuring public key encryption messages for the producer
and private key decryption messages for the consumer</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">access<wbr></wbr>_mode:</span><code><a href="_pulsar.ProducerAccessMode.html" class="internal-link" title="_pulsar.ProducerAccessMode">ProducerAccessMode</a></code>, <em>optional</em></td><td class="fieldArgDesc"><p>Set the type of access mode that the producer requires on the topic.</p>
<p>Supported modes:</p>
<ul class="rst-simple">
<li>Shared: By default multiple producers can publish on a topic.</li>
<li><dl class="rst-docutils rst-first">
<dt>Exclusive: Require exclusive access for producer.</dt>
<dd>Fail immediately if there's already a producer connected.</dd>
</dl>
</li>
<li>WaitForExclusive: Producer creation is pending until it can acquire exclusive access.</li>
<li><dl class="rst-docutils rst-first">
<dt>ExclusiveWithFencing: Acquire exclusive access for the producer.</dt>
<dd>Any existing producer will be removed and invalidated immediately.</dd>
</dl>
</li>
</ul>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">message<wbr></wbr>_router:</span><em>optional</em></td><td class="fieldArgDesc">A custom message router function that takes a <code><a href="pulsar.Message.html" class="internal-link" title="pulsar.Message">Message</a></code> and the number of partitions
and returns the partition index to which the message should be routed. If not provided,
the default routing policy defined by <code>message_routing_mode</code> will be used.</td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.create_reader">
    
  </a>
  <a name="create_reader">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">create_reader</span><span class="function-signature long-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">topic, </span><span class="rst-sig-param">start_message_id, </span><span class="rst-sig-param">schema=<a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">schema.BytesSchema</a>(), </span><span class="rst-sig-param">reader_listener=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">receiver_queue_size=1000, </span><span class="rst-sig-param">reader_name=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">subscription_role_prefix=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">is_read_compacted=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">crypto_key_reader: <code><a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a> | <a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">start_message_id_inclusive=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">crypto_failure_action: <code><a href="_pulsar.ConsumerCryptoFailureAction.html" class="internal-link" title="_pulsar.ConsumerCryptoFailureAction">ConsumerCryptoFailureAction</a></code> = ConsumerCryptoFailureAction.FAIL</span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1109">
      
      (source)
    </a>
    <a class="headerLink" href="#create_reader" title="pulsar.Client.create_reader">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Create a reader on a particular topic</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic</span></td><td class="fieldArgDesc">The name of the topic.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">start<wbr></wbr>_message<wbr></wbr>_id</span></td><td class="fieldArgDesc"><p>The initial reader positioning is done by specifying a message id. The options are:</p>
<ul class="rst-simple">
<li><tt class="rst-docutils rst-literal">MessageId.earliest</tt>:</li>
</ul>
<p>Start reading from the earliest message available in the topic</p>
<ul class="rst-simple">
<li><tt class="rst-docutils rst-literal">MessageId.latest</tt>:</li>
</ul>
<p>Start reading from the end topic, only getting messages published after the reader was created</p>
<ul class="rst-simple">
<li><tt class="rst-docutils rst-literal">MessageId</tt>:</li>
</ul>
<p>When passing a particular message id, the reader will position itself on that specific position.
The first message to be read will be the message next to the specified messageId.
Message id can be serialized into a string and deserialized back into a <code><a href="pulsar.MessageId.html" class="internal-link" title="pulsar.MessageId">MessageId</a></code> object:</p>
<blockquote>
<pre class="py-doctest">
<span class="py-comment"># Serialize to string</span>
s = msg.message_id().serialize()

<span class="py-comment"># Deserialize from string</span>
msg_id = MessageId.deserialize(s)</pre></blockquote>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">schema:</span><code><a href="pulsar.schema.schema.Schema.html" class="internal-link" title="pulsar.schema.schema.Schema">pulsar.schema.Schema</a></code>, <em>default</em> <code><a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">pulsar.schema.BytesSchema</a></code></td><td class="fieldArgDesc">Define the schema of the data that will be received by this reader.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">reader<wbr></wbr>_listener:</span><em>optional</em></td><td class="fieldArgDesc"><p>Sets a message listener for the reader. When the listener is set, the application will receive messages
through it. Calls to <tt class="rst-docutils rst-literal">reader.read_next()</tt> will not be allowed. The listener function needs to accept
(reader, message), for example:</p>
<pre class="py-doctest">
<span class="py-keyword">def</span> <span class="py-defname">my_listener</span>(reader, message):
    <span class="py-comment"># process message</span>
    <span class="py-keyword">pass</span></pre></td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">receiver<wbr></wbr>_queue<wbr></wbr>_size:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1000</span></td><td class="fieldArgDesc">Sets the size of the reader receive queue. The reader receive queue controls how many messages can be
accumulated by the reader before the application calls <code><a href="pulsar.Reader.html#read_next" class="internal-link" title="pulsar.Reader.read_next">read_next()</a></code>. Using a higher value could
potentially increase the reader throughput at the expense of higher memory utilization.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">reader<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the reader name.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">subscription<wbr></wbr>_role<wbr></wbr>_prefix:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the subscription role prefix.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">is<wbr></wbr>_read<wbr></wbr>_compacted:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Selects whether to read the compacted version of the topic</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">crypto<wbr></wbr>_key<wbr></wbr>_reader:</span><code><a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code>, <em>optional</em></td><td class="fieldArgDesc">Symmetric encryption class implementation, configuring public key encryption messages for the producer
and private key decryption messages for the consumer</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">start<wbr></wbr>_message<wbr></wbr>_id<wbr></wbr>_inclusive:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Set the reader to include the startMessageId or given position of any reset operation like Reader.seek</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">crypto<wbr></wbr>_failure<wbr></wbr>_action:</span><code><a href="_pulsar.ConsumerCryptoFailureAction.html" class="internal-link" title="_pulsar.ConsumerCryptoFailureAction">ConsumerCryptoFailureAction</a></code>, <em>default</em> <code>ConsumerCryptoFailureAction.FAIL</code></td><td class="fieldArgDesc"><p>Set the behavior when the decryption fails. The default is to fail the message.</p>
<p>Supported actions:</p>
<ul class="rst-simple">
<li>ConsumerCryptoFailureAction.FAIL: Fail consume until crypto succeeds</li>
<li>ConsumerCryptoFailureAction.DISCARD:
Message is silently acknowledged and not delivered to the application.</li>
<li>ConsumerCryptoFailureAction.CONSUME:
Deliver the encrypted message to the application. It's the application's responsibility
to decrypt the message. If message is also compressed, decompression will fail. If the
message contains batch messages, client will not be able to retrieve individual messages
in the batch.</li>
</ul>
</td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.create_table_view">
    
  </a>
  <a name="create_table_view">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">create_table_view</span><span class="function-signature long-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">topic: <code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, </span><span class="rst-sig-param">subscription_name: <code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a> | <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">schema: <code><a href="pulsar.schema.schema.Schema.html" class="internal-link" title="pulsar.schema.schema.Schema">schema.Schema</a></code> = <a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">schema.BytesSchema</a>()</span>) -&gt; <code><a href="pulsar.tableview.TableView.html" class="internal-link" title="pulsar.tableview.TableView">TableView</a></code>:</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1232">
      
      (source)
    </a>
    <a class="headerLink" href="#create_table_view" title="pulsar.Client.create_table_view">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Create a table view on a particular topic</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">The name of the topic.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">subscription<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">The name of the subscription. If it's not specified, a random subscription name
will be used.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">schema:</span><code><a href="pulsar.schema.schema.Schema.html" class="internal-link" title="pulsar.schema.schema.Schema">pulsar.schema.Schema</a></code>, <em>default</em> <code><a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">pulsar.schema.BytesSchema</a></code></td><td class="fieldArgDesc">Define the schema of this table view. If the schema is incompatible with the topic's
schema, this method will throw an exception. This schema is also used to deserialize
the value of messages in the table view.</td></tr></table><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Returns</td></tr><tr><td class="fieldArgContainer"><code><a href="pulsar.tableview.TableView.html" class="internal-link" title="pulsar.tableview.TableView">TableView</a></code></td><td class="fieldArgDesc">A table view instance.</td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.get_topic_partitions">
    
  </a>
  <a name="get_topic_partitions">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">get_topic_partitions</span><span class="function-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">topic</span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1268">
      
      (source)
    </a>
    <a class="headerLink" href="#get_topic_partitions" title="pulsar.Client.get_topic_partitions">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Get the list of partitions for a given topic.</p>
<p>If the topic is partitioned, this will return a list of partition names. If the topic is not
partitioned, the returned list will contain the topic name itself.</p>
<p>This can be used to discover the partitions and create Reader, Consumer or Producer
instances directly on a particular partition.</p>
<table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">the topic name to lookup</td></tr></table><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Returns</td></tr><tr><td class="fieldArgContainer"><code><a href="https://docs.python.org/3/library/stdtypes.html#list" class="intersphinx-link">list</a></code></td><td class="fieldArgDesc">a list of partition name</td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.shutdown">
    
  </a>
  <a name="shutdown">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">shutdown</span><span class="function-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span></span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1292">
      
      (source)
    </a>
    <a class="headerLink" href="#shutdown" title="pulsar.Client.shutdown">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Perform immediate shutdown of Pulsar client.</p>
<p>Release all resources and close all producer, consumer, and readers without waiting
for ongoing operations to complete.</p>
</div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.Client.subscribe">
    
  </a>
  <a name="subscribe">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span>&#160;<span class="py-defname">subscribe</span><span class="function-signature long-signature">(<span class="rst-sig-param"><span class="rst-undocumented">self</span>, </span><span class="rst-sig-param">topic, </span><span class="rst-sig-param">subscription_name, </span><span class="rst-sig-param">consumer_type: <code><a href="_pulsar.ConsumerType.html" class="internal-link" title="_pulsar.ConsumerType">ConsumerType</a></code> = ConsumerType.Exclusive, </span><span class="rst-sig-param">schema=<a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">schema.BytesSchema</a>(), </span><span class="rst-sig-param">message_listener=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">receiver_queue_size=1000, </span><span class="rst-sig-param">max_total_receiver_queue_size_across_partitions=50000, </span><span class="rst-sig-param">consumer_name=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">unacked_messages_timeout_ms=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">broker_consumer_stats_cache_time_ms=30000, </span><span class="rst-sig-param">negative_ack_redelivery_delay_ms=60000, </span><span class="rst-sig-param">is_read_compacted=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">properties=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">pattern_auto_discovery_period=60, </span><span class="rst-sig-param">initial_position: <code><a href="_pulsar.InitialPosition.html" class="internal-link" title="_pulsar.InitialPosition">InitialPosition</a></code> = InitialPosition.Latest, </span><span class="rst-sig-param">crypto_key_reader: <code><a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a> | <a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">replicate_subscription_state_enabled=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">max_pending_chunked_message=10, </span><span class="rst-sig-param">auto_ack_oldest_chunked_message_on_queue_full=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">start_message_id_inclusive=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">batch_receive_policy=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">key_shared_policy=<a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">batch_index_ack_enabled=<a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a>, </span><span class="rst-sig-param">regex_subscription_mode: <code><a href="_pulsar.RegexSubscriptionMode.html" class="internal-link" title="_pulsar.RegexSubscriptionMode">RegexSubscriptionMode</a></code> = RegexSubscriptionMode.PersistentOnly, </span><span class="rst-sig-param">dead_letter_policy: <code><a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a> | <a href="pulsar.ConsumerDeadLetterPolicy.html" class="internal-link" title="pulsar.ConsumerDeadLetterPolicy">ConsumerDeadLetterPolicy</a></code> = <a href="https://docs.python.org/3/library/constants.html#None" class="intersphinx-link">None</a>, </span><span class="rst-sig-param">crypto_failure_action: <code><a href="_pulsar.ConsumerCryptoFailureAction.html" class="internal-link" title="_pulsar.ConsumerCryptoFailureAction">ConsumerCryptoFailureAction</a></code> = ConsumerCryptoFailureAction.FAIL</span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L885">
      
      (source)
    </a>
    <a class="headerLink" href="#subscribe" title="pulsar.Client.subscribe">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Subscribe to the given topic and subscription combination.</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic</span></td><td class="fieldArgDesc">The name of the topic, list of topics or regex pattern. This method will accept these forms:
* <tt class="rst-docutils rst-literal"><span class="pre">topic='my-topic'</span></tt>
* <tt class="rst-docutils rst-literal"><span class="pre">topic=['topic-1',</span> <span class="pre">'topic-2',</span> <span class="pre">'topic-3']</span></tt>
* <tt class="rst-docutils rst-literal"><span class="pre">topic=re.compile('persistent://public/default/topic-*')</span></tt></td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">subscription<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">The name of the subscription.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">consumer<wbr></wbr>_type:</span><code><a href="_pulsar.ConsumerType.html" class="internal-link" title="_pulsar.ConsumerType">ConsumerType</a></code>, <em>default</em> <code>ConsumerType.Exclusive</code></td><td class="fieldArgDesc">Select the subscription type to be used when subscribing to the topic.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">schema:</span><code><a href="pulsar.schema.schema.Schema.html" class="internal-link" title="pulsar.schema.schema.Schema">pulsar.schema.Schema</a></code>, <em>default</em> <code><a href="pulsar.schema.schema.BytesSchema.html" class="internal-link" title="pulsar.schema.schema.BytesSchema">pulsar.schema.BytesSchema</a></code></td><td class="fieldArgDesc">Define the schema of the data that will be received by this consumer.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">message<wbr></wbr>_listener:</span><em>optional</em></td><td class="fieldArgDesc"><p>Sets a message listener for the consumer. When the listener is set, the application will
receive messages through it. Calls to <tt class="rst-docutils rst-literal">consumer.receive()</tt> will not be allowed.
The listener function needs to accept (consumer, message), for example:</p>
<pre class="py-doctest">
<span class="py-keyword">def</span> <span class="py-defname">my_listener</span>(consumer, message):
    <span class="py-comment"># process message</span>
    consumer.acknowledge(message)</pre></td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">receiver<wbr></wbr>_queue<wbr></wbr>_size:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">1000</span></td><td class="fieldArgDesc"><p>Sets the size of the consumer receive queue. The consumer receive queue controls how many messages can be
accumulated by the consumer before the application calls <code><a href="pulsar.Consumer.html#receive" class="internal-link" title="pulsar.Consumer.receive">receive()</a></code>. Using a higher value could potentially
increase the consumer throughput at the expense of higher memory utilization. Setting the consumer queue
size to zero decreases the throughput of the consumer by disabling pre-fetching of messages.</p>
<p>This approach improves the message distribution on shared subscription by pushing messages only to those
consumers that are ready to process them. Neither receive with timeout nor partitioned topics can be used
if the consumer queue size is zero. The <code><a href="pulsar.Consumer.html#receive" class="internal-link" title="pulsar.Consumer.receive">receive()</a></code> function call should not be interrupted when the
consumer queue size is zero. The default value is 1000 messages and should work well for most use cases.</p>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">max<wbr></wbr>_total<wbr></wbr>_receiver<wbr></wbr>_queue<wbr></wbr>_size<wbr></wbr>_across<wbr></wbr>_partitions:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">50000</span></td><td class="fieldArgDesc">Set the max total receiver queue size across partitions. This setting will be used to reduce the
receiver queue size for individual partitions</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">consumer<wbr></wbr>_name:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the consumer name.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">unacked<wbr></wbr>_messages<wbr></wbr>_timeout<wbr></wbr>_ms:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the timeout in milliseconds for unacknowledged messages. The timeout needs to be greater than
10 seconds. An exception is thrown if the given value is less than 10 seconds. If a successful
acknowledgement is not sent within the timeout, all the unacknowledged messages are redelivered.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">broker<wbr></wbr>_consumer<wbr></wbr>_stats<wbr></wbr>_cache<wbr></wbr>_time<wbr></wbr>_ms:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">30000</span></td><td class="fieldArgDesc">Sets the time duration for which the broker-side consumer stats will be cached in the client.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">negative<wbr></wbr>_ack<wbr></wbr>_redelivery<wbr></wbr>_delay<wbr></wbr>_ms:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">60000</span></td><td class="fieldArgDesc">The delay after which to redeliver the messages that failed to be processed
(with the <tt class="rst-docutils rst-literal">consumer.negative_acknowledge()</tt>)</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">is<wbr></wbr>_read<wbr></wbr>_compacted:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Selects whether to read the compacted version of the topic</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">properties:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#dict" class="intersphinx-link">dict</a></code>, <em>optional</em></td><td class="fieldArgDesc">Sets the properties for the consumer. The properties associated with a consumer can be used for
identify a consumer at broker side.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">pattern<wbr></wbr>_auto<wbr></wbr>_discovery<wbr></wbr>_period:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">60</span></td><td class="fieldArgDesc">Periods of seconds for consumer to auto discover match topics.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">initial<wbr></wbr>_position:</span><code><a href="_pulsar.InitialPosition.html" class="internal-link" title="_pulsar.InitialPosition">InitialPosition</a></code>, <em>default</em> <code>InitialPosition.Latest</code></td><td class="fieldArgDesc">Set the initial position of a consumer when subscribing to the topic.
It could be either: <tt class="rst-docutils rst-literal">InitialPosition.Earliest</tt> or <tt class="rst-docutils rst-literal">InitialPosition.Latest</tt>.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">crypto<wbr></wbr>_key<wbr></wbr>_reader:</span><code><a href="pulsar.CryptoKeyReader.html" class="internal-link" title="pulsar.CryptoKeyReader">CryptoKeyReader</a></code>, <em>optional</em></td><td class="fieldArgDesc">Symmetric encryption class implementation, configuring public key encryption messages for the producer
and private key decryption messages for the consumer</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">replicate<wbr></wbr>_subscription<wbr></wbr>_state<wbr></wbr>_enabled:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Set whether the subscription status should be replicated.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">max<wbr></wbr>_pending<wbr></wbr>_chunked<wbr></wbr>_message:</span><code><a href="https://docs.python.org/3/library/functions.html#int" class="intersphinx-link">int</a></code>, <em>default</em> <span class="literal">10</span></td><td class="fieldArgDesc"><p>Consumer buffers chunk messages into memory until it receives all the chunks of the original message.
While consuming chunk-messages, chunks from same message might not be contiguous in the stream, and they
might be mixed with other messages' chunks. so, consumer has to maintain multiple buffers to manage
chunks coming from different messages. This mainly happens when multiple publishers are publishing
messages on the topic concurrently or publisher failed to publish all chunks of the messages.</p>
<p>If it's zero, the pending chunked messages will not be limited.</p>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">auto<wbr></wbr>_ack<wbr></wbr>_oldest<wbr></wbr>_chunked<wbr></wbr>_message<wbr></wbr>_on<wbr></wbr>_queue<wbr></wbr>_full:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Buffering large number of outstanding uncompleted chunked messages can create memory pressure, and it
can be guarded by providing the maxPendingChunkedMessage threshold. See setMaxPendingChunkedMessage.
Once, consumer reaches this threshold, it drops the outstanding unchunked-messages by silently acking
if autoAckOldestChunkedMessageOnQueueFull is true else it marks them for redelivery.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">start<wbr></wbr>_message<wbr></wbr>_id<wbr></wbr>_inclusive:</span><code><a href="https://docs.python.org/3/library/functions.html#bool" class="intersphinx-link">bool</a></code>, <em>default</em> <code><a href="https://docs.python.org/3/library/constants.html#False" class="intersphinx-link">False</a></code></td><td class="fieldArgDesc">Set the consumer to include the given position of any reset operation like Consumer::seek.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batch<wbr></wbr>_receive<wbr></wbr>_policy:</span>class ConsumerBatchReceivePolicy</td><td class="fieldArgDesc">Set the batch collection policy for batch receiving.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">key<wbr></wbr>_shared<wbr></wbr>_policy:</span>class ConsumerKeySharedPolicy</td><td class="fieldArgDesc">Set the key shared policy for use when the ConsumerType is KeyShared.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">batch<wbr></wbr>_index<wbr></wbr>_ack<wbr></wbr>_enabled:</span>Enable the batch index acknowledgement.</td><td class="fieldArgDesc">It should be noted that this option can only work when the broker side also enables the batch index
acknowledgement. See the <code>acknowledgmentAtBatchIndexLevelEnabled</code> config in <code>broker.conf</code>.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">regex<wbr></wbr>_subscription<wbr></wbr>_mode:</span><code><a href="_pulsar.RegexSubscriptionMode.html" class="internal-link" title="_pulsar.RegexSubscriptionMode">RegexSubscriptionMode</a></code>, <em>optional</em></td><td class="fieldArgDesc"><p>Set the regex subscription mode for use when the topic is a regex pattern.</p>
<p>Supported modes:</p>
<ul class="rst-simple">
<li>PersistentOnly: By default only subscribe to persistent topics.</li>
<li>NonPersistentOnly: Only subscribe to non-persistent topics.</li>
<li>AllTopics: Subscribe to both persistent and non-persistent topics.</li>
</ul>
</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">dead<wbr></wbr>_letter<wbr></wbr>_policy:</span>class ConsumerDeadLetterPolicy</td><td class="fieldArgDesc">Set dead letter policy for consumer.
By default, some messages are redelivered many times, even to the extent that they can never be
stopped. By using the dead letter mechanism, messages have the max redelivery count, when they're
exceeding the maximum number of redeliveries. Messages are sent to dead letter topics and acknowledged
automatically.</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">crypto<wbr></wbr>_failure<wbr></wbr>_action:</span><code><a href="_pulsar.ConsumerCryptoFailureAction.html" class="internal-link" title="_pulsar.ConsumerCryptoFailureAction">ConsumerCryptoFailureAction</a></code>, <em>default</em> <code>ConsumerCryptoFailureAction.FAIL</code></td><td class="fieldArgDesc"><p>Set the behavior when the decryption fails. The default is to fail the message.</p>
<p>Supported actions:</p>
<ul class="rst-simple">
<li>ConsumerCryptoFailureAction.FAIL: Fail consume until crypto succeeds</li>
<li>ConsumerCryptoFailureAction.DISCARD:
Message is silently acknowledged and not delivered to the application.</li>
<li>ConsumerCryptoFailureAction.CONSUME:
Deliver the encrypted message to the application. It's the application's responsibility
to decrypt the message. If message is also compressed, decompression will fail. If the
message contains batch messages, client will not be able to retrieve individual messages
in the batch.</li>
</ul>
</td></tr></table></div>
  </div>
</div><div class="basestaticmethod private">
  
  
  <a name="pulsar.Client._prepare_logger">
    
  </a>
  <a name="_prepare_logger">
    
  </a>
  <div class="functionHeader">
    
    <div><span class="decorator">@<a href="https://docs.python.org/3/library/functions.html#staticmethod" class="intersphinx-link">staticmethod</a><br /></span></div>
    <span class="py-keyword">def</span>&#160;<span class="py-defname">_prepare_logger</span><span class="function-signature">(<span class="rst-sig-param">logger</span>):</span>
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L670">
      
      (source)
    </a>
    <a class="headerLink" href="#_prepare_logger" title="pulsar.Client._prepare_logger">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p class="undocumented">Undocumented</p></div>
  </div>
</div><div class="baseinstancevariable private">
  
  
  <a name="pulsar.Client._client">
    
  </a>
  <a name="_client">
    
  </a>
  <div class="functionHeader">
    
    <span class="py-defname">_client</span> =
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L667">
      
      (source)
    </a>
    <a class="headerLink" href="#_client" title="pulsar.Client._client">
      
      
      ¶
    </a>
  </div>
  <div class="functionBody">
    
    <div><p class="undocumented">Undocumented</p></div>
    
  </div>
</div><div class="baseinstancevariable private">
  
  
  <a name="pulsar.Client._consumers">
    
  </a>
  <a name="_consumers">
    
  </a>
  <div class="functionHeader">
    
    <span class="py-defname">_consumers</span>: <code><a href="https://docs.python.org/3/library/stdtypes.html#list" class="intersphinx-link">list</a></code> =
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L668">
      
      (source)
    </a>
    <a class="headerLink" href="#_consumers" title="pulsar.Client._consumers">
      
      
      ¶
    </a>
  </div>
  <div class="functionBody">
    
    <div><p class="undocumented">Undocumented</p></div>
    
  </div>
</div><div class="baseinstancevariable private">
  
  
  <a name="pulsar.Client._table_view">
    
  </a>
  <a name="_table_view">
    
  </a>
  <div class="functionHeader">
    
    <span class="py-defname">_table_view</span> =
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.8.0/pulsar/__init__.py#L1265">
      
      (source)
    </a>
    <a class="headerLink" href="#_table_view" title="pulsar.Client._table_view">
      
      
      ¶
    </a>
  </div>
  <div class="functionBody">
    
    <div><p class="undocumented">Undocumented</p></div>
    
  </div>
</div>
        </div>
      
      </div>
    </div>

    <footer class="navbar navbar-default">
    <hr />
    
    
    <div class="container-fluid">
      <a href="index.html">API Documentation</a> for _pulsar/pulsar,
    generated by <a href="https://github.com/twisted/pydoctor/">pydoctor</a>
      25.4.0 at 2025-07-19 14:22:25.
    </div>
    
    <script src="ajax.js" type="text/javascript"></script>
    <script src="searchlib.js" type="text/javascript"></script>
    <script src="search.js" type="text/javascript"></script>
  
  </footer>
  
    <script src="pydoctor.js" type="text/javascript"></script>

  </body>
</html>