AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 73626
Accepted
T.J. Crowder
T.J. Crowder
Asked: 2009-10-13 04:37:36 +0800 CST2009-10-13 04:37:36 +0800 CST 2009-10-13 04:37:36 +0800 CST

缺少日志 - Tomcat 5.5 + Ubuntu 8.04

  • 772

概括

在新安装的 Ubuntu 8.04 LTS 64 位上新安装(通过apt-get)Tomcat 可以工作,但(似乎)没有记录任何内容。另请参阅下面的“我尝试过的东西”和“结束它”。

更多详情

因为包维护人员已经完成了大量的工作,所以让基本工作正常运行是一个相当简单的事情,即运行apt-getTomcat 并将其指向正确的 JDK。它有效。但它似乎没有记录任何东西。

据我所知,日志基础设施是通过logging.properties文件控制的(因为这是 Tomcat 5.5,而不是 Tomcat 5.0),包括位于/etc/tomcat55/logging.properties(/etc/tomcat55符号链接为) 的中央文件(您可以针对每个 Web 应用程序覆盖它/var/lib/tomcat55/conf)。我没有覆盖它,我不明白为什么我没有看到一些东西。这是文件:

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################

1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.

2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.

3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.

4admin.org.apache.juli.FileHandler.level = FINE
4admin.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4admin.org.apache.juli.FileHandler.prefix = admin.

5host-manager.org.apache.juli.FileHandler.level = FINE
5host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
5host-manager.org.apache.juli.FileHandler.prefix = host-manager.

java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter


############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = DEBUG
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/admin].handlers = 4admin.org.apache.juli.FileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 5host-manager.org.apache.juli.FileHandler

# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
#org.apache.catalina.startup.ContextConfig.level = DEBUG
#org.apache.catalina.startup.HostConfig.level = DEBUG
#org.apache.catalina.session.ManagerBase.level = DEBUG

我所做的唯一更改是:

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = DEBUG

...它被设置为INFO像所有其他人一样,但我想让它记录一些东西,所以我把它提高到DEBUG. 自然我已经重新启动了Tomcat。

我可以编译和查看 JSP,所以 Tomcat 又可以工作了,但/var/lib/tomcat5.5/logs仍然是空的。即使我通过使用无效的 JSP 或类似的东西来强制出错,我也一无所获。

我试过的

  • 我已经完成了Tomcat 常见问题解答中列出的步骤,以确保发行版没有搞砸(他们没有)。
  • 我已经去其他地方寻找logs目录以防万一/var/lib/tomcat5.5/logs(尽管它是由安装创建的)。
  • 自然地,我在进行任何更改后重新启动了 Tomcat。

我没有做的一件事是安装创建 chown的用户拥有的所有东西。由 拥有,但许多其他目录和文件由 拥有,尽管它们是世界可读的。我没有这样做是因为(垂头丧气)我不太清楚如何完全备份现有树,以便我可以轻松撤消更改。被炸毁的树有绝对的符号链接交织在一起,我知道。我可以把每一个都涂上焦油,但我不确定我没有遗漏什么。tomcat55logstomcat55root/etc/tomcat55/var/lib/tomcat55/usr/share/tomcat55

编辑:

关闭它

好的,所以我发现它正在将控制台样式的内容写入/var/log/daemon.log. 哇!至少这给了我一个开始的地方。它发出的投诉如下:

jsvc.exec[18819]: Can't load log handler "2localhost.org.apache.juli.FileHandler"
jsvc.exec[18819]: java.lang.ClassNotFoundException: 2localhost.org.apache.juli.FileHandler

而且我并不感到惊讶,2localhost.org.apache.juli.FileHandler它不是一个有效的类名(包不能以数字开头!)。所以我怀疑默认logging.properties文件......不好。会回来汇报的。

configuration
  • 2 2 个回答
  • 6762 Views

2 个回答

  • Voted
  1. Best Answer
    T.J. Crowder
    2009-10-13T07:39:41+08:002009-10-13T07:39:41+08:00

    我想通了——这个包不能与 Sun 最新的 Java6 包一起工作sun-java6-jdk;当你找到它时,修复相当简单:

    找到 后daemon.log,我发现我的问题编辑中列出的错误,但这些只是此错误的副作用:

    jsvc.exec[18819]: Could not load Logmanager "org.apache.juli.ClassLoaderLogManager"
    jsvc.exec[18819]: java.security.AccessControlException: access denied (java.lang.RuntimePermission setContextClassLoader)
    

    ...发生这种情况是因为默认情况下,该程序包使用 Java 安全管理器根据以下设置运行 Tomcat /etc/init.d/tomcat5.5:

    # Use the Java security manager? (yes/no)
    TOMCAT5_SECURITY=yes
    

    ...但是该包没有设置 JULI(默认日志记录实现)的权限,Sun 的最新 Java6 似乎需要该权限才能工作。Java6 的早期版本显然没问题。 tomcat-user 邮件列表上的这个最近的帖子为我指明了正确的方向;有问题的用户收到了上面的错误,最终 Mark Thomas 发现了这个权限:

    permission java.lang.RuntimePermission "setContextClassLoader";
    

    ...从catalina.policy. 事实上,如果我将该权限添加到 JULI 部分/etc/tomcat5.5/policy.d/03catalina.policy并重新启动 Tmocat,错误就会消失,并且我会得到日志文件! 嘘!

    请注意:如果您还安装tomcat5.5-webapps以获取示例、管理器应用程序等,您还需要在03catalina.policy. 当然,您始终可以选择关闭安全管理器,但这就是它的用途。

    • 4
  2. netangel
    2009-12-05T08:40:14+08:002009-12-05T08:40:14+08:00

    关于该问题的所有官方错误报告都在这里:https ://bugs.launchpad.net/ubuntu/+source/tomcat5.5/+bug/410379

    • 0

相关问题

  • 小型企业的服务器虚拟化/RAID 配置

  • httpd.conf 用于不区分大小写的文件服务

  • Windows Server 2003 DNS 添加的 CNAME 不起作用

  • 我应该使用什么策略在 linux 上安装 smtp 服务器?用于多线程服务

  • 为什么我的站点在配置为直通身份验证时使用 IUSR 帐户?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve