首页 » GoldenGate » Oracle goldengate write syslog(ogg 写系统日志)

Oracle goldengate write syslog(ogg 写系统日志)

今天有朋友问她们的/var/log/messages (Linux syslog)文件有很多ogg的info信息,影响了操作系统日志的可读性,信息如下:

Apr 15 03:13:01 ccwlracnode01 rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="21123" x-info="http://www.rsyslog.com"] rsyslogd was HUPed
Apr 16 15:43:32 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 15:43:32  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): info all.
Apr 16 16:08:57 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:08:57  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): info all.
Apr 16 16:09:12 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:09:12  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): dblogin userid ogguser password ***.
Apr 16 16:09:23 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:09:23  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): delete e_mysql.
Apr 16 16:09:43 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:09:43  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): add ext e_mysql  tranlog, begin now, threads 2.
Apr 16 16:09:43 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:09:43  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): add exttrail ./dirdat/my  ext e_mysql, megabytes 100.
Apr 16 16:09:49 ccwlracnode01 Oracle GoldenGate Command Interpreter for Oracle[188615]: 2018-04-16 16:09:49  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (ogguser): info all.

显然这和OGG_HOME目录中oggerr log文件中的内容相同,从ORACLE DOC上记录OGG所有日志是默认启用的。

On UNIX and Linux, Oracle GoldenGate messaging to thesyslog is enabled by default.

之前一直没有注意到这个问题,还不确认是从哪个版本来开引入的,但是从OGG v11.1.1.0.0 版本开始引入syslog 来控制OGG的消息写入操作系统日志(WIN&UNIX).

syslog用法
SYSLOG {[ALL | NONE] | [, INFO] [, WARN] [, ERROR]}

写日志的粒度写所有信息、禁止所有信息、和信息、告警、错误三个等级的任意组全。

可以配置在GLOBAL, mgr和不同的OGG 进程参数中, 在GLOBAL中配置应用于所有进程,如果在GLOBAL和进程参数中都配置了syslog, OGG进程参数的配置会覆盖GLOBAL中的配置.

ALL 是所有日志信息, NONE 是禁止写系统日志,剩下三个选项顾名思义。

如我们只希望把告警和错误信息写入系统日志,可以配置如下:
SYSLOG WARN, ERROR
— or:
SYSLOG ERROR, WARN

如果禁用OGG写系统日志配置如下:
SYSLOG NONE

在OGG v11.1.1.0.0版本以前没有办法控制OGG消息的传递,如果禁止OGG写SYSLOG, 只能通过操作系统层上的/etc/syslog.conf 中把user.info 或 *.info 去除。

新版本变化

在OGG V12.3 版本中syslog 已经弃用(deprecated),但不是不支持(unsupported), 可以使得另一种方法控制syslog的写入。修改$OGG_HOME/diretc/logging/目录下的ogg-ggserr.xml文件,去掉下面这部份的注释,重启MGR进程,又可以重新启用把ogg的消息写入syslog.

<!--
!- The ggserr.Syslog adapter will write all messages to the local
!- system log.
!-
<appender name="ggserr.Syslog" class="SyslogAppender">
<layout class="PatternLayout">
<param name="Pattern" value="%-19.19d{%Y-%m-%d %H:%M:%S} %m%n"/>
</layout>
</appender>
! -->
打赏

对不起,这篇文章暂时关闭评论。