您的位置:首页 > 数据库 > Oracle

Linux下Oracle日志工具Log4plsql的安装配置

2010-03-26 22:20 399 查看
1、下载Log4plsql
# wget http://prdownloads.sourceforge.net/log4plsql/Log4plsql.zip

2、解压Log4plsql
# unzip Log4plsql.zip

3、为了便于管理,把Log4plsql移动Oracle安装主目录,在我的机器上是/db/oracle
# mv Log4plsql /db/oracle/

4、配置Log4plsql环境变量
# cd /db/oracle/Log4plsql/cmd/
# vi setVariable.sh

#!/usr/bin/sh

echo initialisation variable

# generique product
export LOG4PLSQL_HOME=/db/oracle/Log4plsql
export ORACLE_HOME=/db/oracle/product/10.2.0

# database user
export LOG_SID=orcl
export LOG_USER=ULOG
export LOG_PASSW_USER=ULOG

# system user only use for install. Please, remove this entry after install
export SYS_USER=sys as sysdba
export SYS_PASSW_USER=koonet

# only if you use log4j
export JDK_HOME=/usr/java/jdk1.6

# other variables is calculate

export ORACLE_USERSYS="$SYS_USER/$SYS_PASSW_USER@$LOG_SID as SYSDBA"
export ORACLE_SID=$LOG_SID
export EXTERNAL_LIB=$LOG4PLSQL_HOME/../WebSiteInvariant/externalProjectLib
export LOG4PLSQL_API=$LOG4PLSQL_HOME/Docs/api
export LOG4PLSQL_SQLDOC=$LOG4PLSQL_HOME/Docs/sql

PATH=$PATH:$JDK_HOME:$EXTERNAL_LIB:$ORACLE_HOME/bin

# Generique Tools
export CLASSPATH=$LOG4PLSQL_HOME/lib/log4j-1.2.jar:$CLASSPATH

# Oraclexmlparser
export CLASSPATH=$ORACLE_HOME/lib/xmlparserv2.jar:$CLASSPATH
export CLASSPATH=$ORACLE_HOME/lib/xmlcomp.jar:$CLASSPATH

# OracleDriver
export CLASSPATH=$ORACLE_HOME/lib/classes12.jar:$CLASSPATH
export CLASSPATH=$ORACLE_HOME/lib/nls_charexport12.jar:$CLASSPATH
export CLASSPATH=$ORACLE_HOME/lib/runtime12.jar:$CLASSPATH

# log4plsql
export CLASSPATH=$LOG4PLSQL_HOME/lib/log4plsql.jar:$CLASSPATH

echo CLASSPATH
echo $CLASSPATH
echo CLASSPATH

5、运行install.sh安装Log4plsql
# chmod +x *.sh
# ./install.sh

注意:如果出现以下错误
-bash: ./install.sh: /usr/bin/sh: bad interpreter: 没有那个文件或目录

请编辑install.sh, 把第一行的#!/usr/bin/sh改成#!/bin/sh, 之后执行
# dos2unix install.sh ---把dos格式脚本转换成unix
# ./install.sh

6、更改数据库连接配置
# cd /db/oracle/Log4plsql/properties/
# vi log4plsql.xml

<database>
<source>
<connection>
<!-- Database connection where log4plsql ase install.
| see : JDBC Developer's Guide and Reference / Verifying a JDBC Client Installation
| for all installation Oracle driver install
+-->
<username>ulog</username>
<password>ulog</password>
<!-- jdbc:oracle:thin:@<host_name>:<port_number>:<sid> -->
<dburl>jdbc:oracle:thin:@127.0.0.1:1521:orcl</dburl>
</connection>
<!-- the default value of pipename is LOG_PIPE
+-->
<pipename>LOG_PIPE</pipename>
</source>
</database>

7、创建log4plsql用户角色,并赋予日志相关权限。
# su - oracle
$ sqlplus /nolog
SQL> conn / as sysdba
SQL> create role log4plsql;
SQL> grant select on ULOG.VLOG to log4plsql;
SQL> grant select,INSERT,DELETE on ULOG.TLOG to log4plsql;
SQL> grant select on ULOG.TLOGLEVEL to log4plsql;
SQL> grant execute on ULOG.PLOG to log4plsql;
SQL> grant execute on ULOG.PLOGPARAM to log4plsql;
SQL> grant execute on ULOG.PMDC to log4plsql;
SQL> grant select on ULOG.SLOG to log4plsql;

8、给用户赋予log4plsql角色,让用户具有log4plsql权限.
SQL> grant log4plsql to esms;

9、使用实例
1)、自定义日志级别:
create or replace procedure testWorkload
is
lCtx PLOG.LOG_CTX := PLOG.init ('perTestWithoutlog', PLOG.LINFO);
begin
plog.info(lCtx, 'Begin:');
commit;
for i in 1..10 loop
plog.DEBUG (lCtx, 'neverInsertInTable--' || i);
end loop;
plog.info(lCtx, 'End:');
commit;
end;
2)、系统默认的日志级别是LERROR,可以通过在ULOG.PLOGPARAM修改DEFAULT_LEVEL改变
3)、ULOG.PLOGPARAM定义系统的日志级别。

LLEVEL LCODE
10 OFF
20 FATAL
30 ERROR
40 WARN
50 INFO
60 DEBUG
70 ALL
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: