/*
 * DO NOT EDIT.
 * Built from ../../include/pcp/{pmapi,deprecated}.h by mk_pmdbg.
 * Any modifications here will be lost.
 */

typedef struct {
    const char	*name;
    int	* const options;	/* points to a pmDebugOptions.xxx */
    int		state;		/* for internal use */
    const char	*text;		/* explanation */
} debug_map_t;

static debug_map_t debug_map[] = {
    { "pdu", &pmDebugOptions.pdu, 0, "PDU traffic at the Xmit and Recv level" },
    { "fetch", &pmDebugOptions.fetch, 0, "Results from pmFetch" },
    { "profile", &pmDebugOptions.profile, 0, "Changes and xmits for instance profile" },
    { "value", &pmDebugOptions.value, 0, "Metric value extraction and conversion" },
    { "context", &pmDebugOptions.context, 0, "Changes to PMAPI contexts" },
    { "indom", &pmDebugOptions.indom, 0, "Instance domain operations" },
    { "pdubuf", &pmDebugOptions.pdubuf, 0, "PDU buffer operations" },
    { "log", &pmDebugOptions.log, 0, "Archive manipulations" },
    { "logmeta", &pmDebugOptions.logmeta, 0, "Archive metadata operations" },
    { "optfetch", &pmDebugOptions.optfetch, 0, "optFetch magic" },
    { "af", &pmDebugOptions.af, 0, "Asynchronous event scheduling" },
    { "appl0", &pmDebugOptions.appl0, 0, "Application-specific flag 0" },
    { "appl1", &pmDebugOptions.appl1, 0, "Application-specific flag 1" },
    { "appl2", &pmDebugOptions.appl2, 0, "Application-specific flag 2" },
    { "pmns", &pmDebugOptions.pmns, 0, "PMNS operations" },
    { "libpmda", &pmDebugOptions.libpmda, 0, "PMDA operations in libpcp_pmda" },
    { "timecontrol", &pmDebugOptions.timecontrol, 0, "Time control API" },
    { "pmc", &pmDebugOptions.pmc, 0, "Metrics class operations" },
    { "derive", &pmDebugOptions.derive, 0, "Derived metrics functionality" },
    { "lock", &pmDebugOptions.lock, 0, "Synchronization and lock tracing" },
    { "interp", &pmDebugOptions.interp, 0, "Interpolate mode for archives" },
    { "config", &pmDebugOptions.config, 0, "Configuration parameters" },
    { "pmapi", &pmDebugOptions.pmapi, 0, "PMAPI call tracing" },
    { "fault", &pmDebugOptions.fault, 0, "Fault injection tracing" },
    { "auth", &pmDebugOptions.auth, 0, "Authentication tracing" },
    { "discovery", &pmDebugOptions.discovery, 0, "Service discovery tracing" },
    { "attr", &pmDebugOptions.attr, 0, "Connection attribute handling" },
    { "http", &pmDebugOptions.http, 0, "Trace HTTP operations in libpcp_web" },
    { "desperate", &pmDebugOptions.desperate, 0, "Verbose/Desperate level (developers only)" },
    { "deprecated", &pmDebugOptions.deprecated, 0, "Report use of deprecated services" },
    { "exec", &pmDebugOptions.exec, 0, "__pmProcessExec and related calls" },
    { "labels", &pmDebugOptions.labels, 0, "Metric label metadata operations" },
    { "series", &pmDebugOptions.series, 0, "Time series tracing" },
    { "libweb", &pmDebugOptions.libweb, 0, "Trace services from libpcp_web" },
    { "alloc", &pmDebugOptions.alloc, 0, "Miscellaneous alloc/free operations" },
    { "services", &pmDebugOptions.services, 0, "Services and daemons" },
    { "appl3", &pmDebugOptions.appl3, 0, "Application-specific flag 3" },
    { "appl4", &pmDebugOptions.appl4, 0, "Application-specific flag 4" },
    { "appl5", &pmDebugOptions.appl5, 0, "Application-specific flag 5" },
    { "access", &pmDebugOptions.access, 0, "Access controls" },
    { "qa", &pmDebugOptions.qa, 0, "QA (transient, developers only)" },
    { "search", &pmDebugOptions.search, 0, "Text search tracing" },
    { "query", &pmDebugOptions.query, 0, "libpcp_web query parsing and evaluation" },
    { "compress", &pmDebugOptions.compress, 0, "Archive compress/decompress operations" },
    { "dev0", &pmDebugOptions.dev0, 0, "Developer flag 0" },
    { "dev1", &pmDebugOptions.dev1, 0, "Developer flag 1" },
    { "dev2", &pmDebugOptions.dev2, 0, "Developer flag 2" },
    { "pmlc", &pmDebugOptions.pmlc, 0, "Protocol between pmlc and pmlogger" },
    { "appl6", &pmDebugOptions.appl6, 0, "Application-specific flag 6" },
    { "appl7", &pmDebugOptions.appl7, 0, "Application-specific flag 7" },
    { "appl8", &pmDebugOptions.appl8, 0, "Application-specific flag 8" },
    { "appl9", &pmDebugOptions.appl9, 0, "Application-specific flag 9" },
    { "tls", &pmDebugOptions.tls, 0, "Transport Layer Security operations" },
    { "misc", &pmDebugOptions.misc, 0, "Miscellaneous odds and sods" },
    { "qed", &pmDebugOptions.qed, 0, "Methods in libpcp_qed" },
    { "getopt", &pmDebugOptions.getopt, 0, "Processing of command-line arguments" },
};

static const int num_debug = sizeof(debug_map) / sizeof(debug_map[0]);
