WebLogic教程FG018-WebLogic日志管理与分析实战
内容简介
本教程基于Oracle WebLogic Server 15c(15.1.1.0.0)官方文档,详细介绍WebLogic日志管理与分析的方法和实战技巧,结合生产环境经验,帮助读者掌握WebLogic日志管理的最佳实践和分析技能。
风哥教程参考WebLogic官方文档日志管理指南、日志分析文档等相关内容,内容涵盖日志配置、日志收集、日志分析等。
本文档适用于WebLogic管理员和系统工程师,通过详细的步骤说明和实战操作,确保WebLogic日志的有效管理和分析。
目录大纲
Part01-基础概念与理论知识
1.1 WebLogic日志概述
WebLogic日志是WebLogic Server运行过程中生成的记录,包含了服务器的运行状态、错误信息、警告信息等。WebLogic日志的主要作用:
- 故障排除:通过日志了解系统运行状态,排查故障
- 性能监控:通过日志分析系统性能
- 安全审计:通过日志记录安全相关的事件
- 合规性:满足法规和审计要求
学习交流加群风哥微信: itpux-com。
1.2 日志类型
WebLogic Server的主要日志类型包括:
- 服务器日志:记录服务器的运行状态和错误信息
- 域日志:记录域级别的事件和错误信息
- 访问日志:记录HTTP请求的访问信息
- 诊断日志:记录诊断相关的信息
- 安全日志:记录安全相关的事件
- 应用日志:记录应用程序的日志信息
1.3 日志级别
WebLogic Server的日志级别包括:
- TRACE:最详细的日志级别,用于调试
- DEBUG:调试信息,用于开发和测试
- INFO:一般信息,记录系统运行状态
- WARNING:警告信息,可能会导致问题的情况
- ERROR:错误信息,系统遇到的问题
- NOTICE:重要信息,需要关注的事件
- CRITICAL:严重错误,系统可能无法正常运行
- ALERT:紧急信息,需要立即处理
- EMERGENCY:系统崩溃等紧急情况
风哥提示:合理设置日志级别可以平衡日志的详细程度和系统性能。
Part02-生产环境规划与建议
2.1 日志管理策略
日志管理策略的主要内容:
- 日志级别设置:根据环境和需求设置合适的日志级别
- 日志格式配置:配置统一的日志格式,便于分析
- 日志存储位置:选择合适的存储位置,确保有足够的空间
- 日志轮换策略:配置日志轮换,避免日志文件过大
- 日志收集机制:建立日志收集机制,集中管理日志
- 日志分析工具:选择合适的日志分析工具
- 日志安全:确保日志的安全性,防止未授权访问
2.2 日志存储规划
日志存储规划的考虑因素:
- 存储容量:根据日志量和保留时间计算所需的存储容量
- 存储介质:选择合适的存储介质,如本地磁盘、网络存储等
- 备份策略:制定日志备份策略,确保日志的安全
- 访问控制:设置日志文件的访问权限,防止未授权访问
- 性能影响:考虑日志存储对系统性能的影响
2.3 日志保留策略
日志保留策略的考虑因素:
- 法规要求:根据行业法规和审计要求确定保留时间
- 业务需求:根据业务需求确定保留时间
- 存储成本:考虑存储成本,平衡保留时间和成本
- 性能影响:考虑日志保留对系统性能的影响
- 备份策略:结合备份策略确定保留时间
更多视频教程www.fgedu.net.cn
Part03-生产环境项目实施方案
3.1 日志配置
WebLogic日志的配置步骤:
1. 配置服务器日志
# 配置服务器日志
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → 服务器名称 → 配置 → 日志
3. 配置服务器日志参数:
– 日志文件名称:AdminServer.log
– 日志级别:INFO
– 日志文件大小限制:10MB
– 日志文件数限制:10
4. 点击”保存”
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → 服务器名称 → 配置 → 日志
3. 配置服务器日志参数:
– 日志文件名称:AdminServer.log
– 日志级别:INFO
– 日志文件大小限制:10MB
– 日志文件数限制:10
4. 点击”保存”
2. 配置域日志
# 配置域日志
1. 导航到:域结构 → 域名称 → 配置 → 日志
2. 配置域日志参数:
– 日志文件名称:domain.log
– 日志级别:INFO
– 日志文件大小限制:10MB
– 日志文件数限制:10
3. 点击”保存”
1. 导航到:域结构 → 域名称 → 配置 → 日志
2. 配置域日志参数:
– 日志文件名称:domain.log
– 日志级别:INFO
– 日志文件大小限制:10MB
– 日志文件数限制:10
3. 点击”保存”
3. 配置访问日志
# 配置访问日志
1. 导航到:环境 → 服务器 → 服务器名称 → 配置 → 日志 → HTTP
2. 配置访问日志参数:
– 启用访问日志:是
– 日志文件名称:access.log
– 日志格式:扩展
– 日志文件大小限制:10MB
– 日志文件数限制:10
3. 点击”保存”
1. 导航到:环境 → 服务器 → 服务器名称 → 配置 → 日志 → HTTP
2. 配置访问日志参数:
– 启用访问日志:是
– 日志文件名称:access.log
– 日志格式:扩展
– 日志文件大小限制:10MB
– 日志文件数限制:10
3. 点击”保存”
3.2 日志收集
WebLogic日志的收集方法:
1. 使用WLST脚本收集日志
# 使用WLST脚本收集日志
cd /WebLogic/app/weblogic15c/oracle_common/common/bin
./wlst.sh /WebLogic/app/scripts/collect_logs.py
cd /WebLogic/app/weblogic15c/oracle_common/common/bin
./wlst.sh /WebLogic/app/scripts/collect_logs.py
Initializing WebLogic Scripting Tool (WLST) …
Welcome to WebLogic Server Administration Scripting Shell
Connecting to t3://localhost:7001 with userid weblogic …
Collecting logs…
Logs collected successfully:
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log
– /WebLogic/fgdata/domains/fgedudomain/logs/domain.log
Exiting WebLogic Scripting Tool.
Welcome to WebLogic Server Administration Scripting Shell
Connecting to t3://localhost:7001 with userid weblogic …
Collecting logs…
Logs collected successfully:
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log
– /WebLogic/fgdata/domains/fgedudomain/logs/domain.log
Exiting WebLogic Scripting Tool.
2. 使用日志收集工具
# 使用日志收集工具
1. 安装ELK Stack(Elasticsearch, Logstash, Kibana)
2. 配置Logstash收集WebLogic日志
3. 配置Elasticsearch存储日志
4. 配置Kibana可视化日志
1. 安装ELK Stack(Elasticsearch, Logstash, Kibana)
2. 配置Logstash收集WebLogic日志
3. 配置Elasticsearch存储日志
4. 配置Kibana可视化日志
3.3 日志分析
WebLogic日志的分析方法:
1. 使用WebLogic管理控制台分析日志
# 使用WebLogic管理控制台分析日志
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → 服务器名称 → 监控 → 日志
3. 查看服务器日志的内容和统计信息
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → 服务器名称 → 监控 → 日志
3. 查看服务器日志的内容和统计信息
2. 使用命令行工具分析日志
# 使用grep分析日志中的错误信息
grep “ERROR” /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
grep “ERROR” /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
[2024-01-01 10:00:00,000] [AdminServer] [ERROR] [BEA-000000] [weblogic.servlet.internal.WebAppServletContext] [tid: [ACTIVE] ExecuteThread: ‘0’ for queue: ‘weblogic.kernel.Default (self-tuning)’] [userId: weblogic] [ecid: 1234567890ABCDEF] [APP: fgeduApp] [uri: /fgeduApp/error] [state: 500] Servlet execution threw an exception
3. 使用日志分析工具
# 使用ELK Stack分析日志
1. 登录Kibana:http://localhost:5601
2. 创建索引模式,选择WebLogic日志索引
3. 使用Kibana的Discover功能搜索和分析日志
4. 创建可视化图表,展示日志统计信息
1. 登录Kibana:http://localhost:5601
2. 创建索引模式,选择WebLogic日志索引
3. 使用Kibana的Discover功能搜索和分析日志
4. 创建可视化图表,展示日志统计信息
学习交流加群风哥QQ113257174
Part04-生产案例与实战讲解
4.1 日志配置实战
WebLogic日志配置的实战步骤:
1. 准备工作
- 确保WebLogic域已创建
- 确保服务器实例正常运行
- 准备日志存储目录
2. 配置服务器日志
# 配置服务器日志
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → AdminServer → 配置 → 日志
3. 配置服务器日志参数:
– 日志文件名称:AdminServer.log
– 日志级别:INFO
– 日志文件大小限制:50MB
– 日志文件数限制:20
– 日志格式化:详细
4. 点击”保存”
1. 登录管理控制台:http://localhost:7001/console
2. 导航到:环境 → 服务器 → AdminServer → 配置 → 日志
3. 配置服务器日志参数:
– 日志文件名称:AdminServer.log
– 日志级别:INFO
– 日志文件大小限制:50MB
– 日志文件数限制:20
– 日志格式化:详细
4. 点击”保存”
3. 配置域日志
# 配置域日志
1. 导航到:域结构 → fgedudomain → 配置 → 日志
2. 配置域日志参数:
– 日志文件名称:domain.log
– 日志级别:INFO
– 日志文件大小限制:50MB
– 日志文件数限制:20
– 日志格式化:详细
3. 点击”保存”
1. 导航到:域结构 → fgedudomain → 配置 → 日志
2. 配置域日志参数:
– 日志文件名称:domain.log
– 日志级别:INFO
– 日志文件大小限制:50MB
– 日志文件数限制:20
– 日志格式化:详细
3. 点击”保存”
4. 配置访问日志
# 配置访问日志
1. 导航到:环境 → 服务器 → AdminServer → 配置 → 日志 → HTTP
2. 配置访问日志参数:
– 启用访问日志:是
– 日志文件名称:access.log
– 日志格式:扩展
– 日志文件大小限制:50MB
– 日志文件数限制:20
3. 点击”保存”
1. 导航到:环境 → 服务器 → AdminServer → 配置 → 日志 → HTTP
2. 配置访问日志参数:
– 启用访问日志:是
– 日志文件名称:access.log
– 日志格式:扩展
– 日志文件大小限制:50MB
– 日志文件数限制:20
3. 点击”保存”
4.2 日志分析实战
WebLogic日志分析的实战步骤:
1. 收集日志
# 收集日志
cd /WebLogic/app/weblogic15c/oracle_common/common/bin
./wlst.sh /WebLogic/app/scripts/collect_logs.py
cd /WebLogic/app/weblogic15c/oracle_common/common/bin
./wlst.sh /WebLogic/app/scripts/collect_logs.py
Initializing WebLogic Scripting Tool (WLST) …
Welcome to WebLogic Server Administration Scripting Shell
Connecting to t3://localhost:7001 with userid weblogic …
Collecting logs…
Logs collected successfully:
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log
– /WebLogic/fgdata/domains/fgedudomain/logs/domain.log
Exiting WebLogic Scripting Tool.
Welcome to WebLogic Server Administration Scripting Shell
Connecting to t3://localhost:7001 with userid weblogic …
Collecting logs…
Logs collected successfully:
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log
– /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log
– /WebLogic/fgdata/domains/fgedudomain/logs/domain.log
Exiting WebLogic Scripting Tool.
2. 分析错误日志
# 分析错误日志
grep “ERROR” /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log | tail -20
grep “ERROR” /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/AdminServer.log | tail -20
[2024-01-01 10:00:00,000] [AdminServer] [ERROR] [BEA-000000] [weblogic.servlet.internal.WebAppServletContext] [tid: [ACTIVE] ExecuteThread: ‘0’ for queue: ‘weblogic.kernel.Default (self-tuning)’] [userId: weblogic] [ecid: 1234567890ABCDEF] [APP: fgeduApp] [uri: /fgeduApp/error] [state: 500] Servlet execution threw an exception
[2024-01-01 10:05:00,000] [AdminServer] [ERROR] [BEA-000000] [weblogic.servlet.internal.WebAppServletContext] [tid: [ACTIVE] ExecuteThread: ‘1’ for queue: ‘weblogic.kernel.Default (self-tuning)’] [userId: weblogic] [ecid: 0987654321FEDCBA] [APP: fgeduApp] [uri: /fgeduApp/error] [state: 500] Servlet execution threw an exception
[2024-01-01 10:05:00,000] [AdminServer] [ERROR] [BEA-000000] [weblogic.servlet.internal.WebAppServletContext] [tid: [ACTIVE] ExecuteThread: ‘1’ for queue: ‘weblogic.kernel.Default (self-tuning)’] [userId: weblogic] [ecid: 0987654321FEDCBA] [APP: fgeduApp] [uri: /fgeduApp/error] [state: 500] Servlet execution threw an exception
3. 分析访问日志
# 分析访问日志
awk ‘{print $7}’ /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log | sort | uniq -c | sort -nr | head -10
awk ‘{print $7}’ /WebLogic/fgdata/domains/fgedudomain/servers/AdminServer/logs/access.log | sort | uniq -c | sort -nr | head -10
100 /fgeduApp/index.jsp
50 /fgeduApp/login.jsp
30 /fgeduApp/error
20 /fgeduApp/about.jsp
10 /fgeduApp/contact.jsp
50 /fgeduApp/login.jsp
30 /fgeduApp/error
20 /fgeduApp/about.jsp
10 /fgeduApp/contact.jsp
4. 使用ELK Stack分析日志
# 使用ELK Stack分析日志
1. 登录Kibana:http://localhost:5601
2. 创建索引模式:weblogic-*
3. 使用Discover功能搜索日志
4. 创建可视化图表:
– 错误数量趋势
– 访问量统计
– 响应时间分布
5. 创建仪表板,展示日志分析结果
1. 登录Kibana:http://localhost:5601
2. 创建索引模式:weblogic-*
3. 使用Discover功能搜索日志
4. 创建可视化图表:
– 错误数量趋势
– 访问量统计
– 响应时间分布
5. 创建仪表板,展示日志分析结果
4.3 常见问题与解决方案
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 日志文件过大 | 日志级别设置过低或日志轮换配置不当 | 调整日志级别,配置合理的日志轮换策略 |
| 日志丢失 | 日志存储空间不足或日志配置错误 | 确保存储空间充足,检查日志配置 |
| 日志分析困难 | 日志格式不一致或日志量过大 | 统一日志格式,使用日志分析工具 |
| 日志性能影响 | 日志级别设置过低或日志写入频繁 | 调整日志级别,优化日志写入 |
| 日志安全问题 | 日志文件权限设置不当 | 设置合适的日志文件权限 |
更多学习教程公众号风哥教程itpux_com
Part05-风哥经验总结与分享
5.1 日志管理最佳实践
- 合理设置日志级别:根据环境和需求设置合适的日志级别,生产环境一般设置为INFO或WARNING
- 配置日志轮换:配置合理的日志轮换策略,避免日志文件过大
- 集中管理日志:使用日志收集工具集中管理日志,便于分析和查询
- 定期备份日志:定期备份日志,确保日志的安全
- 设置日志权限:设置合适的日志文件权限,防止未授权访问
- 监控日志空间:监控日志存储空间,确保有足够的空间
5.2 日志分析技巧
- 使用日志分析工具:使用ELK Stack等日志分析工具,提高分析效率
- 建立日志索引:为日志建立索引,便于快速搜索和查询
- 设置日志告警:设置日志告警,及时发现和处理问题
- 分析日志模式:分析日志中的模式,找出问题的规律
- 结合监控数据:结合系统监控数据,全面分析问题
- 定期审计日志:定期审计日志,确保系统的安全性
5.3 故障排除技巧
- 查看错误日志:首先查看错误日志,了解问题的具体原因
- 分析访问日志:分析访问日志,了解问题发生的上下文
- 使用日志搜索工具:使用grep、awk等工具搜索和分析日志
- 查看相关日志:查看相关的日志文件,如域日志、应用日志等
- 对比正常日志:对比正常情况下的日志,找出异常之处
- 联系Oracle支持:如果遇到无法解决的问题,联系Oracle技术支持
风哥提示:WebLogic日志管理与分析是系统维护的重要组成部分,通过合理的配置和分析,可以及时发现和解决问题,确保系统的稳定运行。
from WebLogic视频:www.itpux.com
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
