Percona Logjam User's Manual
Percona Logjam is a tool to help replay production traffic against a database in multiple threads. It is unreleased; when the code is ready to release, there will be more information on this user's manual. Until then, this will serve as a specification of what remains to get the code release-ready.
Release Tasks
Tasks we must finish before the tool is ready to release:
- Rename the tool to percona-logjam.
- Permit the tool to read from FILEs on the command-line as well as from STDIN.
- Get a code review.
- Create statically-linked 32-bit and 64-bit builds of the tool so it can be used without installing dependencies. (Oleg's task)
- Change the command-line options as follows:
- change usage information to “Usage: percona-logjam [OPTIONS] [FILE…]”
- update the help text for all of the options
- make the default port = 3306
- make the 'bool' options not require an argument
- change verbose-error to verbose-errors
- change passwd to password
- change disable_read to skip-read-queries
- change disable_write to skip-write-queries
- change db to database
- change block-count to parser-block-count
- change block-size to parser-block-size
- Change disable_foreigh_keys_check_in_write_thread option to –skip-foreign-key-checks
- Change the column names in the output (not yet defined)
- Write full documentation here
- Write an announcement blog post
Development Status
Percona Logjam is currently in unreleased Beta.
Synopsis and Sample Output
To be completed later.
Installing Percona Logjam
For portability and ease of use, we plan to build a single statically linked binary, which can be downloaded and used as-is.
Running Percona Logjam
To be completed later.
Command-Line Options
The following is a complete list of Percona Logjam's command-line options. You can always find a full list of the available command-line options and brief usage information by giving the --help option.
| Option name | Type | Default Value | Meaning |
|---|---|---|---|
| --help | bool | Shows program information and usage. | |
| --database | string | Database to use. | |
| --dry-run | bool | Do not execute any queries (for testing). | |
| --host | string | Connect to host. | |
| --max-line-length | int | 1048576 | The maximum number of bytes expected in a line. |
| --parser-block-count | int | 1024 | The number of blocks in the parser's queue. |
| --parser-block-size | int | 4096 | The size of the blocks in the parser's queue. |
| --password | string | Password to use when connecting to server. | |
| --port | int | Port number to use for connection. | |
| --query-queue-buffer-size | int | 3306 | Size of query queue buffer |
| --read-thread-count | int | 1 | The number of threads to execute read-only queries. |
| --skip-foreign-key-checks | bool | Make the writer thread set FOREIGN_KEY_CHECKS=0. | |
| --skip-read-queries | bool | Do not execute read-only queries (SELECT, …). | |
| --skip-write-queries | bool | Do not execute write queries (DELETE, UPDATE, …). | |
| --socket | string | Socket file to use for connection. | |
| --user | string | User for login if not current user. | |
| --verbose-errors | bool | Print parsing errors, including position in the log. |
Specifying Log Files
Percona Logjam reads from each FILE that you specify on the command line after
program options. If you do not specify any FILE, or if FILE is -, Percona
Logjam reads from standard input.
Source Code
The Percona Logjam source code is not yet available.
Getting Help and Support
For general discussion, please use the Percona-Discussion Google Group. You can use the #percona IRC channel on FreeNode to chat with community members.
For commercial support, maintenance packages, or to sponsor features, please contact Percona Sales.
Authors
Percona Logjam was written by Oleg Tsarev, based on ideas and specifications from Vadim Tkachenko and Baron Schwartz.


