int pmAddProfile(pmInDom indom, int numinst, int *instlist)
cc ... -lpcp
DESCRIPTION
The set of instances for performance metrics returned from a
pmFetch(3)
call may be filtered or restricted using an instance profile.
There is one instance profile for each context the application
creates at the Performance Metrics Application Programming Interface
(PMAPI(3)),
and each instance profile may include instances from one or more
instance domains (see
pmLookupDesc(3)).
pmAddProfile
may be used to
add new instance specifications to the instance profile of the current
PMAPI context.
In the simplest variant, the list of instances identified by the
instlist
argument for the
indom
instance domain are added to the instance profile.
The list of instance
identifiers contains
numinst
values.
The
indom
value would normally be extracted from a call to
pmLookupDesc(3)
for a particular performance metric, and the instances in
instlist
would typically be determined by calls to
pmGetInDom(3)
or
pmLookupInDom(3).
To select all instances in all instance domains, use
pmAddProfile(PM_INDOM_NULL, 0, (int *)0)
This is the only case where
indom
may be equal to
PM_INDOM_NULL.
If
numinst
is zero, or
instlist
is NULL, then all instances in
indom
are selected.
indom
was
PM_INDOM_NULL
and
instlist
was not empty
CAVEAT
It is possible to add non-existent instance domains and non-existent instances
to an instance profile. None of the routines that use the instance profile
will ever issue an error if you do this. The cost of checking, when checking
is possible, outweighs any benefits.