监控分析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,如需转载请自行联系原作者
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
36 23
|
5天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
37 22
|
8天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
49 25
|
3月前
|
存储 监控 固态存储
如何监控和优化 WAL 日志文件的存储空间使用?
如何监控和优化 WAL 日志文件的存储空间使用?
|
3月前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
4月前
|
运维 Kubernetes 监控
Loki+Promtail+Grafana监控K8s日志
综上,Loki+Promtail+Grafana 监控组合对于在 K8s 环境中优化日志管理至关重要,它不仅提供了强大且易于扩展的日志收集与汇总工具,还有可视化这些日志的能力。通过有效地使用这套工具,可以显著地提高对应用的运维监控能力和故障诊断效率。
487 0
|
5月前
|
SQL 数据库 Java
Hibernate 日志记录竟藏着这些秘密?快来一探究竟,解锁调试与监控最佳实践
【8月更文挑战第31天】在软件开发中,日志记录对调试和监控至关重要。使用持久化框架 Hibernate 时,合理配置日志可帮助理解其内部机制并优化性能。首先,需选择合适的日志框架,如 Log4j 或 Logback,并配置日志级别;理解 Hibernate 的多级日志,如 DEBUG 和 ERROR,以适应不同开发阶段需求;利用 Hibernate 统计功能监测数据库交互情况;记录自定义日志以跟踪业务逻辑;定期审查和清理日志避免占用过多磁盘空间。综上,有效日志记录能显著提升 Hibernate 应用的性能和稳定性。
59 0
|
5月前
|
开发者 前端开发 编解码
Vaadin解锁移动适配新境界:一招制胜,让你的应用征服所有屏幕!
【8月更文挑战第31天】在移动互联网时代,跨平台应用开发备受青睐。作为一款基于Java的Web应用框架,Vaadin凭借其组件化设计和强大的服务器端渲染能力,助力开发者轻松构建多设备适应的Web应用。本文探讨Vaadin与移动设备的适配策略,包括响应式布局、CSS媒体查询、TouchKit插件及服务器端优化,帮助开发者打造美观且实用的移动端体验。通过这些工具和策略的应用,可有效应对屏幕尺寸、分辨率及操作系统的多样性挑战,满足广大移动用户的使用需求。
80 0
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
688 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
1月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。