summaryrefslogtreecommitdiffstats
path: root/pcp/PCPProcess.h
Commit message (Collapse)AuthorAgeFilesLines
* Relocate include of config.h from header to source modeuleBenny Baumann2023-12-261-2/+0
|
* Add PCP supportBenny Baumann2023-12-111-0/+1
|
* Merge branch 'main' of https://github.com/BowDown097/htop into BowDown097-mainNathan Scott2023-11-271-0/+1
|\
| * Linux + PCP: Add private memory size columnBowDown0972023-11-241-0/+1
| |
* | PCP platform implementation of the compressed cgroup columnNathan Scott2023-11-271-0/+1
|/
* Introduce Machine class for host-specific info (split from ProcessList)Nathan Scott2023-05-081-2/+2
| | | | | | | | | | | First stage in sanitizing the process list structure so that htop can support other types of lists too (cgroups, filesystems, ...), in the not-too-distant future. This introduces struct Machine for system-wide information while keeping process-list information in ProcessList (now much less). Next step is to propogate this separation into each platform, to match these core changes.
* Update license headers to explicitly say GPLv2+Daniel Lange2021-09-221-1/+1
|
* PCP: PCPMetric.[ch] MdouleSohaib2021-08-161-2/+0
| | | | | Split the PCP Metric API (functions `Metric_*`) into their own module. as @BenBE suggested.
* Merge branch 'dynamic-columns' of https://github.com/smalinux/htop into ↵Nathan Scott2021-08-131-2/+6
|\ | | | | | | smalinux-dynamic-columns
| * PCP: support for 'dynamic columns' added at runtimeSohaib Mohamed2021-08-131-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements support for arbitrary Performance Co-Pilot metrics with per-process instance domains to form new htop columns. The column-to-metric mappings are setup using configuration files which will be documented via man pages as part of a follow-up commit. We provide an initial set of column configurations so as to provide new capabilities to pcp-htop: including configs for containers, open fd counts, scheduler run queue time, tcp/udp bytes/calls sent/recv, delay acct, virtual machine guests, detailed virtual memory, swap. Note there is a change to the configuration file path resolution algorithm introduced for 'dynamic meters'. First, look in any custom PCP_HTOP_DIR location. Then iterate, in priority order, users home directory, then local sysadmins files in /etc/pcp/htop, then readonly configuration files below /usr/share/pcp/htop. This final location becomes the preferred place for our own shipped meter and column files. The Settings file (htoprc) writing code is updated to not using the numeric identifier for dynamic columns. The same strategy used for dynamic meters is used here where we write Dynamic(name) so the name can be setup once more at start. Regular (static) columns writing to htoprc - i.e. numerically indexed - is unchanged.
* | Add columns for process autogroup identifier and nice valueNathan Scott2021-08-091-5/+8
|/ | | | | | | | | | | | Adds AGRP (autogroup) and ANI (autogroup nice) columns that report the information from /proc/PID/autogroup, as well as handlers for '{' and '}' to change the autogroup nice value. This is guarded by /proc/sys/kernel/sched_autogroup_enabled such that sampling and/or changing values wont be attempted unless the kernel feature is enabled. Fixes: #720
* Update the PCP platform to use common Process fields and codeNathan Scott2021-06-091-43/+0
| | | | | | | Remove code now that we have common platform-independent command line wrangling (thanks BenBE!). Add PCP platform support for a handful of other recently arriving odds and ends - ELAPSED time, CWD, and so on.
* Rework TTY column for the PCP platformNathan Scott2021-06-091-1/+0
|
* Various code tidyups based on review commentary from BenBENathan Scott2021-06-091-1/+2
|
* Add a platform for Performance Co-Pilot (PCP) metricsNathan Scott2021-06-091-0/+140
This introduces an initial platform for extracting metrics using the PCP performance metrics API - PMAPI(3). It can be used via the --enable-pcp=yes configure option. So far I've added support for live localhost metrics only, and only using pre-defined metrics already found in htop. If available, all sampling is performed by pmcd(1) - else, we fallback to htop doing the metric sampling itself (all below the PMAPI). When pmcd is used, it may be configured to run children with elevated privileges, so htop does not need to be setuid (authentication with pmcd is available). Additionally, the PMAPI allows us to support archives (for historical analysis and for automated regression tests in htop). We'll need platform-specific command line argument additions, which isn't yet feasible in htop (not difficult to add though). The goal of this first version is minimal impact in terms of modifying the htop codebase, to introduce key ideas in PCP (metric namespace, metadata, APIs and so on) and give us something to discuss, experiment with and build on.

© 2014-2024 Faster IT GmbH | imprint | privacy policy