How to write to SYSLOG in OGG 12.3 Classic and Microservices Architectures?

Oracle GoldenGate 12.3 Microservices introduced a lot of changes into how replication is to be managed moving forward. The Microservices Architecture (MA), provides a lot of opportunity for people to learn a lot about microservices and how they can be leveraged to to bring real-time replication to their organizations.

One feature that was used in the Classic Architecture (CA) was having the GGSERR.log file write items to the messages file at the system level. Starting in Oracle GoldenGate 12.3, both MA and CA, this can still be done; however, how it is done is different.

When you first look at the release notes for Oracle GoldenGate 12.3, you will notice that the SYSLOG parameter is listed under the section 2.3.2 Deprecated Features (here). It clearly states that the SYSLOG parameter has been removed and should not be used for the GLOBALS or the MGR.prm files. So, how do we enable writing to the messages file then?

After digging around a bit, you will notice that this is covered in the docs under 17.6 Using the Error Log in the Administration Guide (here). There is a lot of information here for how to enable the SYSLOG functionality and tells you what file to look at (ogg-ggserr.xml).

Now, that you know what file controls the SYSLOG option, where is this file located?

In CA, the file is located in a new directory called “diretc” and under another directroy called “logging”.

$OGG_HOME/diretc/loggin

In MA, the file is buried in the $OGG_HOME a bit, but easy to find.

$OGG_HOME/lib/utl/logging

Once you are in the file, you will notice that the file is configured by default to write to the GGSERR.log and rollover after every 10Mb in size. Just below that, you will notice that there are three commented out items. Each one of these control what you can do with the GGSERR.log. The first option will write to the GGSERR.log without rolling over. The second will allow you to write GGSERR.log info to the SYSLOG! The third will turn off all event logging. Since you will want to write to the SYSLOG, you will go with the second option. Uncomment that section (remove <!— && ! —> ).

This section will look like this:

!- 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>

After uncommiting the section for writing to SYSLOG, you will need to restart the ServiceManager by using the Action button in the Deployment section of the ServiceManager HTML5 page. After the ServiceManager restarts, you will notice Oracle GoldenGate commands being written to the /var/lib/messages file.

Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-01892 Distribution path network is configured as
Mar 20 11:12:17 ogg123 ServiceManager: OS DEFAULT SPECIFIED ACTUAL VALUE
Mar 20 11:12:17 ogg123 ServiceManager: APP_FLUSHBYTES 27985 N/A 27985
Mar 20 11:12:17 ogg123 ServiceManager: APP_FLUSHSECS 1 N/A 1
Mar 20 11:12:17 ogg123 ServiceManager: IP_DSCP DEFAULT N/A DEFAULT
Mar 20 11:12:17 ogg123 ServiceManager: IP_TOS DEFAULT N/A DEFAULT
Mar 20 11:12:17 ogg123 ServiceManager: TCP_NODELAY 0 N/A 0
Mar 20 11:12:17 ogg123 ServiceManager: TCP_QUICKACK 1 1 1
Mar 20 11:12:17 ogg123 ServiceManager: TCP_CORK 0 N/A 0
Mar 20 11:12:17 ogg123 ServiceManager: SO_SNDBUF 16384 N/A 16384
Mar 20 11:12:17 ogg123 ServiceManager: TCP_CORK 0 N/A 0
Mar 20 11:12:17 ogg123 ServiceManager: SO_SNDBUF 16384 N/A 16384
Mar 20 11:12:17 ogg123 ServiceManager: SO_RCVBUF 87380 N/A 87380.
Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-01052 No recovery is required for target file CB000000000, at RBA 0 (file not opened).
Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-01669 Opening /opt/app/oracle/gg_deployments/pdb2/var/lib/data/CB000000000 (byte -1, current EOF 0).
Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-02243 Opened trail file /opt/app/oracle/gg_deployments/pdb1/var/lib/data/CA000000 at 2018-03-20 11:12:17.126288.
Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-01478 Output file CB is using format RELEASE 12.3.
Mar 20 11:12:17 ogg123 ServiceManager: 2018-03-20 11:12:17 INFO OGG-02756 The definition for table PDB1.TEST_USER.LRG_TABLE is obtained from the trail file.

Enjoy!!!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

%d bloggers like this: