我想在python中使用regex解析mysql日志。但是结果没有出来,也没有错误。我想得到时间戳,只选择查询。以下是日志示例:
190410 7:55:29 32168488 Connect cis_production@172.21.7.4 on cis_production
32168488 Query SET NAMES 'utf8'
32168488 Query SHOW FULL COLUMNS FROM `sysx_user`
32168488 Query SELECT *
FROM information_schema.referential_constraints AS rc
JOIN information_schema.key_column_usage AS kcu ON
kcu.constraint_schema = rc.constraint_schema AND
kcu.constraint_name = rc.constraint_name
WHERE rc.constraint_schema = database() AND kcu.table_schema = database()
AND rc.table_name = 'sysx_user' AND kcu.table_name = 'sysx_user'
32168488 Query SELECT * FROM `dimx_dim` WHERE user_id = 3060
这是我已经尝试过的正则表达式:
regex = re.compile(r'(\d{6}) (\d{2}:\d{2}:\d{2} [0-9]{8}) (.*?)(?=\d{8} \d{2}:\d{2}:\d{2} [0-9]{8} |$)', re.MULTILINE|re.DOTALL)
我只希望得到SELECT日志。不是整个日志。这是预期的结果:
[("190410 7:55:29 32168488 Connect cis_production@172.21.7.4 on",
"SELECT *FROM information_schema.referential_constraints AS rc JOIN
information_schema.key_column_usage AS kcu ON kcu.constraint_schema =
rc.constraint_schema AND kcu.constraint_name = rc.constraint_name WHERE
rc.constraint_schema = database() AND kcu.table_schema = database() AND
rc.table_name = 'sysx_user' AND kcu.table_name = 'sysx_user'",
" SELECT * FROM `dimx_dim` WHERE user_id = 3060")]
请帮帮我。非常感谢。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐