Hogyan lehet ötvözni a tail parancsot egy mysql táblával?
Eddig tail -f paranccsal olvastam az épp aktuális történéseket a logokból.
Kérés volt, hogy a logok ezután sql-ben tárolódjanak. Onnan hogyan tudok így olvasni?
például ennek a lekérdezésnek szeretném látni a frissítéseit online:
echo "select * from access_log_friss order by timestamp desc" | mysql -u squid -p squid
köszi előre is
- 1058 megtekintés
Hozzászólások
watch mysql -u... -p..... -B -e "...."
t
- A hozzászóláshoz be kell jelentkezni
Köszönöm. Hát ennek a kimenete eléggé követhetetlen számomra :(
A tail sokkal gördülékenyebb.
Szerk: ja mert hogy ez felfelé gördül...
- A hozzászóláshoz be kell jelentkezni
A megoldás:
watch -n 0,1 'mysql -u user -pjelszo tabla -B -e "select * from (select timestamp,username,cache_status,req_uri from access_log_friss order by timestamp desc limit 0, 40) as s2 order by timestamp asc"'
- A hozzászóláshoz be kell jelentkezni
watch -n 0,1 'mysql -u squid -psquid squid -B -e "select from_unixtime(timestamp),username,cache_status,req_uri from (select * from access_log_friss order by timestamp desc limit 0, 40) as s2 order by timestamp asc "'
aki még ebbe beletesz egy működő WHERE cache_status = "TCP_DENIED" részt is, az kap egy virtuális pacsit.
Kifogytam a " és ' jelekből :(
- A hozzászóláshoz be kell jelentkezni
\", esetleg \\\"
t
- A hozzászóláshoz be kell jelentkezni
Ott a pacsi
watch -n 0,1 'mysql -u user -ppassword squid -B -e "select from_unixtime(timestamp),username,cache_status,req_uri from (select * from access_log_friss where cache_status = \"TCP_DENIED\" order by timestamp desc limit 0, 40) as s2 order by timestamp asc "'
- A hozzászóláshoz be kell jelentkezni