grpc/python/grpc_csds.html

179 lines
8.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>gRPC CSDS &#8212; gRPC Python 1.64.0 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=4f649999" />
<link rel="stylesheet" type="text/css" href="_static/alabaster.css?v=8090fdca" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js?v=057799ce"></script>
<script src="_static/doctools.js?v=888ff710"></script>
<script src="_static/sphinx_highlight.js?v=4825356b"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="gRPC Health Checking" href="grpc_health_checking.html" />
<link rel="prev" title="gRPC Channelz" href="grpc_channelz.html" />
<link rel="stylesheet" href="_static/custom.css" type="text/css" />
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
</head><body>
<div class="document">
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h1 class="logo"><a href="index.html">gRPC Python</a></h1>
<p class="blurb">1.64.0</p>
<h3>Navigation</h3>
<p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<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 current"><a class="current reference internal" href="#">gRPC CSDS</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#what-is-grpc-csds">What is gRPC CSDS?</a></li>
<li class="toctree-l2"><a class="reference internal" href="#module-grpc_csds">Module Contents</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#grpc_csds.ClientStatusDiscoveryServiceServicer"><code class="docutils literal notranslate"><span class="pre">ClientStatusDiscoveryServiceServicer</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#grpc_csds.add_csds_servicer"><code class="docutils literal notranslate"><span class="pre">add_csds_servicer()</span></code></a></li>
</ul>
</li>
</ul>
</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>Previous: <a href="grpc_channelz.html" title="previous chapter">gRPC Channelz</a></li>
<li>Next: <a href="grpc_health_checking.html" title="next chapter">gRPC Health Checking</a></li>
</ul></li>
</ul>
</div>
<div 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>
</div>
<script>document.getElementById('searchbox').style.display = "block"</script>
</div>
</div>
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="grpc-csds">
<h1>gRPC CSDS<a class="headerlink" href="#grpc-csds" title="Permalink to this heading"></a></h1>
<section id="what-is-grpc-csds">
<h2>What is gRPC CSDS?<a class="headerlink" href="#what-is-grpc-csds" title="Permalink to this heading"></a></h2>
<p>In short, its a xDS configuration dump protocol.</p>
<p>Design Document <a class="reference external" href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md">gRPC CSDS</a></p>
</section>
<section id="module-grpc_csds">
<span id="module-contents"></span><h2>Module Contents<a class="headerlink" href="#module-grpc_csds" title="Permalink to this heading"></a></h2>
<p>Channelz debug service implementation in gRPC Python.</p>
<dl class="py class">
<dt class="sig sig-object py" id="grpc_csds.ClientStatusDiscoveryServiceServicer">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">grpc_csds.</span></span><span class="sig-name descname"><span class="pre">ClientStatusDiscoveryServiceServicer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc_csds.html#ClientStatusDiscoveryServiceServicer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#grpc_csds.ClientStatusDiscoveryServiceServicer" title="Permalink to this definition"></a></dt>
<dd><p>CSDS Servicer works for both the sync API and asyncio API.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>args</strong> (<em>Any</em>) </p></li>
<li><p><strong>kwargs</strong> (<em>Any</em>) </p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>Any</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="grpc_csds.add_csds_servicer">
<span class="sig-prename descclassname"><span class="pre">grpc_csds.</span></span><span class="sig-name descname"><span class="pre">add_csds_servicer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">server</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc_csds.html#add_csds_servicer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#grpc_csds.add_csds_servicer" title="Permalink to this definition"></a></dt>
<dd><p>Register CSDS servicer to a server.</p>
<p>CSDS is part of xDS protocol used to expose in-effective traffic
configuration (or xDS resources). It focuses on simplify the debugging of
unexpected routing behaviors, which could be due to a misconfiguration,
unhealthy backends or issues in the control or data plane.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>server</strong> A gRPC server to which the CSDS service will be added.</p>
</dd>
</dl>
</dd></dl>
</section>
</section>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
&copy;2020, The gRPC Authors.
|
<a href="_sources/grpc_csds.rst.txt"
rel="nofollow">Page source</a>
</div>
<script type="text/javascript">
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.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</body>
</html>