3.2 Logging
Parent topic: Install
3.2.1 Logs and Setting Log Levels
Oracle GoldenGate Veridata maintains logs for both the agent and the server, helping with monitoring, troubleshooting, and performance analysis.
- The agent generates:
- Main logs
- Query logs for executed SQL queries
- Performance logs for tracking execution efficiency
Veridata agent logs are categorized into different log levels to control the verbosity of logging:
TRACE
– Detailed debugging informationNOTIFICATION
– General operational messagesWARNING
– Potential issues that may require attentionERROR
– Errors that impact functionality but do not stop executionINCIDENT_ERROR
– Critical errors requiring immediate action
- The server generates:
- Server logs
- Api logs
- Performance logs for monitoring system performance
Veridata server logs are categorized into different log levels to control the verbosity of logging:
SEVERE
Indicates serious failures that require immediate attention.
WARNING
Indicates potential problems that might cause issues in the future.
INFO
Used for general information messages about the application's normal execution.
FINE
Provides general tracing information for debugging.
FINER
More detailed tracing messages than FINE
.
FINEST
(Lowest priority)
Most detailed tracing information, usually at a very granular level.
- ALL
Captures all messages at all levels (from FINEST
to SEVERE
).
Note:
Production systems typically log atINFO
or WARNING
levels. Debugging scenarios may use FINE
, FINER
, or FINEST
.
Parent topic: Logging
3.2.2 Agent
- Agent Logs Location
- Updating Agent Log Settings
- Enabling Performance Logs
- Enabling Trace Logs
- Enabling Query Logs
- Modifying Log Size
Parent topic: Logging
3.2.2.1 Agent Logs Location
Agent logs are stored in the following directory: $AGENT_DEPLOYED_LOCATION/logs/
The main agent logs are recorded in: veridata-agent.log
.
The performance logs are stored in: vdtperf-agent.log
.
Parent topic: Agent
3.2.2.2 Updating Agent Log Settings
Agent log settings can be configured in the odl.xml
file.
File Location: $AGENT_DEPLOYED_LOCATION/config/odl.xml
Parent topic: Agent
3.2.2.3 Enabling Performance Logs
- Modify the
odl.xml
file and change level fromNOTIFICATION
toTRACE
for logger with nameoracle.veridata.agent.performance
.For example:
<logger name='oracle.veridata.agent.performance' level='TRACE:1' useParentHandlers='false'> <handler name='perf-handler' /> <handler name='my-console-handler' /> </logger>
- Restart the agent.
If this logger is not present in odl.xml then:
- Add below log handler under <log_handlers>
<log_handler name='perf-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'> <property name='path' value='${agentHome}/logs/vdtperf-${agent.id}.log' /> <property name='maxFileSize' value='10485760' /> <property name='maxLogSize' value='104857600' /> <property name='useSourceClassAndMethod' value='TRACE:1' /> </log_handler>
- Under the
<loggers>
tag add the following:<logger name='oracle.veridata.agent.performance' level='TRACE:1' useParentHandlers='false'> <handler name='perf-handler' /> <handler name='my-console-handler' /> </logger>
- Add below log handler under <log_handlers>
- Restart the agent.
Parent topic: Agent
3.2.2.4 Enabling Trace Logs
Modify the odl.xml
file and change level from NOTIFICATION
to TRACE
for loggers having name oracle.veridata
. Restart the agent.
For example:
<logger name='oracle.veridata' level='TRACE:1' useParentHandlers='false'> <handler name='odl-handler' /> <handler name='my-console-handler' /> </logger>
<logger name='oracle.veridata.XML' level='TRACE:1' useParentHandlers='false'> <handler name='odl-handler' /> <handler name='my-console-handler'/> </logger>
Parent topic: Agent
3.2.2.5 Enabling Query Logs
- Modify the
odl.xml
file and change level fromNOTIFICATION
toTRACE
for loggers having nameoracle.veridata.agent.query
.<logger name='oracle.veridata.agent.query' level='TRACE:1' useParentHandlers='false'> <handler name='odl-handler' /> <handler name='my-console-handler' /> </logger>
- Restart the agent.
Parent topic: Agent
3.2.2.6 Modifying Log Size
The log rotation is enabled by default, and therefore older logs get deleted when log size reached a certain size. However, this can be controlled as described below.
Log size is specified per log handler in the odl.xml
file. This is controlled by the following 2 properties:
- maxFileSize - Defines the maximum size (in bytes) a log file can reach before it gets rotated and a new log file is created.
- maxLogSize - It controls the max log size (in bytes) before rolling over.
For all the logs:
Find the log handler with name odl-handler and change values of maxFileSize
and maxLogSize
, then restart the agent.
<log_handler name='odl-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'> <property name='path' value='${agentHome}/logs/veridata-${agent.id}.log' /> <property name='maxFileSize' value='10485760' /> <property name='maxLogSize' value='104857600' /> <property name='useSourceClassAndMethod' value='TRACE:1' /> </log_handler>
For Performance Logs:
Find the log handler with name perf-handler
and change values of maxFileSize
and maxLogSize
, then restart the agent.
<log_handler name='perf-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'> <property name='path' value='${agentHome}/logs/vdtperf-${agent.id}.log' /> <property name='maxFileSize' value='10485760' /> <property name='maxLogSize' value='104857600' /> <property name='useSourceClassAndMethod' value='TRACE:1' /> </log_handler>
Note:
Values ofmaxFileSize
and maxLogSize
are in bytes, therefore 10485760 is 10 MB. Parent topic: Agent
3.2.3 Server
3.2.3.1 Server Log Location
All the Server logs are stored in the following directory: <VERIDATA_HOME>/veridata/logs
.
Server API logs are recorded in vdtapi.log
. The format of the Server API log files is as follows: vdtapi.log.x
. For example, vdtapi.log.0
. Older logs are named as vdtapi.log.1
, vdtapi.log.2
, or vdtapi.log.n
.
The Server logs are recorded in vdtserver.log
. The format of the Server log files is as follows: vdtserver.log.x
. For example, vdtserver.log.0
. Older logs are named as vdtserver.log.1
, vdtserver.log.2
, or vdtserver.log.n
.
vdtperf.log
. Note:
Log files can also be updated from the config file located at:<VERIDATA_HOME>/config/logging.properties
. Parent topic: Server
3.2.3.2 Updating Server Log Levels
Server log levels can be configured using update log config
API. For more information, see REST API for GoldenGate Veridata. This API will be used to set log levels for:
- Setting Log Levels for All Logs: To apply a log level to all logs at once, send the following request body:
{ "level":<global_log_level> }
Valid values for
<global_log_level>
:ALL
,SEVERE
,WARNING
,INFO
,FINE
,FINER
,FINEST
- Configuring Performance Logs: To enable performance logging, use the following request body:
{ "level": <global_log_level>, "logComponents": "oracle.veridata.server.performance=FINE" }
Here value of
logComponents
can be any of the following values:"oracle.veridata.server.performance=FINE" "oracle.veridata.server.performance=FINER" "oracle.veridata.server.performance=FINEST"
- Configuring Server Logs
By default,
INFO
level server logs are written to thevdtserver.log
file. To modify the server log level, use the following request body:{ "level": <global_log_level>, "logComponents": "oracle.veridata.server=<desired_log_level>" }
Valid values for
<desired_log_level>
:ALL
,SEVERE
,WARNING
,INFO
,FINE
,FINER
,FINEST
- Configuring Log Handlers (File & Console):
You can choose where the logs should be stored:
FileHandler: Stores logs in a file.
ConsoleHandler: Displays logs in the console.
You can enable both handlers simultaneously.{ "level": <global_log_level>, "logHandlers": "FileHandler,ConsoleHandler" }
Parent topic: Server
3.2.3.3 Changing Log Size
Log rotation is enabled by default, to ensure older logs are deleted when they reach a specified size.
Log size is controlled by <VERIDATA_HOME>/config/logging.properties
file, where each log handler has two key properties:
FileHandler.limit
- Defines the maximum size (in bytes) a log file can reach before it is rotated (a new file is created). This is basically the size of 1 log file.FileHandler.count
- Defines the number of log files to keep in the rotation. When the number of log files exceeds count, the oldest file is deleted.
com.oracle.goldengate.veridata.logging.PerfFileHandler.limit=10485760 com.oracle.goldengate.veridata.logging.PerfFileHandler.count=10
Note that you will need to restart the server after this update.Parent topic: Server