天天看點

利用Spark解析Tomcat日志,并将統計結果存入Mysql資料庫

利用Spark解析Tomcat日志,并将統計結果存入Mysql資料庫

本文試圖實作的需求場景為:以學習spark知識點為目的,編寫scala利用spark解析800m的tomcat日志檔案,列印一段時間内error級别記錄的前10行,統計每分鐘的日志記錄數,并将統計結果存入mysql資料庫中。之前曾用java寫過一次同樣的處理邏輯,但在學習了scala之後,真的感覺在計算方面scala要比java友善的多。沒有學習scala語言的同學速度速度了啊……

将日志檔案寫入hdfs中,相對路徑path為“nova.log”

注意java堆棧異常日志的處理

将解析後的異常日志全部存到sparksql中或hive資料倉庫中

通過編寫sql查詢一段時間内error級别記錄的前10行

統計每分鐘的日志記錄數,并将統計結果存入mysql資料庫中,便于上層應用直接使用計算結果

解析前:

利用Spark解析Tomcat日志,并将統計結果存入Mysql資料庫

解析後:

利用Spark解析Tomcat日志,并将統計結果存入Mysql資料庫

loggerapp.scala:

logger.scala:

loggermysqlapp.scala: