mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-07 04:49:48 +00:00

* Add JSON output support to pt-kill Introduces new flags `--log-json` and `--log-json-fields` to control JSON output: - `--log-json`: when combined with `--print`, outputs kill information in JSON format instead of plain text, with the same fields as the `kill_log` table when using `--log-dsn` - `--log-json-fields`: when combined with `--log-json`, adds user-defined key-value pairs to the JSON document that is output (such as cluster name or hostname); parameter value is in the format of `key1:value1,key2:value2` * Convert --log-json to write to file, remove dependency on --print, update docs The `--log-json` parameter now takes a file path value, and writes JSON output to this file. The `--print` parameter is now independent and does not need to be specified to use `--log-json`. Docs updated for clarity. * Add chksm to JSON output, make JSON key names consistent - Adds chksm outout to JSON output to make it easier to group similar queries - Moves chksm code so that it is always executed, is accessible within the `log-json` scope, and isn't duplicated - Change JSON key names to consistently use uppercase letters at start of words, change `ts` to `Timestamp` * Update docs to match changed field names * Rename JSON parameter, output to STDOUT, fix tests, add test for --json, bug fix for --query-id - `--json` parameter must now be used in conjunction with `--print`; JSON output replaces normal `--print` output when `--json` is also specified - `--json` output is now sent to STDOUT instead of a specified file, as its new behaviour is to change the output format of `--print` instead of logging to a file - Renamed `--log-json` and `--log-json-fields` parameters to `--json` and `--json-fields` to better represent their new behaviour - Refactored checksum code to prevent test failures when `$query->{'Info'}` is empty - Added test for `--json` and `--json-fields` parameters - Fixed bug where specifying `--query-id` would cause errors when `$query->{'Info'}` is empty * Fix typo: Unkown -> Unknown