On Thu, 18 May 2000, Michal Kara wrote:
> Hello!
>
> I have written first version of MySQL pmda. It provides MySQL server status
> and configuration variables ('show status' and 'show variables') commands.
> Current version requiers server version >= 3.22.x. You will find instalation
> instructions in the INSTALL file in the archive (get it from
> http://k332.feld.cvut.cz/~lemming/projects/pmdamysql.tgz )
Michal, excellent work! You should get in touch with the MySQL maintainers;
I met the principal maintainer about a year ago at Linux Expo in N.C. USA
and he said he was interested in a PCP agent for MySQL, but I never had
time to work on it [note: this reply is cc mysql@xxxxxxxxxxxxxxx].
>
> There are few questions I would like to ask public and/or SGI staff:
>
> - Current version supports one server per running PMDA. I persobally think
> this
> is sufficient (see NOTES), but what do you think?
This is fine. If you have multiple servers, you can start a new PMDA for
each one (with a different domain number), or have the one PMDA handle
multiple servers. In both cases you are going to get a name space
clash because PCP instance domains are not multi dimensional. The
solution is to generate a separate name space for each server, with the
second level of the name space being the server name. So you'll end up
with mysql.SERVER_A.* and mysql.SERVER_B.*, etc. This is the method we
used for the Oracle, Sybase and Informix PMDAs (BTW these PMDAs have
not been released as open source. If anyone is interested in working on
them, please let me know). Perhaps we could put together a "pcp-dbms"
package or something [note: this is not an offer to open source them,
just a probe to gauge interest].
> - I cannot seem to be able to properly install help for metrics. When can
> I find instructions?
What is the nature of the problem? You should read the man pages for
pmdaDaemon(3) and newhelp(1), and use the code for the trivial, sample
and simple PMDAs as examples. There are also online help books at
techpubs.sgi.com (search for the Performance Co-Pilot Programmer's Guide).
> - Do you think it is acceptable to consider data valid for, say, one second?
> currently I consider them valid only during single fetch. Extending the
> period would mean less questions to server (pminfo gets only 10 metrics
> per fetch).
It is acceptable to cache results, but be careful with metrics that
have counter semantics - client tools that do rate conversion will
show rates in "bursts", because the counters will suddenly increase
in value each time the cache period expires and you issue a new fetch
to the sql server.
> - I would like to implement processlist ('show processlist' command). Do you
> think it would provide useful information for PM?
The per-client and per-process statistics have been historically of the
most value in our use of PCP in tracking down oracle/sybase/informix
performance problems, so I would say yes - the per process stuff is
definitely worth doing. If you need help understanding instance domains,
please ask!
thanks
-- Mark Goodwin
SGI Engineering
|