Skip to main content Skip to complementary content

Setting a task notification

Information note

Task notifications apply to Replicate tasks only.

Notifications can be set for the following events:

  • Processing status changes
  • Excessive task latency
  • Excessive memory usage
  • Excessive disk usage
  • Processing errors
  • Other errors
  1. Click the Notification bell icon toolbar button on the right of the console.

    The Notification Rules window opens.

  2. Click the Tasks tab and then click New.

    The New Task Notification wizard opens.

  3. Provide a name for the notification.
  4. Select a notification in one of the available categories and, where applicable, set the time/size threshold for sending the notification.

     

    Processing Status:

    • Task was started manually or by the Scheduler: To send the notification when the task is started manually or by the Scheduler.
    • Task was stopped manually or by the Scheduler: To send the notification when the task is stopped manually or by the Scheduler.
    • Task was stopped after Full Load: Cached changes were not applied: To send the notification when the task is stopped after Full Load completes but before cached changes (changes to the source tables that occurred during Full Load) are applied to the target.
    • Task was stopped after Full Load: Cached changes were applied: To send the notification when the task is stopped after Full Load completes and cached changes (changes to the source tables that occurred during Full Load) have been applied to the target.
    • Full Load started: To send the notification when the Full Load process starts.
    • Full Load completed: To send the notification when the Full Load process completes.

    Performance/Resources:

    • Latency is higher than [N] seconds

      Specify the desired threshold value and unit of measurement (seconds or minutes).

    • Memory usage exceeds [N] GB

      Specify the desired threshold value and unit of measurement (GB or MB).

    • Disk usage exceeds [N] GB

      Specify the desired threshold value and unit of measurement (GB or MB).

    Errors and Warnings:

    • Any Error: Select this to receive a notification when any error occurs in the system. Note that notification will not be sent for the following error types:
      • Recoverable errors. Recoverable errors are printed as INFO in the log (unless the task logging is set to TRACE, in which case they will be printed as ERROR).
      • Certain user-defined error handling policies. For example, if the Duplicate key when applying INSERT Apply Conflicts handling option is set to Log record to the exceptions table, no notification will be sent. However, if it set to Stop task, a notification will be sent.
    • Setting this option may result in a large volume of notifications, depending on the number of tasks running and their current status. It is therefore recommended to define this notification for selected tasks rather than for all tasks.

    • Any Warning: Select this to receive a notification when a warning is issued in the system.
    • No changes were captured in the last <n> minutes: As this notification requires Replicate May 2022 or later, it will not be available if the monitored Replicate Server is an incompatible version. Select this notification if you want to be alerted about delays in capturing changes from the source database. With most databases, receiving this notification will usually indicate a connectivity problem. However, with the following databases, it could simply mean that no changes occurred during the specified period.
      • Microsoft SQL Server
      • IBM DB2 for LUW
      • IBM DB2 for iSeries

      When the task resumes capturing changes, a notification that change capture has resumed will be sent, and the notification timer will be reset.

    • Table processing was suspended due to errors: Select this to receive a notification when an error causes a table to stop processing during a full-load operation or suspend CDC. In this case, the table process stops, but the task continues.
    • Task stopped due to a non-recoverable error: Select this to receive a notification when an error that cannot be retried is returned and the task is stopped due to this error.

      Information note

      An additional notification will be sent when the Performance/Resource threshold returns to normal (where "normal" is 10% below the defined threshold).

    • Errors containing one of these codes

      When this option is selected, a notification will be sent whenever an error matching one of the specified error codes occurs. Error codes for tasks that ended with an error are shown in the Message Center. You can copy the desired codes from the Message Center and paste them into this field.

      Information note
      • Multiple error codes can be specified. In this case, error codes should be separated by a comma.
      • Error codes must contain numeric values only.
  5. Click Next.

    The Associate dialog is displayed.

  6. Choose whether to associate the notification with Selected Tasks or with All Current and Future Tasks.

    Note that when you complete the Task Notification wizard, the Associated with column in the Notification Rules window will display either Selected Tasks or All Current and Future Tasks depending on which of these options you selected.

    If you chose Selected Tasks, from the Server drop-down list, select All Servers or a specific server.

    Then, select the desired tasks using the arrow buttons in the middle of the screen (multiple selection is supported).

    Information note

    The Server drop-down list only displays servers:

    • That are monitored
    • For which the user who defines the notification has View permission

    The Tasks list only displays tasks:

    • That are running on monitored servers (that are not in an error state)
    • For which the user who defines the notification has View permission
  7. Click Next.

    The Recipients dialog is displayed.

  8. Notifications will always be displayed in the Message Center. If you also want the notification to be sent to the Windows Event Log and/or specified Email Recipients, select their respective check boxes.

    See also Replicate Event IDs in Windows Event Log.

    If you selected Email Recipients, specify a list of email recipients (separated by semi-colons) in the To, Cc and/or Bcc fields.

    Information note

    Sending notifications to email recipients requires your organization's outgoing mail server settings to be defined.

  9. Click Next.

    The Message dialog displays a default email subject and email/Windows Event Log message for the selected notification. You can change the default subject and/or message and make use of any of the variables listed to the right of the message.

    Information note

    The message shown in the Message Center is system generated and cannot be edited.

  10. Click Finish to add the notification to Enterprise Manager.

    A summary of the notification settings will be displayed in the Tasks tab in the Notification Rules window.

    Information note

    New notifications are always created as enabled and are active immediately without any need to stop/resume tasks.

Task notification variables

In addition to allowing you to edit the default messages, the Message window also provides a list of variables that you can insert into the notification message. These are described in the table below.

  1. Select the desired variable.
  2. Place the cursor in the message where you want the variable to be inserted.
  3. Click the arrow to the left of the variable list.
Information note

The table below describes all of the message variables. However, the variables available for selection in the Message window will vary according to the notification event you select.

Task notification variables
Variable Description
${CDC_APPLIED_CHANGES_COUNT}

The number of changes applied to the target tables during Change Processing.

${CDC_APPLY_LATENCY}

The overall Change Processing latency.

${CDC_APPLY_THROUGHPUT_KB_SEC}

The Change Processing throughput speed in kilobytes per second.

${CDC_APPLY_THROUGHPUT_REC_SEC}

The Change Processing throughput speed in records per second.

${CDC_CHANGES_FOR_APPLY_IN_MEMORY_UNTIL_TARGET_COMMIT}

The number of change records in memory waiting to be committed to the target database.

${CDC_CHANGES_FOR_APPLY_ON_DISK_UNTIL_TARGET_COMMIT}

The number of change records on disk waiting to be committed to the target database.

${CDC_CHANGES_IN_MEMORY_UNTIL_SOURCE_COMMIT}

The number of change records in memory until the next source commit.

${CDC_CHANGES_ON_DISK_UNTIL_SOURCE_COMMIT}

The number of change records on disk until the next source commit.

${CDC_COMMIT_CHANGE_RECORDS_COUNT}

The total number of committed change records.

${CDC_COMMIT_CHANGE_VOLUME_MB}

The total volume of committed change records in MB.

${CDC_COMMIT_TRANSACTIONS_COUNT}

The total number of transactions committed during Change Processing.

${CDC_DDLS_COUNT}

The number of DDLs (metadata) applied during Change Processing.

${CDC_DDLS_PERCENTAGE}

The percentage of changes applied during Change Processing in terms of DDLs.

${CDC_DELETES_COUNT}

The number of DELETEs applied during Change Processing.

${CDC_DELETES_PERCENTAGE}

The percentage of changes applied during Change Processing in terms of DELETEs.

${CDC_INCOMING_CHANGES_COUNT}

The number of incoming changes (from the source endpoint).

${CDC_INCOMING_TRANSACTIONS_COUNT}

The number of incoming transactions (from the source endpoint).

${CDC_INSERTS_COUNT}

The number of INSERTs applied during Change Processing.

${CDC_INSERTS_PERCENTAGE}

The percentage of changes applied during Change Processing in terms of INSERTs.

${CDC_OPEN_TRANSACTIONS_IN_SOURCE}

The number of open transactions in the source database during Change Processing.

${CDC_ROLLBACK_CHANGE_RECORDS_COUNT}

The number of change records rolled back during Change Processing.

${CDC_ROLLBACK_CHANGE_VOLUME_MB}

The volume of change records rolled back during Change Processing.

${CDC_ROLLBACK_TRANSACTIONS_COUNT}

The number of transactions rolled back during Change Processing.

${CDC_SOURCE_LATENCY}

The source latency during Change Processing.

${CDC_SOURCE_THROUGHPUT_KB_SEC}

The Change Processing throughput from the source endpoint in kilobytes per second.

${CDC_SOURCE_THROUGHPUT_REC_SEC}

The Change Processing throughput from the source endpoint in records per second.

${CDC_TRANSACTIONS_FOR_APPLY_ON_TARGET}

The number of transactions pending apply on the target

${CDC_UPDATES_COUNT}

The number of UPDATEs applied during Change Processing.

${CDC_UPDATES_PERCENTAGE}

The percentage of changes applied during Change Processing in terms of UPDATEs.

${TIME_SINCE_LAST_CHANGE} The time that has elapsed in minutes since changes were last captured from the source database.

${CPU_USAGE_PERCENTAGE}

Information note

Only available for Replicate 6.2 or later. For earlier Replicate versions, this variable will appear as -1 in the notification message.

The percentage of CPU utilized by the task.

${DISK_USAGE_MB}

The total disk usage in MB.

${EVENT_TIME}

When the notification event occurred (e.g. when latency exceeded N MB, when latency returned to normal, and so on).

${FL_END_TIME}

When the Full Load operation ended.

${FL_LOAD_DURATION}

The duration of the Full Load operation.

${FL_PROGRESS_PERCENTAGE}

The percentage of the Full Load operation already completed.

${FL_RECORDS_COMPLETED_COUNT}

The current number of processed records during Full Load replication.

${FL_RECORDS_LEFT_COUNT}

The current number of records awaiting processing during Full Load replication.

${FL_SOURCE_THROUGHPUT_KB_SEC}

The Full Load throughput from the source endpoint in kilobytes per second.

${FL_SOURCE_THROUGHPUT_REC_SEC}

The Full Load throughput from the source endpoint in records per second.

${FL_TABLES_COMPLETED_COUNT}

The current number of tables loaded to the target during Full Load replication.

${FL_TABLES_LEFT_COUNT}

The current number of tables still waiting to be loaded during Full Load replication.

${FL_TABLES_LOADING_COUNT}

The number of tables currently being loaded during Full Load replication.

${FL_TABLES_QUEUED_COUNT}

The current number of queued tables during Full Load replication.

${FL_TARGET_THROUGHPUT_KB_SEC}

The Full Load throughput to the target endpoint in kilobytes per second.

${FL_TARGET_THROUGHPUT_REC_SEC}

The Full Load throughput to the target endpoint in records per second.

${FL_TOTAL_RECORDS_COUNT}

The total number of records replicated during Full Load.

${FL_TOTAL_TABLES_COUNT}

The total number of tables replicated during Full Load.

${FULL_LOAD_ENDED}

A boolean indicating whether or not Full Load has completed.

${HOST_NAME}

The host name of the Replicate Server machine.

${MEMORY_USAGE_MB}

The total amount of memory being used.

${SERVER_NAME}

The Replicate server display name, specified by the user when the server was added to Enterprise Manager.

${SOURCE_NAME}

The name of the source endpoint.

${SOURCE_TYPE}

The source endpoint type (e.g. Microsoft SQL Server).

${TABLES_WITH_ERROR_COUNT}

The number of tables with errors.

${TAGS}

The name of any tags applied in Enterprise Manager at the time of the notification.

${TARGET_NAME}

The name of the target endpoint.

${TARGET_TYPE}

The target endpoint type (e.g. Microsoft SQL Server).

${TASK_DATA_ERRORS_COUNT}

The number of data errors encountered by the task.

${TASK_DESCRIPTION}

The task description (entered by the user when the task was defined).

${TASK_NAME}

The task name.

${TASK_PROFILE}

The task profile (unidirectional or bidirectional).

${TASK_STAGE}

The current processing stage of the task.

${TASK_STATE_REASON}

The reason for the current task status.

${TASK_STATE}

The current task status (stopped, running, etc.).

${TASK_TYPE}

The task type (Full Load only, Apply Changes only, or Full Load and Apply Changes)

${NOTFICATION_NAME}

The name of the notification.

${ERROR_DETAILS}

Error details related to tasks that encountered an error. (currently relevant only for the "Task has stopped due to a non-recoverable error" event).

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!