Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


A fast mysql binlog parser

Subscribe to updates I use ybinlogp

Statistics on ybinlogp

Number of watchers on Github 83
Number of open issues 6
Average time to close an issue 1 day
Main language C
Average time to merge a PR about 1 month
Open pull requests 2+
Closed pull requests 1+
Last commit over 4 years ago
Repo Created about 9 years ago
Repo Last Updated over 1 year ago
Size 467 KB
Organization / Authoryelp
Page Updated
Do you use ybinlogp? Leave a review!
View open issues (6)
View ybinlogp activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating ybinlogp for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

ybinlogp - a fast mysql binlog parsing utility

ybinlogp is a mysql utility for analyzing mysql binlogs. It provides a library, libybinlogp, which has a really terrible build system, a little tool documented below which uses this library, and a python-ctypes wrapper that exposes some critical functionality (namely, opening a binlog, reading from it, and handling query, xid, and rotate events).


ybinlogp [options] binlog-file


  • -o OFFSET Find events after a given offset
  • -t TIME Find events after a given unix timestamp
  • -a NUMBER Print N events after the given one (accepts 'all')
  • -D DBNAME Filter out query statements not on database DBNAME
  • -q Be quieter (may be specified multiple times)
  • -h Show help


If you have a replicated MySQL instance, you're probably used to ocassionally seeing it freak out. ybinlogp lets you just put in a time or offset and see exactly what was going on around then. Compare this to the default mysql binlog parser, which uses the linked list feature in the binlogs and so is uselessly slow when dealing with anything past the first few events (and also doesn't have a time search feature; how often do you actually know what the offset of an event is?)


ybinlogp was developed by some engineers at Yelp for use with their MySQL installation. The initial development was done by James Brown (; Evan Klitzke ( worked on some bugfixes and a partially-complete Python API, and Eskil Olsen ( has a branch that does some crazy stuff with Boost.


It's Github... Fork away!


This work is available under the ISC (OpenBSD) license. The full contents are available as license.txt

ybinlogp open issues Ask a question     (View All Issues)
  • over 4 years make error
  • about 5 years Packaging for .so does not work
  • about 6 years QueryEvent{Struct,}.query_time has a nonstandard name
  • about 6 years Prevent seek() into format description event (FDE)
ybinlogp open pull requests (View All Pulls)
  • Support virtualenv
  • Autotoolize again
ybinlogp list of languages used
Other projects in C