利用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数据库中,便于上层应用直接使用计算结果 解析前后对比 解析前: 解析后: 解析代码 LoggerApp.scala: import java.text.SimpleDateFormat import java.util.Date import org.apache.spark.SparkConf import org.apache...