Skip to content

ProcessOB3PRetention operational runbook

This runbook covers running and troubleshooting ProcessOB3PRetention.exe. The full argument contract is on the Arguments page.

Invocation

Item Value
Command ProcessOB3PRetention.exe
Arguments Optional Day, Month, Year; see Arguments
Default behavior Processes the current local date
Example ProcessOB3PRetention.exe -Month 3 -Day 31 -Year 2026

Scheduling

Attribute Value
Scheduler Automic (UC4) job plan ARCH.ONBASE.PROCESS.3P.RETENTION.EOM
Frequency Not determined from source**
Arguments passed by scheduler Unknown**
Interpretation of EOM End-of-month run*; unconfirmed

Console output

Output Stream Meaning
ThirdPartyRetentionProcessor began at (time). stdout Application started
SAIF Claim Num: n - Close Date: d stdout One line per eligible claim
Processing n claims in b batch(es) of up to size. stdout Batch plan
Claims sent to OnBase for Retention Processing. OnBase Document ID: id stdout Batch archived
THRDPARTY_RETENTION records marked as processed. ID List: stdout Batch marked
No claims eligible for retention policy deletion. stdout Nothing to do (exit 0)
Error: message stderr Unhandled exception caught by Execute and reported before exit (exit 5); argument-validation failures instead exit 1 with no Error: line, and application-resolution/startup failures also exit 5 but are reported directly by the runner without an Error: line
Invalid arguments list (n total): stderr Argument failure (exit 1)
Exit Code: n stdout Final exit code

Log files

Destination Used
file0 to file4 Not used by this application
Scheduler capture of stdout and stderr Only persisted log, if configured*

Environment configuration

Setting Required Notes
imagingapiurl Yes Missing or empty fails the run before any work
ProcessOB3PRetention.WSPEndPointUrl Yes OnBase SOAP address
processob3pretention.processbatchsize Yes (read when claims exist) Empty, non-integer, or non-positive values fall back to 100; a missing key fails the run. Seeded as 200 for prod, entqa, and npuat
EnvironmentApiUrl Yes Machine environment variable for the Environment API

See Configuration for detail.

Exit codes (triage)

Code Meaning First action
0 Success or nothing to process None
1 Invalid Day, Month, or Year value Correct the argument and rerun
5 Runtime failure For a startup/resolution failure (no Error: line, no start header — see Run lifecycle), inspect the runner's reported exception on stderr directly; for a failure during processing, read the Error: line. Use the scenarios below either way.

Error scenarios

Symptom Likely cause Action
ApplicationException about a setting Environment API key missing Add the key for the track; see Configuration
UriFormatException imagingapiurl is empty Set a valid URL
Imaging API exception Service unavailable or credentials rejected Check the Imaging API; the client already retried transient statuses
OnBase FaultException, CommunicationException, or timeout OnBase endpoint unreachable or rejecting the call* Check the OnBase service and endpoint address
Run failed after the OnBase log line but before the marked line Mark-processed call failed Rerun; the batch may be resubmitted to OnBase*
Exit 0 with no claims on a day that should have claims Empty or unparseable API response is treated as none* Verify the Imaging API response for the date

Rerunning is the only recovery path; completed batches are not rolled back. See BR-OB3P-007. Whether OnBase deletes documents after a submission is unknown.**

Monitoring

Signal Source
Scheduler job status Verify the Automic job result and its configured exit-code mapping**
Final line Exit Code: n Captured stdout
Traces Optional OpenTelemetry export via OTEL_EXPORTER_OTLP_*
Duplicate error text on stderr Expected; the error is written and then rethrown
Documentation Description
Index Documentation entry point
Overview Purpose and capabilities
Architecture Components and composition root
Run lifecycle Execution flow and exit codes
Arguments Argument contract
Configuration Settings and environment variables
Dependencies Packages and API dependencies
Operations and processes Operation catalog
Business rules Rules enforced during processing
Tech debt Technical debt observations

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • README.md
  • ProcessOB3PRetention/Program.cs
  • ProcessOB3PRetention/ThirdPartyRetentionProcessor.cs
  • ProcessOB3PRetention/App.config
  • environmentSettings/settings.yml
  • Pipelines/release.yml