Shell 解決Redis Slow Log去重問題
老東家監測Redis的慢查詢日誌,採用Crontab 每隔一段時間對慢查詢日誌取樣,然後追加寫入一個文字檔案。
所以文字檔案中有很多重複的慢查詢日誌
如何對整段重複的慢查詢日誌去重呢?
採用Shell 命令的方式最簡單和直接。
awk '/^1\)/{print s;s=""};{ s=(s" "$0)}; END{print s } ' b.txt | sort | uniq | sed 's/ /\n /g' | awk '/^ 1\) \(integer\)/{rc =rc+1;rowdata=rc") \t" $1" "$2" "$3"\n\t"$4" "$5" "$6" "$7"\n\t"$8" "$9" "$10;print rowdata};/^ /{print "\t"$0} END{print "不重複日誌總數:" rc}'
核心就是把整段的redis日誌先合併為一行,去重之後,在還原格式。
下面是用於測試的附件
附王工對這個問題的需求描述和說明。
https://blog.csdn.net/wzy0623/article/details/83652539?tdsourcetag=s_pcqq_aiomsg
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-2218512/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 執行 shell 指令碼 \r 問題解決指令碼
- redis安裝及問題解決Redis
- MySQL的general_log和slow_logMySql
- ELK收集mysql_slow.logMySql
- MySQL:慢SQL(slow_log)MySql
- Redis去重方法Redis
- Spring Boot + Redis 解決陪玩平臺原始碼重複提交問題Spring BootRedis原始碼
- redis中大key問題的解決思路Redis
- 去水印小程式downloadFile域名問題解決方式
- 自定義RedisTemplate,解決Redis亂碼問題Redis
- 簡單介紹redis分散式鎖解決表單重複提交的問題Redis分散式
- 解決winform窗體重複建立問題ORM
- 重寫console.log咋辦嘞 (解決)
- shell 檔案合併 去重 分割
- 【力扣】排列問題(回溯法)(去重)力扣
- redis快取相關問題及解決方案Redis快取
- 快速解決mongodb出現id重複問題MongoDB
- mysql之 slow log 慢查詢日誌MySql
- MySQL Slow Query log(慢查詢日誌)MySql
- 以Top-Down思維去解決問題——遞迴遞迴
- redis實現分散式鎖---實操---問題解決Redis分散式
- Redis 大key(bigkey)問題的排查與解決方案Redis
- 解決Linq.ToDictionary()時的鍵重複問題
- 一行程式碼解決求重問題行程
- 解決alertmanager重複傳送訊息的問題
- 解決生產日誌重複列印的問題
- 定位apache慢請求神器—mod_log_slowApache
- 解決linux下redis資料庫overcommit_memory問題LinuxRedis資料庫MIT
- PHP+Redis解決實際問題一:訂單限流PHPRedis
- Java IO 建立檔案解決檔名重複問題Java
- 解決spring security自定義filter重複執行問題SpringFilter
- 解決 HttpServletRequest 的輸入流不能重複讀的問題HTTPServlet
- PHP+Redis解決高併發下商品超賣問題PHPRedis
- 在Laravel中使用Redis鎖解決快取擊穿問題LaravelRedis快取
- PHP+Redis解決實際問題二:快取擊穿PHPRedis快取
- Method breakpoints may dramatically slow down debugging情況解決
- 解決RabbitMQ訊息丟失與重複消費問題MQ
- 伺服器故障重啟可以解決大部分問題伺服器