Skip to content

hydeperion/myslog

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

myslog

Build Status Code Climate Coverage Status

MySQL slow query log parser

Install

gem install myslog

Usage

myslog = MySlog.new

text = <<-EOF
# Time: 111003 14:17:38
# User@Host: root[root] @ localhost []
# Query_time: 0.000270  Lock_time: 0.000097  Rows_sent: 1  Rows_examined: 0
SET timestamp=1317619058;
SELECT * FROM life;
# User@Host: php[php] @  [192.168.10.235]
# Thread_id: 313  Schema: ename_bbs_dx15  Last_errno: 0  Killed: 0
# Query_time: 0.031467  Lock_time: 0.000197  Rows_sent: 0  Rows_examined: 0  Rows_affected: 0  Rows_read: 2
# Bytes_sent: 1243  Tmp_tables: 0  Tmp_disk_tables: 0  Tmp_table_sizes: 0
SET timestamp=1359008764;
SELECT * FROM pre_common_session WHERE sid='vWWzwC' AND CONCAT_WS('.', ip1,ip2,ip3,ip4)='192.168.200.57';
EOF

records = myslog.parse(text)

records is Array of Hash

records[0]
#=> {:date => 2011-10-03 14:17:38 +0900,
#=>  :user => "root[root]",
#=>  :host => "localhost",
#=>  :host_ip => "",
#=>  :query_time => 0.000270,
#=>  :lock_time => 9.7e-05,
#=>  :rows_sent => 1,
#=>  :rows_examined => 0,
#=>  :sql => "SET timestamp=1317619058; SELECT * FROM life;"}
records[1]
#=> {:user => "php[php]",
#=>  :host => "",
#=>  :host_ip => "192.168.10.235",
#=>  :query_time => 0.031467,
#=>  :lock_time => 0.000197,
#=>  :rows_sent => 0,
#=>  :rows_examined => 0,
#=>  :rows_affected => 0,
#=>  :rows_read => 2,
#=>  :thread_id => 313,
#=>  :schema => "ename_bbs_dx15",
#=>  :last_errno => 0,
#=>  :killed => 0,
#=>  :bytes_sent => 1243,
#=>  :tmp_tables => 0,
#=>  :tmp_disk_tables => 0,
#=>  :tmp_table_sizes => 0,
#=>  :sql => "SET timestamp=1359008764; SELECT * FROM pre_common_session WHERE sid='vWWzwC' AND CONCAT_WS('.', ip1,ip2,ip3,ip4)='192.168.200.57';"}

About

MySQL slow query log parser

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%