Monitor Oracle GoldenGate logs by using Amazon CloudWatch
Created by Chithra Krishnamurthy (AWS)
Summary
Oracle GoldenGate provides real-time replication between Amazon Relational Database Service (Amazon RDS) for Oracle databases, or between Oracle databases hosted on Amazon Elastic Compute Cloud (Amazon EC2). It supports both unidirectional and bidirectional replication.
When you use GoldenGate for replication, monitoring is critical to verify that the GoldenGate process is up and running, to make sure that the source and target databases are in sync.
This pattern explains the steps to implement Amazon CloudWatch monitoring for a GoldenGate error log, and how to set alarms to send notifications for specific events such as STOP
or ABEND
so you can take appropriate actions to resume replication quickly.
Prerequisites and limitations
Prerequisites
GoldenGate installed and configured on an EC2 instance, so you can set up CloudWatch monitoring on those EC2 instances. If you want to monitor GoldenGate across AWS Regions for bidirectional replication, you must install the CloudWatch agent in each EC2 instance where the GoldenGate process is running.
Limitations
This pattern explains how to monitor the GoldenGate process by using CloudWatch. CloudWatch doesn’t monitor replication lag or data synchronization issues during replication. You must run separate SQL queries to monitor replication lag or data-related errors, as explained in the GoldenGate documentation
.
Product versions
This document is based on the implementation of Oracle GoldenGate 19.1.0.0.4 for Oracle on Linux x86-64. However, this solution is applicable to all major versions of GoldenGate.
Architecture
Target technology stack
GoldenGate binaries for Oracle installed on an EC2 instance
Amazon CloudWatch
Amazon Simple Notification Service (Amazon SNS)
Target architecture
Tools
AWS services
Amazon CloudWatch is a monitoring service that is used in this pattern to monitor GoldenGate error logs.
Amazon SNS is a message notification service that is used in this pattern to send email notifications.
Other tools
Oracle GoldenGate
is a data replication tool that you can use for Amazon RDS for Oracle databases or Oracle databases that are hosted on Amazon EC2.
High-level implementation steps
Create an AWS Identity and Access Management (IAM) role for the CloudWatch agent.
Attach the IAM role to the EC2 instance where GoldenGate error logs are generated.
Install the CloudWatch agent on the EC2 instance.
Configure the CloudWatch agent configuration files:
awscli.conf
andawslogs.conf
.Start the CloudWatch agent.
Create metric filters in the log group.
Set up Amazon SNS.
Create an alarm for the metric filters. Amazon SNS sends email alerts when those filters capture events.
For detailed instructions, see the next section.
Epics
Task | Description | Skills required |
---|---|---|
Create the IAM role. | Access to AWS resources requires permissions, so you create IAM roles to include the permissions necessary for each server to run the CloudWatch agent. To create the IAM role:
| AWS general |
Task | Description | Skills required |
---|---|---|
Attach the IAM role to the EC2 instance where GoldenGate error logs are generated. | The error logs generated by GoldenGate have to be populated to CloudWatch and monitored, so you need to attach the IAM role you created in step 1 to the EC2 instance where GoldenGate is running. To attach an IAM role to an instance:
| AWS general |
Task | Description | Skills required |
---|---|---|
Install the CloudWatch agent on the GoldenGate EC2 instance. | To install the agent, run the command:
| AWS general |
Edit the agent configuration files. |
| AWS general |
Start the CloudWatch agent. | To start the agent, use the following command.
After you start the agent, you can view the log group in the CloudWatch console. The log stream will have the contents of the file. | AWS general |
Task | Description | Skills required |
---|---|---|
Create metric filters for the keywords ABEND and STOPPED. | When you create metric filters for the log group, whenever the filters are identified in the error log, it starts an alarm and sends an email notification based on the Amazon SNS configuration. To create metric filters:
| CloudWatch |
Task | Description | Skills required |
---|---|---|
Create an SNS topic. | In this step, you configure Amazon SNS to create alarms for the metric filters. To create an SNS topic:
| Amazon SNS |
Create a subscription. | To create a subscription to the topic:
Amazon SNS opens your web browser and displays a subscription confirmation with your subscription ID. | Amazon SNS |
Task | Description | Skills required |
---|---|---|
Create an alarm for the SNS topic. | To create an alarm based on a log group-metric filter:
After these steps, whenever these patterns are detected in the GoldenGate error log file ( | CloudWatch |
Troubleshooting
Issue | Solution |
---|---|
The log stream from the GoldenGate error log doesn’t flow into CloudWatch. | Check the |