首页主机资讯Debian系统中WebLogic的日志管理怎么做

Debian系统中WebLogic的日志管理怎么做

时间2025-11-27 21:18:04发布访客分类主机资讯浏览1108
导读:Debian系统下WebLogic日志管理实践 一 日志位置与类型 常见日志与路径(WebLogic 9+): 服务器日志:$DOMAIN_HOME/servers//logs/.log 域日志:$DOMAIN_HOME/servers...

Debian系统下WebLogic日志管理实践

一 日志位置与类型

  • 常见日志与路径(WebLogic 9+):
    • 服务器日志:$DOMAIN_HOME/servers//logs/.log
    • 域日志:$DOMAIN_HOME/servers//logs/.log
    • HTTP访问日志:$DOMAIN_HOME/servers//logs/access.log
  • 快速定位示例:
    • 进入域目录:cd /u01/app/weblogic/your_domain
    • 实时查看:tail -f servers/AdminServer/logs/AdminServer.log
    • 过滤错误:grep -n “ERROR” servers/AdminServer/logs/AdminServer.log
  • 说明:不同版本与安装方式路径可能略有差异,以上为常见默认结构。

二 内置轮转与日志级别配置

  • 内置轮转(WebLogic Server自带)
    • 开发模式:默认按大小500 KB轮转,命名如 SERVER_NAME.log00001;生产模式:默认按大小5000 KB轮转,启动时不会立即轮转。
    • 可在控制台设置:Environment → Servers → 选定Server → Logging → General
      • Rotation Type:By Size / By Time
      • Rotation File Size:如 10485760(10 MB)
      • Rotation Interval:如 24 hours
      • Files to Retain:如 10
      • Log File Rotation Directory:自定义轮转文件目录
      • 文件名可加入时间格式:如 myserver_%yyyy%%MM%%dd%%hh%%mm%.log
    • 安全阈值:当文件达到约2,097,152 KB(约2 GB)会强制轮转,防止过大。
  • 日志级别与输出(示例)
    • 使用JDK日志时,可在 $DOMAIN_HOME/config 下的 logging.properties 调整:
      • 全局级别:.level= INFO
      • 包级别:com.example.level = FINE
      • 控制台输出:设置 java.util.logging.ConsoleHandler.levelformatter
    • 如使用Log4j/Log4j2,可在相应配置中设置按大小/时间滚动与保留策略。

三 使用logrotate进行系统级轮转

  • 安装与原则
    • Debian默认自带 logrotate,建议对WebLogic采用“copytruncate”方式,避免应用句柄未释放导致轮转失败。
  • 配置示例(/etc/logrotate.d/weblogic)
    • 适配常见路径(按实际替换):
      /u01/app/weblogic/*/servers/*/logs/*.log {
          
          daily
          missingok
          rotate 7
          compress
          delaycompress
          notifempty
          create 640 weblogic weblogic
          copytruncate
          sharedscripts
          postrotate
              # 可选:重启应用或通知外部系统
              # systemctl reload weblogic.service >
          /dev/null 2>
          &
      1 || true
          endscript
      }
          
      
    • 说明:
      • copytruncate:复制当前日志后清空原文件,适合无法发送信号给WebLogic的场景。
      • 若使用systemd管理且可安全发送信号,可改用 postrotate 执行 kill -USR1 < weblogic_pid> systemctl reload
  • 测试与执行
    • 语法检查:logrotate -d /etc/logrotate.d/weblogic
    • 强制执行:logrotate -f /etc/logrotate.d/weblogic
    • 定时:logrotate由 cron 每日自动运行(无需额外配置)。

四 集中监控与告警

  • ELK Stack示例(轻量接入)
    • Filebeat采集:/etc/filebeat/filebeat.yml
      filebeat.inputs:
      - type: log
        paths:
          - /u01/app/weblogic/*/servers/*/logs/*.log
        fields:
          log_type: weblogic
      output.logstash:
        hosts: ["localhost:5044"]
      
    • Logstash处理(/etc/logstash/conf.d/weblogic.conf)
      input {
       beats {
           port =>
       5044 }
       }
      
      filter {
      
        grok {
          
          match =>
       {
           "message" =>
       "%{
      TIMESTAMP_ISO8601:timestamp}
       %{
      LOGLEVEL:loglevel}
       %{
      JAVACLASS:class}
       - %{
      GREEDYDATA:message}
      " }
      
        }
      
        date {
           match =>
       [ "timestamp", "ISO8601" ] }
      
      }
      
      output {
      
        elasticsearch {
           hosts =>
           ["localhost:9200"] index =>
       "weblogic-%{
      +YYYY.MM.dd}
      " }
      
        stdout {
           codec =>
       rubydebug }
      
      }
          
      
    • Kibana:访问 http://< server_ip> :5601 创建索引模式与可视化告警。

五 日常运维与排错清单

  • 常用命令
    • 实时查看:tail -f …/AdminServer.log
    • 关键字定位:grep -n “ERROR|Exception” …/AdminServer.log -A5 -B5
    • 按时间查看:sed -n ‘/2025-11-27 10:00:/,/2025-11-27 11:00:/p’ …/AdminServer.log
  • 容量巡检(cron示例)
    • 每天检查是否超过阈值(如1 GB):
      0 0 * * * du -sh /u01/app/weblogic/*/servers/*/logs/*.log 2>
      /dev/null | awk '$1 ~ /G$/ {
      print "WARN: " $0}
          '
      
  • 注意事项
    • 避免双重轮转:若已启用WebLogic内置按大小/时间轮转,建议系统级 logrotate 使用 copytruncate,或关闭内置轮转以免文件名冲突与句柄问题。
    • 权限与属主:确保 weblogic:weblogic 对日志目录与文件具备写权限,避免轮转失败。
    • 保留策略:结合磁盘容量与合规要求设置 rotate 7/30 等保留天数,并定期归档与清理。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian系统中WebLogic的日志管理怎么做
本文地址: https://pptw.com/jishu/758300.html
ulimit如何设置最大进程数 ulimit如何调整线程数

游客 回复需填写必要信息