<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Em ter, 17 de set de 2019 às 06:29, Tatsuo Ishii &lt;<a href="mailto:ishii@sraoss.co.jp">ishii@sraoss.co.jp</a>&gt; escreveu:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">&gt; By occupation I mean utilization.. Something that I can see that the pgpool<br>
&gt; are with &#39;98% of connections slots in use&#39;. I use the pgpool into a docker<br>
&gt; container, so I like to &#39;kill&#39; the container when pgpool get 99% of<br>
&gt; utilization, so docker swarm (docker orchestrator) will launch a brand new<br>
&gt; container. When I do this, the vacuum in database nodes are more effective,<br>
&gt; the cache are released, I guarantee that all the requests will be executed<br>
&gt; because it will have free connections to use always. I do this &#39;kill&#39;<br>
&gt; frequently by crontab, but it consume some host resources that are not so<br>
&gt; good. Basically I need to now if the pgpool has slot to receive more<br>
&gt; connections, if don&#39;t, I&#39;ll kill the container.<br>
&gt; <br>
&gt; I like to propose the following features to monitoring:<br>
&gt; <br>
&gt; - A metric that calculates the utilization of pgpool, calculating a<br>
&gt; percentage using num_init_children max_pool<br>
<br>
Can be obainted from pcp_proc_info today.<br></blockquote><div><br></div><div>I tried this, but I need to put process by process to monitor all pool. I want a way to get info from all process in just one command, if it&#39;s possible...</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
&gt; and child_max_connections<br>
<br>
It&#39;s not available today, not terrybly hard to implement, though.<br></blockquote><div><br></div><div>Nice!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
&gt; - A metric that show the query execution time<br>
<br>
It&#39;s not available today, not terrybly hard to implement, though.<br></blockquote><div><br></div><div>Nice!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
&gt; - A metric that show the &#39;tps&#39;, like in pg_top. So I can monitor how many<br>
&gt; transactions has been executed in the pool to measure the efficiency<br>
<br>
It&#39;s not available today. Interesting question is, how do you define<br>
tps (I guess you mean &quot;query per second&quot;, rather than &quot;transactions<br>
per second&quot; by tps) as it needs to define a duration of query<br>
execution. &quot;Tps&quot; is essentially:<br>
<br>
number_of_queries_executed / duration<br></blockquote><div><br></div><div>Yes! Exactly this! With this I can monitor the throughput of the pgpool and compare with the nodes. </div><div><br></div><div>How can I help to dev/test this or any other features? I&#39;m really willing to help improve this amazing tool!</div><div><br></div><div>Thanks!</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Best regards,<br>
--<br>
Tatsuo Ishii<br>
SRA OSS, Inc. Japan<br>
English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr">Abraços!<br><br>=============================<br>José Roberto Emerich Junior<br>=============================</div></div></div></div></div>