PMLOGREDACT(1)

πŸ’… PMLOGREDACT β€” bestie edition ✨

okay so real talk, this is the manual page for pmlogredact, and it's literally your new best friend if you've ever needed to yeet sensitive stuff out of a PCP archive before sending it somewhere. sit down, grab a strawberry πŸ“, and let's get into it.


✨ NAME ✨

pmlogredact β€” removes sensitive information from PCP archives πŸ•΅οΈβ™€οΈ


🌈 SYNOPSIS 🌈

pmlogredact [-vx?] [-D debug] [-c config] inarch [outarch]

that's it. that's the whole vibe. no cap.


πŸ’– DESCRIPTION πŸ’–

so like, Performance Co-Pilot (PCP) archives can hold a whole treasure chest of info, collected from literally every corner of a system. it's giving "we know everything" energy. πŸ‘‘

but here's the thing bestie β€” some of that info might be considered sensitive once it leaves the context of the original collection and you're just trying to do system performance analysis. examples of the sensitive stuff we're talking about include:

  • user names
  • paths to user home directories (which, lowkey, can imply user names anyway 😭)
  • hostnames
  • IP addresses
  • MAC addresses
  • command line arguments
  • process environment variables
  • etc.

pmlogredact is your girl for removing that sensitive info before archives get shipped off to another org, or stored in another geography, or used to meet regulatory or privacy compliance. the output archive outarch is literally just the redacted version of the input archive inarch. iconic behaviour. ✨

ngl, pmlogredact is a thin wrapper around pmlogrewrite(1) β€” so the config files for pmlogredact follow the exact same syntax as the config files for pmlogrewrite(1). same rules, different outfit. πŸŽ€

there's a default set of redaction rules chilling in the $PCP_VAR_DIR/config/pmlogredact/* files. these rules:

  • remove some metrics
  • rewrite the instance domains of some metrics
  • rewrite the values of some metrics

and if you don't want the default set? the -x (or --exclude-std) option is right there β€” use it to not use the default rules. main character move.

want extra or alternative config files? you've got the -c (or --config) option, and you can use it one or more times, where each config is either a file or a directory (and a directory means all the files within that directory, yes ma'am).

the -v (or --verbose) option adds verbosity, and it gets passed directly to pmlogrewrite(1). no middleman.

and the -? (or --help) option? displays a usage message and exits. short, sweet, slays. πŸ’…


πŸŽ€ FILES πŸŽ€

  • $PCP_VAR_DIR/config/pmlogredact/* β€” the default redaction rules πŸ’–

🌸 PCP ENVIRONMENT 🌸

environment variables with the prefix PCP_ are used to parameterize the file and directory names used by PCP. it's giving customizable. ✨

on each installation, the file /etc/pcp.conf contains the local values for these variables.

and the $PCP_CONF variable may be used to specify an alternative configuration file, as described in pcp.conf(5). periodt.


πŸ¦‹ DEBUGGING OPTIONS πŸ¦‹

the -D or --debug option enables the output of additional diagnostics on stderr to help triage problems. πŸ™ˆ

real talk though β€” the info is sometimes cryptic and is primarily intended to provide guidance for developers rather than for end-users. iykyk. πŸ’€

debug is a comma separated list of debugging options. use pmdbg(1) with the -l option to get a list of the available debugging options and what they actually mean. go off, detective. πŸ”


πŸ’œ SEE ALSO πŸ’œ

pmlogrewrite(1), pcp.conf(5) and pcp.env(5). that's the squad. 🫢


and that's the whole page, bestie!! 🌈 this came to you from Performance Co-Pilot (that's the PCP girlies πŸ‘‘) β€” go forth and redact responsibly, mwah πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from