Report Process

The report command shows, for every table, how many inserts, updates, deletes, DDL statements and rows loaded by the Initial Load a Capture Process or an Apply Process has handled. It works for both kinds of processes and for the whole run of a process or for a range of LSNs or of times.

Command line (repcli)

repcli report process=capture|apply id=processID [from lsn=FROM_LSN until lsn=UNTIL_LSN]repcli report process=capture|apply id=processID [from time="yyyy/mm/dd hh24:mi:ss.fff" until time="yyyy/mm/dd hh24:mi:ss.fff"]
ParameterDescription
processcapture or apply.
idThe identifier of the process.
from lsn, until lsnThe range of the transactions, by LSN (SQL Server) or SCN (Oracle). Both are required. An LSN is written as 0x followed by 20 hexadecimal digits in capital letters, an Oracle SCN can be written as a decimal number. The transactions with the LSN from from lsn to until lsn are included; the same LSN twice reports one transaction.
from time, until timeThe range of the transactions, by the time of the transaction in UTC, in the format yyyy/mm/dd hh24:mi:ss.fff. Both are required.

Without a range the report covers everything that the process has handled since it was started (the “Total since” line of the status command). If the process has not been run since the Repstance server was started there is no such range, give one.

Give both ends of a range. repcli ignores a range that has only one end, and the report then covers the whole run.

For an Apply Process the report of a range, by LSN or by time, counts the transactions that are in the trail files of its Capture Process, whether or not the Apply Process has applied them. So it also shows what a transaction that has failed contains: give its LSN at both ends before you leave it out with reset and skip=1 (see Reset Process).

The output has the time and the LSN of the first and of the last change of the report, and a line for every table:

ColumnMeaning
TABLE_NAMEThe table.
I, U, DThe inserts, updates and deletes.
DDLThe DDL statements.
LOADThe rows loaded by the Initial Load.

The report of a Capture Process, everything since it was started:

repcli report process=capture id=1


First Change :   2026/10/20 15:35:00.333 (0x0000008D00007B7E0007)
 Last Change :   2026/10/20 15:53:00.187 (0x0000008D00007D160007)


                    TABLE_NAME|              I|              U|              D|            DDL|           LOAD
------------------------------------------------------------------------------------------------------------------------
                  repi.hb_stat|             19|              0|             19|              0|              0
------------------------------------------------------------------------------------------------------------------------
                        TOTAL:              19|              0|             19|              0|              0

The report of a Capture Process for a range of times:

repcli report process=capture id=1 from time="2026/10/20 15:36:00.000" until time="2026/10/20 15:39:00.000"


First Change :   2026/10/20 15:36:00.367 (0x0000008D00007B910007)
 Last Change :   2026/10/20 15:38:00.470 (0x0000008D00007BBA0007)


                    TABLE_NAME|              I|              U|              D|            DDL|           LOAD
------------------------------------------------------------------------------------------------------------------------
                  repi.hb_stat|              3|              0|              3|              0|              0
------------------------------------------------------------------------------------------------------------------------
                        TOTAL:               3|              0|              3|              0|              0

The report of one transaction, the same LSN at both ends:

repcli report process=capture id=1 from lsn=0x0000008D00007B910007 until lsn=0x0000008D00007B910007


First Change :   2026/10/20 15:36:00.367 (0x0000008D00007B910007)
 Last Change :   2026/10/20 15:36:00.367 (0x0000008D00007B910007)


                    TABLE_NAME|              I|              U|              D|            DDL|           LOAD
------------------------------------------------------------------------------------------------------------------------
                  repi.hb_stat|              1|              0|              1|              0|              0
------------------------------------------------------------------------------------------------------------------------
                        TOTAL:               1|              0|              1|              0|              0

The messages of a report that cannot be made. repcli prints them as [Failed]: message:

MessageCause
Process is inactive. Either run the Process or provide [from lsn] and [until lsn] parametersThe command has no range and the process has no statistics (it has not been run since the Repstance server was started), or only one end of a time range was sent (REST): from time needs until time.
An invalid value [] has been supplied for parameter [until lsn]Only the start of an LSN range was sent (REST).
An invalid value [2026-10-20 15:36] has been supplied for parameter [from time]. Use '2006/01/02 15:04:05.000' formatThe time is not in the format yyyy/mm/dd hh24:mi:ss.fff. The same message is given for until time.
An invalid value [0x12] has been supplied for parameter [from lsn]The LSN is not 0x with 20 hexadecimal digits in capital letters, and not a decimal number. The same message is given for until lsn.
Invalid Process [foo]The value of process is not capture or apply.
Invalid Capture Process ID has been suppliedThere is no Capture Process with this id (Invalid Apply Process ID has been supplied for an Apply Process).
No data availableThere are no changes in the range, for example because the end of the range is before its start.

REST API

  • Endpoint: https://repstance_url/report/process
  • Method: POST
  • Header: Content-Type: application/json and X-Token: token

The body of the request. start_lsn and end_lsn, or start_time and end_time, are optional; give both of a pair:

{
  "command": "report",
  "process": "capture",
  "id": 1,
  "start_lsn": "FROM_LSN",
  "end_lsn": "UNTIL_LSN",
  "start_time": "yyyy/mm/dd hh24:mi:ss.fff",
  "end_time": "yyyy/mm/dd hh24:mi:ss.fff"
}

The body of the answer. Stats is an object with a member for every table; I, U and D are the inserts, updates and deletes, DDL the DDL statements and LD the rows loaded by the Initial Load:

{
  "Status": "Completed",
  "Message": "",
  "Stats": {
    "repi.hb_stat": {
      "I": 3,
      "U": 0,
      "D": 3,
      "DDL": 0,
      "LD": 0
    }
  },
  "FirstLSN": "0x0000008D00007B910007",
  "LastLSN": "0x0000008D00007BBA0007",
  "FirstTime": "2026-10-20T15:36:00.367Z",
  "LastTime": "2026-10-20T15:38:00.47Z"
}
FieldMeaning
StatusCompleted or Failed.
MessageThe reason, if the status is Failed.
StatsThe changes handled for every table, as above.
FirstLSN, FirstTimeThe LSN and the time (UTC) of the first transaction of the report.
LastLSN, LastTimeThe LSN and the time (UTC) of the last transaction of the report.
HTTP codeMeaning
200The request is valid, or a value in it is wrong: an invalid process, id, LSN or time is reported with the status Failed and a message, and the code is 200.
401The token is invalid.
422The request cannot be read, or the report cannot be made. The status is Failed and the message tells why.

Web UI

Click “More” on the card of a process:

Web UI dashboard: More button of the capture process card highlighted
 

The window shows the state of the process and, under “Details”, the report of the process: the tables with their inserts, updates, deletes, DDL statements and loaded rows. It is the report that repcli report gives without a range, for everything that the process has handled since it was started. A Capture Process has one tab, “Replication Report”:

Web UI, Capture process status: state, lag, speeds, transaction totals and replication report
 

An Apply Process has two tabs. “Processed” is the report of what the Apply Process has applied since it was started. “Queued” is the report of the transactions that the Apply Process has not applied yet: it is the report from the “Last Applied DB Change” to the “Last Source DB Change”, both included. It is empty when the Apply Process has caught up, and it grows while the Apply Process is stopped:

Web UI, Apply Process details: the Queued tab highlighted, with the transactions waiting to be applied
 

Click “Refresh” to read the report again. The window is described in Status of any Capture or Apply Processes.