mywatch: View MySQL processes

[ databases, mit, program, web ] [ Propose Tags ]

View queries on multiple MySQL servers. Designed to work behind Sproxy.

[Skip to Readme]
Versions [faq] 0.1.0, 0.1.1, 0.1.2, 0.2.0, 0.2.1, 0.3.0
Change log
Dependencies aeson (>=0.8), base (>=4.8 && <50), bytestring (>=0.10), ConfigFile (>=1.1), data-default-class, docopt (>=0.7), fast-logger, http-types (>=0.9), interpolatedstring-perl6 (>=1.0), MissingH, mtl (>=2.2), mysql (>=0.1), mysql-simple (>=0.2), network (>=2.6), resource-pool (>=0.2), scotty (>=0.10), text (>=1.2), unix (>=2.7), unordered-containers (>=0.2), wai (>=3.2), wai-extra (>=3.0), wai-middleware-static (>=0.8), warp (>=3.2) [details]
License MIT
Copyright 2016, Zalora South East Asia Pte. Ltd
Author Igor Pashev <>
Maintainer Igor Pashev <>
Category Databases, Web
Source repo head: git clone
Uploaded by ip1981 at Tue Jun 14 18:49:30 UTC 2016
Distributions NixOS:0.3.0
Executables mywatch
Downloads 1865 total (106 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
Last success reported on 2016-11-23 [all 3 reports]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for mywatch-0.1.0

[back to package description]

My Watch

HTTP server for viewing MySQL queries on multiple servers. Designed to work behind Sproxy.


MyWatch is written in Haskell with GHC. All required Haskell libraries are listed in mywatch.cabal. Use cabal-install to fetch and build all pre-requisites automatically.


$ git clone
$ cd mywatch
$ cabal install


Type mywatch --help to see usage summary:

  mywatch [options] MYCNF


  -d, --datadir=DIR        Data directory including static files [default: {cabal data dir}]

  -s, --socket=SOCK        Listen on this UNIX-socket [default: /tmp/mywatch.sock]
  -p, --port=PORT          Instead of UNIX-socket, listen on this TCP port (localhost)

  -h, --help               Show this message


The MYCNF argument denotes a MySQL client config file. Each section in this file describes a MySQL server where you can view processes. As usually, the "client" section applies internally to all other sections, but is ignored by MyWatch. Remember to make this file secret if it includes passwords, or use the !include directive. However, MyWatch does not parse included files for more sections.

host =
user = user1

host =
user = user2

!include /run/keys/my.secret.cnf

Database Privileges

MyWatch needs the PROCESS privilege.


MyWatch Access Denied