Bonjour à tous!
J'ai commencé à ecrire un script shell qui doit extraire des informations dans un fichier texte qui a cette forme :
SELECT `pv_datetime` FROM `pligg_pageviews` where `pv_type` = 'story' and `pv_page_id` = 2808 and `pv_user_id` = 0 order by `pv_datetime` DESC Limit 1;
# Time: 090223 2:42:54
# User@Host: root[root] @ localhost []
# Query_time: 4 Lock_time: 0 Rows_sent: 1 Rows_examined: 1
use busi_info11;
SELECT /*!40001 SQL_NO_CACHE */ * FROM `g2_SequenceId`;
# Time: 090223 7:37:35
# User@Host: webdu_webducom[webdu_webducom] @ localhost []
# Query_time: 4 Lock_time: 0 Rows_sent: 0 Rows_examined: 70
mon script est comme ça pour le moment :
awk 'BEGIN {} ($1=="#" && $2=="Query_time:" && $3 >=20) || ($1=="#" && $2==" User@Host:" && $3 ==” webdu_webducom[webdu_webducom]” ) {print $0}' mysql-slow.log
Pour le moment il m'affiche tout les query_time qui depasse 20 et les user@host= webdu.
Le probleme c'est qu'ils sont indepndant entre eux , moi je veux trouver la requete dont le query_time>20 et dont l'user est webducom .
mon idée :
chercher le user@host=web
sauter une ligne
regarder si query_time>20
si oui => on prend la requete(mais comment??)
sinon => on passe.