CTDB PMDA =========== This PMDA extracts metrics from the locally running ctdbd daemon for export to PMCD. Note: This PMDA may be remade from source and hence requires IDO (or more specifically a C compiler) to be installed. Uses of make(1) may fail (without removing or clobbering files) if the C compiler cannot be found. This is most likely to happen when running the PMDA ./Install script. The only remedial action is to install the C compiler, or hand-craft changes to the Makefile. Metrics ======= The file ./help contains descriptions for all of the metrics exported by this PMDA. Once the PMDA has been installed, the following command will list all the available metrics and their explanatory "help" text: $ pminfo -fT ctdb Installation ============ + # cd $PCP_PMDAS_DIR/ctdb + Check that there is no clash in the Performance Metrics Domain defined in ./domain.h and the other PMDAs currently in use (see $PCP_PMCDCONF_PATH). If there is, edit ./domain.h to choose another domain number. + Then simply use # ./Install and choose both the "collector" and "monitor" installation configuration options. You will be prompted to choose either a daemon implementation or a DSO implementation of the PMDA, and in the case of the daemon variant to select an IPC method -- everything else is automated De-installation =============== + Simply use # cd $PCP_PMDAS_DIR/ctdb # ./Remove Troubleshooting =============== + After installing or restarting the agent, the PMCD log file ($PCP_LOG_DIR/pmcd/pmcd.log) and the PMDA log file ($PCP_LOG_DIR/pmcd/pmda_ctdb.log) should be checked for any warnings or errors. Adding a New Metric =================== This section walks through the development task of adding a new metric to the CTDB PMDA. + Define the metric in the pmns file with a unique metric id. See the pmns(4) man page for details. + Add a description of the metric to the help file. + Taking note of the previously assigned metric id, add a new entry to the metrictab structure in pmda_ctdb.c. See the pmdaInit(3) man page for details. + Ensure the counter is already a member of the ctdb_statistics structure. Finally, add code to pmda_ctdb_fetch_cb() to handle fetch requests for the newly defined metric.