首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Java Logging API (java.util.logging )记录Oracle Java存储过程

使用Java Logging API (java.util.logging )记录Oracle Java存储过程
EN

Stack Overflow用户
提问于 2012-12-01 03:49:48
回答 1查看 2.6K关注 0票数 1

我在Oracle (10g)中开发了一个新的Java(1.4)存储过程。我以前从未这样做过,我通常将Java和DB分开,但这是必需的。因此,我开发了一个可以部署在Tomcat中的Java代码,以及一个Oracle中的存储过程。为此,我使用了Java Logging API。

我可以在Oracle中执行存储过程,但我找不到日志。我想知道如何打印日志,可以是Oracle logs或trc文件,如果可能,甚至可以将其配置为将日志打印到另一个特定文件夹。

有谁知道如何做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-11 01:46:38

根据this answer中PeskyGnat的指定,您必须在以下文件夹中创建一个logging.properties文件:

$ORACLE_HOME/javavm/lib

配置此文件后,您可以在以下位置看到日志:

$ORACLE_BASE/admin/$INSTANCE/udump

在我的例子中,这是Solaris,所以第一个路径是:

/export/home/oracle/app/oracle/product/10.2.0/Db_1/javavm/lib

第二个是:

/export/home/oracle/app/oracle/admin/

作为额外信息,为了便于查找日志文件,您可以在Bash shell中键入以下内容:

代码语言:javascript
复制
ls -altr

下面是logging.properties文件的一个示例:

代码语言:javascript
复制
############################################################
#   Default Logging Configuration File
#
# You can use a different file by specifying a filename
# with the java.util.logging.config.file system property.  
# For example java -Djava.util.logging.config.file=myfile
############################################################
############################################################
#   Global properties
############################################################
# "handlers" specifies a comma separated list of log Handler 
# classes.  These handlers will be installed during VM startup.
# Note that these classes must be on the system classpath.
# By default we only configure a ConsoleHandler, which will only
# show messages at the INFO and above levels.
handlers= java.util.logging.ConsoleHandler
# To also add the FileHandler, use the following line instead.
#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
# Default global logging level.
# This specifies which kinds of events are logged across
# all loggers.  For any given facility this global level
# can be overriden by a facility specific level
# Note that the ConsoleHandler also has a separate level
# setting to limit messages printed to the console.
.level= INFO
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
# default file output is in user's home directory.
java.util.logging.FileHandler.pattern = %h/java%u.log
java.util.logging.FileHandler.limit = 50000
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter
# Limit the message that are printed on the console to INFO and above.
java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################

# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
**<your.class.logger>.level = <level> (i.e.: INFO)**
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13652097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档