Linux环境下查看WebLogic日志的常用方法
WebLogic日志文件通常集中存储在域(Domain)的根目录下的servers子目录中,具体路径遵循以下结构:
$DOMAIN_HOME/servers/<ServerName>/logs/
其中:
$DOMAIN_HOME:WebLogic域的根目录(如/opt/weblogic/user_projects/domains/base_domain);<ServerName>:WebLogic服务器实例的名称(如AdminServer表示管理服务器,managed_server1表示托管服务器)。在该目录下,常见的日志文件包括:
<ServerName>.log(如AdminServer.log):记录服务器的启动、关闭及运行过程中的错误、警告信息,是故障排查的核心日志;access.log:记录HTTP/HTTPS请求的访问日志(如客户端IP、请求时间、URL、响应状态码);domain_name.log(如base_domain.log):记录域级别的运行信息(如各服务器实例的关键事件上报);ServerStart.log:记录服务器启动的详细步骤(如类加载、配置初始化)。cat命令:直接输出日志文件的全部内容(适合小文件):cat $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.logless命令:分页查看日志(支持上下翻页、搜索),适合大文件:less $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log/keyword可搜索关键词,按q退出)tail命令:实时查看日志文件的最后几行(适合监控最新日志):tail -f $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.logCtrl+C停止实时监控;tail -n 100可查看最后100行)。grep命令:筛选包含特定关键词的日志行(如错误信息):grep "ERROR" $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log-i选项可忽略大小写,如grep -i "error")tail和grep实时监控错误日志:tail -f $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log | grep "ERROR"。http://server_ip:7001/console);Environment > Servers,选择目标服务器(如AdminServer),进入Logging选项卡;General子选项卡中,可查看/修改日志文件名、日志级别(如INFO、WARN、ERROR,级别越高记录越详细);HTTP子选项卡中,可配置访问日志的启用状态、格式及滚动策略(如按时间/大小滚动);Save保存,并点击Activate Changes激活变更。WebLogic Scripting Tool(WLST)是Oracle提供的命令行脚本工具,可用于自动化提取日志信息。以下示例脚本连接服务器并提取AdminServer的日志内容:
# 连接到WebLogic服务器
connect('weblogic_username', 'weblogic_password', 't3://localhost:7001')
# 切换至目标服务器的日志目录
cd('/Servers/AdminServer/Log/AdminServer')
# 获取日志消息并写入本地文件
logContent = cmo.getMessages()
with open('/tmp/AdminServer_log.txt', 'w') as f:
for message in logContent:
f.write(str(message) + '\n')
# 断开连接
disconnect()
运行脚本后,日志内容将保存至/tmp/AdminServer_log.txt。
ps -ef | grep weblogic命令查看启动脚本中的日志路径,或登录控制台确认;Rotation子选项卡配置;chmod命令添加权限(如chmod +r $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log)。