blob: 6c08eef2add6e8422f065af97ad16cc082d014a4 [file] [log] [blame] [edit]
<!DOCTYPE html>
<html lang="en" data-content_root="../">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>grpc_admin &#8212; gRPC Python 1.76.0 documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=5ecbeea2" />
<link rel="stylesheet" type="text/css" href="../_static/alabaster.css?v=f0f94f3a" />
<script src="../_static/documentation_options.js?v=8c3e8212"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="stylesheet" href="../_static/custom.css" type="text/css" />
</head><body>
<div class="document">
<div class="sphinxsidebar" role="navigation" aria-label="Main">
<div class="sphinxsidebarwrapper">
<h1 class="logo"><a href="../index.html">gRPC Python</a></h1>
<p class="blurb">1.76.0</p>
<h3>Navigation</h3>
<p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../grpc.html">gRPC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_asyncio.html">gRPC AsyncIO API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_admin.html">gRPC Admin</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_channelz.html">gRPC Channelz</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_csds.html">gRPC CSDS</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_health_checking.html">gRPC Health Checking</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_reflection.html">gRPC Reflection</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_status.html">gRPC Status</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_testing.html">gRPC Testing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../grpc_observability.html">gRPC Python Observability</a></li>
<li class="toctree-l1"><a class="reference internal" href="../glossary.html">Glossary</a></li>
</ul>
<div class="relations">
<h3>Related Topics</h3>
<ul>
<li><a href="../index.html">Documentation overview</a><ul>
<li><a href="index.html">Module code</a><ul>
</ul></li>
</ul></li>
</ul>
</div>
<search id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
<input type="submit" value="Go" />
</form>
</div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>
</div>
</div>
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<h1>Source code for grpc_admin</h1><div class="highlight"><pre>
<span></span><span class="c1"># Copyright 2021 The gRPC Authors</span>
<span class="c1">#</span>
<span class="c1"># Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span>
<span class="c1"># you may not use this file except in compliance with the License.</span>
<span class="c1"># You may obtain a copy of the License at</span>
<span class="c1">#</span>
<span class="c1"># http://www.apache.org/licenses/LICENSE-2.0</span>
<span class="c1">#</span>
<span class="c1"># Unless required by applicable law or agreed to in writing, software</span>
<span class="c1"># distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span>
<span class="c1"># WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<span class="c1"># See the License for the specific language governing permissions and</span>
<span class="c1"># limitations under the License.</span>
<span class="sd">&quot;&quot;&quot;gRPC Python&#39;s Admin interface.&quot;&quot;&quot;</span>
<span class="kn">from</span><span class="w"> </span><span class="nn">grpc_channelz.v1</span><span class="w"> </span><span class="kn">import</span> <span class="n">channelz</span>
<span class="kn">import</span><span class="w"> </span><span class="nn">grpc_csds</span>
<div class="viewcode-block" id="add_admin_servicers">
<a class="viewcode-back" href="../grpc_admin.html#grpc_admin.add_admin_servicers">[docs]</a>
<span class="k">def</span><span class="w"> </span><span class="nf">add_admin_servicers</span><span class="p">(</span><span class="n">server</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Register admin servicers to a server.</span>
<span class="sd"> gRPC provides some predefined admin services to make debugging easier by</span>
<span class="sd"> exposing gRPC&#39;s internal states. Each existing admin service is packaged as</span>
<span class="sd"> a separate library, and the documentation of the predefined admin services</span>
<span class="sd"> is usually scattered. It can be time consuming to get the dependency</span>
<span class="sd"> management, module initialization, and library import right for each one of</span>
<span class="sd"> them.</span>
<span class="sd"> This API provides a convenient way to create a gRPC server to expose admin</span>
<span class="sd"> services. With this, any new admin services that you may add in the future</span>
<span class="sd"> are automatically available via the admin interface just by upgrading your</span>
<span class="sd"> gRPC version.</span>
<span class="sd"> Args:</span>
<span class="sd"> server: A gRPC server to which all admin services will be added.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">channelz</span><span class="o">.</span><span class="n">add_channelz_servicer</span><span class="p">(</span><span class="n">server</span><span class="p">)</span>
<span class="n">grpc_csds</span><span class="o">.</span><span class="n">add_csds_servicer</span><span class="p">(</span><span class="n">server</span><span class="p">)</span></div>
<span class="n">__all__</span> <span class="o">=</span> <span class="p">[</span><span class="s2">&quot;add_admin_servicers&quot;</span><span class="p">]</span>
</pre></div>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
&#169;2025, The gRPC Authors.
</div>
<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-60127042-1']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'https://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</body>
</html>