监控分析tomcat日志

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

apache下面四个tomcat,监控tomcat的catalina.log是否出现ERROR等。

#!/bin/sh

#set -x
#SYS_TIME=date +"%Y-%m-%d %H:%M"
TOMCAT1_LOG="/home/tomcat01/logs/catalina.out"
TOMCAT2_LOG="/home/tomcat02/logs/catalina.out"
TOMCAT3_LOG="/home/tomcat03/logs/catalina.out"
TOMCAT4_LOG="/home/tomcat04/logs/catalina.out"

RUNNING_LOG="/home/tomcatlog/running.log"
ERROR_LOG="/home/tomcatlog/54error.log"
TEMPLOG="/home/tomcatlog/templog.log"
KEYWORLD="/home/tomcatlog/keyworld.conf"

#########Program start############
for LOGFILE in "$TOMCAT1_LOG" "$TOMCAT2_LOG" "$TOMCAT3_LOG" "$TOMCAT4_LOG"
        do
                LOG_STATUS_TIME=`stat -c %y $LOGFILE |awk -F '.' '{print $1}'`
                END_TIME=`date -d "$LOG_STATUS_TIME" +"%Y-%m-%d %H:%M"`

                for ((i=300;i>=0;i=i-60))
                        do
                                START_TIME=`date -d "$LOG_STATUS_TIME" +%s|awk -v second="$i" '{print strftime("%Y-%m-%d %H:%M",$0-second)}'`
                                grep -a "${START_TIME}" $LOGFILE > /dev/null
                                if [ $? == 0 ]
                                then
                                        break
                                fi
                        done
#               echo $LOG_STATUS_TIME
#               echo $LOGFILE
#               echo $START_TIME
#               echo $END_TIME
                START_LINE=`sed -n "/$START_TIME/=" $LOGFILE | head -n1`
                END_LINE=`sed -n "/$END_TIME/=" $LOGFILE | tail -n1`
                echo $START_LINE
                echo $END_LINE

                sed -n "${START_LINE},${END_LINE}p" $LOGFILE > $TEMPLOG
                while read keyworld
                do
                        world=$(echo ${keyworld} | awk '{print $2}')
                        while read templog
                        do
                                worldinfo=$(echo ${templog}| grep ${world} | grep -v grep)
                                if [  -z "${worldinfo}" ]
                                then
                        #               echo "`date` $LOGFILE OK" > /dev/null
                                else
                                        LogContent1=$(echo ${templog})
                                        echo "$LogContent1 ${world} find in $LOGFILE" >> $ERROR_LOG
                                fi
                        done < $TEMPLOG
                done < $KEYWORLD
        done

ftp -i -n  192.168.XX。XXX <<!
user XXX  XXX
lcd /home/tomcatlog/
cd abc
binary
put 54error.log
bye
!

=====================================================================

keyworld.conf 内容

vi keyworld.conf
1 ERROR





本文转自 vfast_chenxy 51CTO博客,原文链接:http://blog.51cto.com/chenxy/801628,如需转载请自行联系原作者
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
3月前
|
Prometheus 监控 Cloud Native
基于docker搭建监控系统&日志收集
Prometheus 是一款由 SoundCloud 开发的开源监控报警系统及时序数据库(TSDB),支持多维数据模型和灵活查询语言,适用于大规模集群监控。它通过 HTTP 拉取数据,支持服务发现、多种图表展示(如 Grafana),并可结合 Loki 实现日志聚合。本文介绍其架构、部署及与 Docker 集成的监控方案。
359 122
基于docker搭建监控系统&日志收集
|
3月前
|
Prometheus 监控 Java
日志收集和Spring 微服务监控的最佳实践
在微服务架构中,日志记录与监控对系统稳定性、问题排查和性能优化至关重要。本文介绍了在 Spring 微服务中实现高效日志记录与监控的最佳实践,涵盖日志级别选择、结构化日志、集中记录、服务ID跟踪、上下文信息添加、日志轮转,以及使用 Spring Boot Actuator、Micrometer、Prometheus、Grafana、ELK 堆栈等工具进行监控与可视化。通过这些方法,可提升系统的可观测性与运维效率。
323 1
日志收集和Spring 微服务监控的最佳实践
|
3月前
|
存储 缓存 监控
用 C++ 红黑树给公司电脑监控软件的日志快速排序的方法
本文介绍基于C++红黑树算法实现公司监控电脑软件的日志高效管理,利用其自平衡特性提升日志排序、检索与动态更新效率,并结合实际场景提出优化方向,增强系统性能与稳定性。
122 4
|
3月前
|
监控 安全 搜索推荐
使用EventLog Analyzer进行日志取证分析
EventLog Analyzer助力企业通过集中采集、归档与分析系统日志及syslog,快速构建“数字犯罪现场”,精准追溯安全事件根源。其强大搜索功能可秒级定位入侵时间、人员与路径,生成合规与取证报表,确保日志安全防篡改,大幅提升调查效率,为执法提供有力证据支持。
146 0
|
3月前
|
缓存 Java 应用服务中间件
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
本文详解Spring Boot十大核心配置优化技巧,涵盖Tomcat连接池、数据库连接池、Jackson时区、日志管理、缓存策略、异步线程池等关键配置,结合代码示例与通俗解释,助你轻松掌握高并发场景下的性能调优方法,适用于实际项目落地。
547 5
|
8月前
|
监控 测试技术 Go
告别传统Log追踪!GOAT如何用HTTP接口重塑代码监控
本文介绍了GOAT(Golang Application Tracing)工具的使用方法,通过一个Echo问答服务实例,详细展示了代码埋点与追踪技术的应用。内容涵盖初始化配置、自动埋点、手动调整埋点、数据监控及清理埋点等核心功能。GOAT适用于灰度发布、功能验证、性能分析、Bug排查和代码重构等场景,助力Go项目质量保障与平稳发布。工具以轻量高效的特点,为开发团队提供数据支持,优化决策流程。
513 89
|
5月前
|
监控 安全 NoSQL
【DevOps】Logstash详解:高效日志管理与分析工具
Logstash是ELK Stack核心组件之一,具备强大的日志收集、处理与转发能力。它支持多种数据来源,提供灵活的过滤、转换机制,并可通过插件扩展功能,广泛应用于系统日志分析、性能优化及安全合规等领域,是现代日志管理的关键工具。
749 0
|
7月前
|
Java 应用服务中间件 Linux
Tomcat运行日志字符错乱/项目启动时控制台日志乱码问题
总结: 通过以上几种方法,概括如下:指定编码格式、设置JVM的文件编码、修改控制台输出编码、修正JSP页面编码和设置过滤器。遵循这些步骤,你可以依次排查和解决Tomcat运行日志字符错乱及项目启动时控制台日志乱码问题。希望这些建议能对你的问题提供有效的解决方案。
1270 16
|
7月前
|
自然语言处理 监控 安全
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
阿里云可观测官方发布了Observable MCP Server,提供了一系列访问阿里云可观测各产品的工具能力,包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS等,支持用户通过自然语言形式查询
849 0
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
|
6月前
|
人工智能 运维 监控
Aipy实战:分析apache2日志中的网站攻击痕迹
Apache2日志系统灵活且信息全面,但安全分析、实时分析和合规性审计存在较高技术门槛。为降低难度,可借助AI工具如aipy高效分析日志,快速发现攻击痕迹并提供反制措施。通过结合AI与学习技术知识,新手运维人员能更轻松掌握复杂日志分析任务,提升工作效率与技能水平。