psymon
man page¶
psymon
automatically instruments the execution of any arbitrary command with psyiage diagnostic and performance capabilities
without any source code changes or recompilation. For example, CPU profile, system metric, crash and log data can be automatically
collected simply by running your executable with the psymon
script.
On-demand diagnostic and performance instrumentation of any arbitrary command
Usage:
psymon [instrumentation-options] [output-options] "<command+arguments>"
Example:
psymon --logs --metrics --profile cpu -o json "/path/to/your/app --arg1 --arg2 --arg3"
psymon automatically instruments the execution of any arbitrary command (and arguments)
with psyiage diagnostic and performance capabilities without any source code changes
or recompilation.
The collected instrumentation data can be exported or streamed to a number of supported
output plugins (eg. json, csv, text, mqtt, http)
Options: Informational
-V, --version Print version information.
-h, --help Print help.
Options: instrumentation
--logs [options] Enable collection and monitoring of known log files (system) [Default: system]
--profile [options] Enable application profiling. (cpu|mem) [Default: cpu]
--profile-period <ms> Sampling period (in ms) when collecting profiling data. [Default: 10]
--crash Enable collection of post-mortem data on program crash
--metrics [options] Enable collection of metric data from known sources. (system) [Default: system]
--metrics-period <ms> Sampling period (in ms) when collecting metrics. (1-32768) [Default: 500]
--alerts [options] Enable pre-defined alerts/event triggers that raise an event when a condition is satisfied
--bench [options] Enable execution of benchmark tests on startup
--diag [options] Enable execution of diagnostic tests on startup
If no instrumentation options are selected, --metrics --logs --crash are enabled by default
Options: output
-o, --output [formats] Output format of the collected data. (json|csv|text|http|mqtt) [Default: json]
-d, --dir <path> Directory path for output data. Only valid for json, csv and text output formats (Default: current directory)
-p. --prefix <string> String to prepend the output file name. Only valid for json, csv and text output formats (Default: command name)
-h, --host <address> Host address to stream output data. Only valid for http|mqtt output format.
-k, --key <key> Key to use with --host for streaming output data. Only valid for http|mqtt output format
-q, --quiet Disable console messages when monitoring
NOTES:
* psymon uses preloaded shared libraries to initiate profiling. For this
reason, it cannot be used to profile setuid programs.
* psymon may not be able to profile programs that themselves use preloading.