Путеводитель по Руководству Linux

  User  |  Syst  |  Libr  |  Device  |  Files  |  Other  |  Admin  |  Head  |



   pcpintro    ( 3 )

введение в библиотеки Performance Co-Pilot (PCP) (introduction to the Performance Co-Pilot (PCP) libraries)

GENERAL ERRORS

These common errors may occur in various PCP interactions.

PM_ERR_TIMEOUT Timeout waiting for a response from PMCD Many interactions between PCP applications involve synchronous message passing, and these are subject to timeout constraints. These errors are most frequently encountered when using network connections with slow data rates or long latencies.

For client-pmcd timeouts, refer to PCPIntro(1) for environment variables that may be used to modify the timeout thresholds. For pmcd-PMDA timeouts refer to the -t and -q options of pmcd(1) and the PCP metric pmcd.control.timeout that can be dynamically changed with pmstore(1).

PM_ERR_APPVERSION Metric not supported by this version of monitored application Some performance metrics are unavailable from specific versions of the associated PMDA, or may be unavailable because the underlying instrumentation has changed or is not installed or is not enabled. This error is used in results from pmFetch(3) to indicate these situations.

PM_ERR_IPC IPC protocol failure Generic protocol failure on a pipe or socket connecting two PCP applications, eg. client-pmcd, or client-pmtime, or PMDA-pmcd or pmlc-pmlogger.

PM_ERR_TEXT One-line or help text is not available Set by a PMDA, and passed back to a PCP client, to indicate that the PMDA is unable to supply the requested metric or instance domain help text.

PM_ERR_VALUE Missing metric value(s) This error is used for a number of conditions in which the value of a performance metric is inappropriate for the context in which it is being used, eg.

(a) Bad value for the metric pmcd.timezone when trying to set the timezone via pmNewContextZone(3) for a remote or archive context.

(b) Attempting to interpolate values for a metric with non- numeric data type from a set of PCP archives.

(c) A bad result data structure passed to pmStore(3).

PM_ERR_NAME Unknown metric name Just what the message says.

PM_ERR_PMID Unknown or illegal metric identifier Just what the message says.

PM_ERR_INDOM Unknown or illegal instance domain identifier A request nominates an instance domain that is unknown or PM_INDOM_NULL. May occur as a consequence of the instance domain identifier passed by a PCP client to pmGetInDom(3), pmLookupInDom(3), pmNameInDom(3), pmGetInDomArchive(3), pmLookupInDomArchive(3), pmNameInDomArchive(3) or a request passed from pmcd(1) to a PMDA.

PM_ERR_EOF IPC channel closed End of file on a pipe or socket connecting two PCP applications, eg. client-pmcd, or client-pmtime or PMDA-pmcd.

PM_ERR_NOCONTEXT Attempt to use an illegal context Typically caused by a PCP client that tries to make calls before calling pmNewContext(3) or after calling pmDestroyContext(3).

PM_ERR_PERMISSION No permission to perform requested operation PCP-specific access controls apply to pmcd(1) and pmlogger(1). Platform-specific permission errors are returned as -EPERM.

PM_ERR_CONV Impossible value or scale conversion Some value conversion requests are illegal, eg. bad debug flag symbolic name for -D/--debug option, or asking pmExtractValue(3) to translate non-numeric data types to numbers and vice versa.

PM_ERR_TRUNC Truncation in value conversion Some conversion requests to pmExtractValue(3) cannot be performed based on the metric types and values involved, in this case conversion would result in loss of precision.

PM_ERR_SIGN Negative value in conversion to unsigned Some conversion requests to pmExtractValue(3) cannot be performed based on the metric types and values involved, in this case converting a negative value to an unsigned value.

PM_ERR_TYPE Unknown or illegal metric type The metric type is held in the metric descriptor and sometimes encoded in the metric values returned from a call to pmFetch(3). Legal values for the metric type are defined by the PM_TYPE_* macros in <pcp/pmapi.h>.

PM_ERR_UNIT Illegal pmUnits specification Some conversion requests to pmConvScale(3) cannot be performed due to illegal or incompatible specifications of the source and destination units.

PM_ERR_PROFILE Explicit instance identifier(s) required Some PMDAs, especially the proc PMDA, will not return ``all instances'' for a pmFetch(3) request due to the cost. The client must explicitly built an instance profile using pmAddProfile(3) and/or pmDelProfile(3) before calling pmFetch(3). See also the -F/--fetchall option to pminfo(1).

PM_ERR_INST Unknown or illegal instance identifier A request to a PMDA nominates an instance that is unknown. May occur as a consequence of the profile established prior to a pmFetch(3) call, or an explicit instance name or identifier to pmLookupInDom(3) or pmNameInDom(3).

PM_ERR_MODE Illegal mode specification Illegal mode argument to pmSetMode(3).

PM_ERR_PROFILESPEC NULL pmInDom with non-NULL instlist Bad arguments passed from a PCP client to pmAddProfile(3).

PM_ERR_TOOSMALL Insufficient elements in list Parameter passing error by caller specifying a list with less than one element to pmFetch(3), pmLookupName(3) or pmStore(3).

PM_ERR_FAULT QA fault injected For testing, there is a ``fault injection'' version of libpcp and this error indicates a misuse of the fault injection infrastructure.

PM_ERR_THREAD Operation not supported for multi-threaded applications As documented in PMAPI(3) and elsewhere, some libpcp routines are intended solely for use from single-threaded applications.

PM_ERR_NOCONTAINER Container not found The user supplied container name does not match any known container.

PM_ERR_BADSTORE Bad input to pmstore The metric value provided for a pmStore(3) operation is in the wrong format, or of the wrong type or has the wrong number of values.

PM_ERR_TOOBIG Result size exceeded Indicates a fatal error in the message (or PDU) passing protocol between two PCP applications. This is an internal error, and other than an exotic networking failure, should not occur.

PM_ERR_RESET PMCD reset or configuration change Not used.

Refer to pmFetch(3) for an alternative mechanism that may be used to notify a PCP client when pmcd(1) has experienced one or more configuration changes since the last request from the client. Usually these changes involve a change to the namespace exported via pmcd and/or changes to the PMDAs under pmcd's control.

PM_ERR_FAULT QA fault injected Used only for PCP Quality Assurance (QA) testing.

PM_ERR_NYI Functionality not yet implemented Self explanatory and rarely used.

PM_ERR_GENERIC Generic error, already reported above Rarely used, this error may be returned when the error condition is a consequent of some earlier returned error and a more precise characterization is not possible.

PM_ERR_BADDERIVE Derived metric definition failed When registering a derived metric, the metric expression is either syntactically or semantically incorrect.

PM_ERR_NOLABELS No support for metric label metadata Operation requires metric labels, but none are available.