pmns man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

PMNS(4)								       PMNS(4)

NAME
       pmns - the performance metrics name space

SYNOPSIS
       $PCP_VAR_DIR/pmns

DESCRIPTION
       When using the Performance Metrics Programming Interface (PMAPI) of the
       Performance Co-Pilot (PCP), performance metrics are  identified	by  an
       external	 name  in  a hierarchic Performance Metrics Name Space (PMNS),
       and an internal identifier, the Performance Metric Identifier (PMID).

       A PMNS specifies the association between a metric's name and its PMID.

       A PMNS is defined on one or more ASCII source files, that may  be  com‐
       piled  using  pmnscomp(1)  to  produce  a  binary PMNS.	Note that pmn‐
       scomp(1) is normally invoked from the $PCP_VAR_DIR/pmns/Rebuild	script
       if necessary when pmcd(1) is started.

       Loading	of a PMNS is done by calling pmLoadNameSpace(3) which silently
       tolerates either the ASCII or binary formats.   Alternatively,  pmLoad‐
       ASCIINameSpace(3) may be used to load just the ASCII format.

       If  the binary format is used, no checking is performed for aliasing in
       which multiple names in the PMNS are associated with a single PMID.  If
       the  ASCII  format  is  to  be  used,  duplicate PMIDs are not allowed,
       although pmLoadASCIINameSpace(3) provides an alternative interface with
       user-defined control over the processing of duplicate PMIDs in an ASCII
       format PMNS.  The external ASCII format for a PMNS conforms to the syn‐
       tax and semantics described in the following sections.

       There  is  one  default	PMNS  in  the  files  below $PCP_VAR_DIR/pmns,
       although users and application developers are free to  create  and  use
       alternate  PMNS's.   For	 an  example  of this, see the PCP Tutorial in
       $PCP_DEMOS_DIR/Tutorial.

       Although an application can call pmLoadNameSpace(3), normally  this  is
       only  done  directly  for  the -n command line option where an explicit
       root PMNS file is specified.  Since PCP version 2  uses	a  distributed
       PMNS  (see  below),  an application can extract PMNS information from a
       host's PMCD or an archive.  If the PMNS source is a version  1  archive
       (see  PCPIntro(1)),  however,  then the local PMNS will be loaded using
       the path specified by the environment variable PMNS_DEFAULT.

DISTRIBUTED PMNS
       In PCP version 1, the PMNS functions in the API all operated on a  PMNS
       loaded  locally	from  a file. Since PCP version 2, however, PMNS func‐
       tions may get the PMNS information remotely from	 a  PMCD  or  directly
       from the meta data of an archive.

PROCESSING FRAMEWORK
       The  PMNS  specification	 is  initially	passed through pmcpp(1).  This
       means the following facilities may be used in the specification

       +  C-style comments

       +  #include directives

       +  #define directives and macro substitution

       +  conditional processing via #ifdef ...	 #endif, etc.

       When pmcpp(1) is executed, the ``standard'' include directories are the
       current directory and $PCP_VAR_DIR/pmns.

SYNTAX
       The general syntax for a non-leaf node in the PMNS is as follows

       pathname {
	       name	 [pmid]
	       ...
       }

       Where  pathname	is the full pathname from the root of the PMNS to this
       non-leaf node, with each component  in  the  pathname  separated	 by  a
       ``.''.  The root node for the PMNS must have the special name ``root'',
       but the common prefix ``root.'' must be	omitted	 from  all  pathnames.
       Each component in the pathname must begin with an alphabetic character,
       and be followed by zero or more characters drawn from the  alphabetics,
       the digits and the underscore ``_'') character.	For alphabetic charac‐
       ters in a pathname component, upper and lower case are distinguished.

       Non-leaf nodes in the PMNS may be defined in any order.

       The descendent nodes are defined by the set of names, relative  to  the
       pathname of their parent non-leaf node.	For the descendent nodes, leaf
       nodes have a pmid specification, non-leaf nodes do not.	The syntax for
       the pmid specification has been chosen to help manage the allocation of
       PMIDs across disjoint and  autonomous  domains  of  administration  and
       implementation.	 Each  pmid  consists of 3 integer parts, separated by
       colons, e.g. 14:27:11.  This hierarchic numbering scheme is intended to
       mirror  the implementation hierarchy of performance metric domain, met‐
       rics cluster (data structure or operational similarity) and  individual
       metric.	 In  practice,	the  two  leading  components are likely to be
       macros in the PMNS specification source, and pmcpp(1) will convert  the
       macros  to  integers.   These  macros for the initial components of the
       pmid are likely to be defined either in a standard include  file,  e.g.
       $PCP_VAR_DIR/pmns/stdpmid, or in the current source file.

       To support dynamic metrics, where the existence of a metric is known to
       a PMDA, but not visible in the PMNS, a variant syntax for the  pmid  is
       supported,  namely  a domain number followed by asterisks for the other
       components of the pmid, e.g. 14:*:*.   The  corresponding  metric  name
       forms the root of a subtree of dynamic metric names defined in the cor‐
       responding PMDA as identified by the domain number.

       The current allocation of the high-order (PMD or domain)	 component  of
       PMIDs is as follows.

	    ┌────────┬──────────────────────────────────────────────────┐
	    │ Range  │			  Allocation			│
	    ├────────┼──────────────────────────────────────────────────┤
	    │	   0 │ reserved						│
	    ├────────┼──────────────────────────────────────────────────┤
	    │	1-31 │ PMDAs from the PCP base product and/or IRIX	│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  32-39 │ Oracle						│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  40-47 │ Sybase						│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  48-55 │ Informix						│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  56-58 │ SNMP Gateway PMDA				│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  59-63 │ Linux PMDAs					│
	    ├────────┼──────────────────────────────────────────────────┤
	    │  64-69 │ ISV PMDAs					│
	    ├────────┼──────────────────────────────────────────────────┤
	    │ 70-128 │ more PMDAs from the PCP base product and/or IRIX │
	    ├────────┼──────────────────────────────────────────────────┤
	    │129-510 │ End-user PMDAs and demo PMDAs			│
	    ├────────┼──────────────────────────────────────────────────┤
	    │	 511 │ RESERVED						│
	    └────────┴──────────────────────────────────────────────────┘
EXAMPLE
       #define IRIX 1
       #define FOO 317
       root {
	   network
	   cpu
	   dynamic     FOO:*:*
       }

       #define NETWORK 26
       network {
	   intrate     IRIX:NETWORK:1
	   packetrate
       }

       network.packetrate {
	   in	       IRIX:NETWORK:35
	   out	       IRIX:NETWORK:36
       }

       #define CPU 10
       cpu {
	   syscallrate IRIX:CPU:10
	   util
       }

       #define USER 20
       #define KERNEL 21
       #define IDLE 22

       cpu.util {
	   user	       IRIX:CPU:USER
	   sys	       IRIX:CPU:KERNEL
	   idle	       IRIX:CPU:IDLE
       }

SEE ALSO
       PCPIntro(1),  pmcd(1),  pmcpp(1),  pmnscomp(1),	PCPIntro(3), PMAPI(3),
       pmErrStr(3),  pmGetConfig(3),   pmLoadASCIINameSpace(3),	  pmLoadNameS‐
       pace(3), pcp.conf(4) and pcp.env(4).

Performance Co-Pilot		      SGI			       PMNS(4)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net