Skip links

GoldenGate Service Monitor 0.1.0

ggsmon blog image

With the introduction of Oracle GoldenGate (Microservices), Oracle opened a lot of doors for people and organizations to create tools based off of the REST APIs.  Initially, the REST APIs within Oracle GoldenGate were developed to ease administration and configuration of the product.  This has allowed, RheoData to extend, build, and introduce GoldenGate Service Monitor.

Overview

The “GoldenGate Services (GGS) Monitor” is a Python script designed to monitor the status and lag of Oracle GoldenGate Extract and Replicat processes. It interacts with the GoldenGate Management REST API to fetch and display information about these processes, such as their status, lag, position, and last start time. The script presents this information in a tabular format on the terminal screen.

Prerequisites

1. Python 3.x installed on your local machine.
2. The required Python packages should be installed. You can install them using `pip`:

pip install requests json dotenv

Running the Script

To run the “GoldenGate Services (GGS) Monitor” script on your local machine, follow these steps:

1. Clone the Repository:

Download the zip file from https://rheodata.com

2. Configure Environment Variables:

Update the ./bin/.env file with the following information

URL=<GoldenGate Management URL>
AUTH=<Base64 Authorization Token> (https://www.base64encode.org/)
REFRESH=<Refresh Interval in seconds>

3. Execute the Script:

Open a terminal window and navigate to the directory where the script is located.
Run the script using the following command:

python3 ./bin/ggsmon.py

4. Monitor the Output:

The script will start running and display a tabular output on the terminal screen.

ggsmon output

The output will include information about Extract and Replicat processes, including their status, lag, position, and last start time.
The information will be refreshed based on the interval specified in the `REFRESH` environment variable.

Notes

The script uses multithreading to fetch and process information in parallel, improving performance.
It handles exceptions, such as missing data or keyboard interrupts, to provide meaningful output.
The script’s main loop continuously refreshes the screen to display updated information.
Make sure to keep your environment variables, especially the `AUTH` token, secure and confidential.

License

This script is released under the MIT License Agreement. Please refer to the LICENSE file included with the package for more details.

Contact Information

If you have any questions or need assistance, feel free to contact RheoData at hello@rheodata.com.