Administrative Office of the U.S. Courts
Office of Court Administration - Technology Division
ȱ
CM/ECF System
Administrator’s Guide
District Release 4 .0.2
July 8, 2009
Revision Notes
4.0.1/4.0.2 Revisions
Revised SA chapter. (Chapter 2)
• Added new cron jobs CleanFiles.live, CleanFiles.test, and CleanFiles.train. (pg. 2-4)
• Removed reference to replicate_external_files.pl.
• Revised ‘Adding a new chunk’. (pg. 2-13)
Revised Document Processing chapter. (Chapter 3)
• Revised ‘Replicating the Files’ section. (pgs. 3-3 to 3-6)
• Revised ‘Document Caching’ section of Enhanced Document Processing chapter. (pgs. 3-12 to 3-15)
Revised Replication chapter. (Chapter 4)
• Replaced obsolete ‘Maintaining a Court’s Application Software on the Replication Servers’ with ‘Maintaining a Court’s
Application Software on the Virtual Replication Servers’ in Replication chapter. (pgs. 4-8 to 4-12)
• Removed ‘Replication of Files External to the Database’.
Revised ‘VeriSign Certificates’ section of Security chapter. (Chapter 6)
• Modified Contact Information image. (pg. 6-20)
• Revised ‘Installing Signed Certificates’. (pg. 6-24)
TABLE OF CONTENTS
Chapter 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Network Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Software Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
Chapter 2 System Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
RC scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cron jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Backup and Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Logical Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Monitoring System and Application Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Source Code Modification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Monitoring Database Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a new chunk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Files in the /tmp directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2
2-3
2-6
2-6
2-7
2-8
2-11
2-12
2-12
2-13
Chapter 3 Enahnced Document Processing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Replicating the Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Database Schema Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Document Home Directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Document Caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-2
3-3
3-5
3-10
3-12
Chapter 4 Replication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-2
Replication General Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4
Replication General Support Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4
Monitoring Replication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6
Maintaining a Court’s Application Software on the Replication Servers . . . . . . . . . . . . . . . . . . . . . . . .4-7
Replication of Files External to the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-15
Chapter 5
Public Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
PACER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
U.S. Party Case Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Public Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Chapter 6
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Application Security. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Document Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VeriSign Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Controlling Server Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 7
6-2
6-3
6-17
6-25
Conflict Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Conflict Checking Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Conflict List Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-2
District CM/ECF System Administrator’s Guide
Running the Conflict Checking Report Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-2
Chapter 8
Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Creating the Form Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3
Data Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-7
Using Data Properties in the Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-10
Developing Additional Data Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-12
JSP to Perl Forms Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-19
Creating Your Own Data Collectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-20
Chapter 9
Forms (Legacy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Forms Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Tag Library and Custom Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-3
Creating New Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-4
Conditional Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-5
Chapter 10
Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
check_extents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
clean. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
deltmp.pl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
dm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
hogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LargeDocuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
oncheck-cI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
setlockmode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
showlocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UpdateStats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
wait_for_informix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
whoson.pl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
wrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 11
Archiving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Archiving a Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restoring a Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring the Primary Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 12
11-2
11-3
11-4
11-5
copy_ecf_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Site Table Entries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Codes Table Entries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Completely Copied . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Partially Copied . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sealed Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Appendix A
08 Jul 2009
10-3
10-3
10-4
10-4
10-5
10-7
10-8
10-9
10-10
10-10
10-10
10-11
10-11
10-11
VerifyDocs Error Types by Category
Release 4.0.1
12-2
12-4
12-5
12-5
12-5
12-6
12-6
District CM/ECF System Administrator’s Guide
Appenidx B
08 Jul 2009
Court Listings
Release 4.0.1
CHAPTER
1
1
Introduction
In This Chapter
•
Overview
•
NetworkȱArchitecture
•
Softwareȱconfiguration
District CM/ECF System Administrator’s Guide
Overview
TheȱCaseȱManagement/ElectronicȱCaseȱFilesȱ(CM/ECF)ȱsystemȱdevelopedȱbyȱtheȱ
AdministrationȱOfficeȱisȱdesignedȱtoȱsupportȱtheȱUSȱbankruptcy,ȱdistrict,ȱandȱ
appellateȱcourts,ȱasȱwellȱasȱtheȱassociatedȱmembersȱofȱtheȱlegalȱcommunity.ȱȱCM/ECFȱ
supportsȱtheȱfullȱrangeȱofȱcaseȱmanagementȱprocesses,ȱtoȱincludeȱcaseȱopening,ȱ
docketȱeventȱentry,ȱcaseȱreporting,ȱcaseȱdataȱmanagement,ȱandȱadministrativeȱ
functions.ȱȱTheȱCM/ECFȱnetworkȱarchitectureȱandȱassociatedȱsoftwareȱenableȱsecureȱ
accessȱbyȱjudges,ȱcourtȱpersonnel,ȱattorneys,ȱandȱtheȱpublic.ȱ
PublicȱandȱattorneyȱaccessȱisȱviaȱtheȱInternet.ȱȱTheyȱuseȱaȱstandardȱWebȱbrowserȱtoȱ
connectȱtoȱtheȱoutsideȱWebȱserver.ȱȱȱTheȱHTMLȱformsȱproducedȱbyȱtheȱapplicationȱ
enableȱtheȱattorneysȱtoȱmakeȱECFȱrequests,ȱmakeȱqueries,ȱpayȱfees,ȱandȱattachȱ
documentsȱtoȱbeȱfiledȱforȱtheirȱcases.ȱȱAllȱdocumentsȱthatȱareȱsubmittedȱviaȱCM/ECFȱ
mustȱbeȱinȱAdobe’sȱPortableȱDocumentȱFormatȱ(PDF).
CourtȱaccessȱisȱviaȱtheȱUSȱCourtsȱinternalȱDataȱCommunicationsȱNetworkȱ(DCN).ȱȱ
PersonnelȱinȱtheȱcourtsȱlogȱintoȱCM/ECFȱoverȱthisȱnetworkȱandȱtheȱassociatedȱ
runtimeȱprogramsȱonȱtheȱinsideȱWebȱserverȱhandleȱtheirȱrequests.
Network Architecture
TheȱfollowingȱillustrationȱdepictsȱtheȱplacementȱofȱCM/ECFȱnetworkȱcomponentsȱ
andȱassociatedȱflowȱofȱdataȱbetweenȱthem.ȱEachȱofȱtheseȱcomponentsȱisȱdiscussedȱinȱ
theȱfollowingȱparagraphs.
08 Jul 2009
Release 4.0.1
1-2
District CM/ECF System Administrator’s Guide
Court Unit Site
Facilities
Inside Web-App,
Mid-App and
Database Servers
Local
LAN
DCN
Router
Building
Router
DCN
Ethernet
Hub
Outside
Web-App
Server
FRAD
PIX
Firewall
PacerNet
Internet
Frame Relay
Network
FRAD
FailSoft / Replication
Facilities
DCN
Router
Ethernet
Hub
Database
Replication Server
Public Access
OutSide Server
Internet
CM/ECFȱisȱpubliclyȱaccessibleȱfromȱtheȱInternet.ȱȱAnyȱauthorizedȱuser,ȱusuallyȱ
attorneys,ȱcanȱaccessȱtheȱsystemȱbyȱusingȱaȱstandardȱbrowserȱsuchȱasȱNetscape.ȱȱTheirȱ
CM/ECFȱformsȱareȱsubmittedȱthroughȱtheȱCommonȱGatewayȱInterfaceȱ(CGI)ȱ
recognizedȱbyȱInternetȱbrowsers.ȱ
Outside server
TheȱattorneysȇȱInternetȱtransactionsȱpassȱfirstȱthroughȱaȱfilteringȱrouterȱbeforeȱbeingȱ
acceptedȱforȱprocessingȱbyȱtheȱCM/ECFȱOutsideȱserver.ȱThisȱserverȱisȱoutsideȱ
08 Jul 2009
Release 4.0.1
1-3
District CM/ECF System Administrator’s Guide
CM/ECF’sȱfirewallȱandȱmustȱbeȱusedȱtoȱaccessȱtheȱcourt’sȱinternalȱserver.ȱTheȱOutsideȱ
serverȱrunsȱaȱWebȱserverȱ(Apache)ȱandȱapplicationȱsoftware.ȱȱTheȱTripwireȱproductȱisȱ
installedȱhereȱtoȱmonitorȱapplicationȱandȱsystemȱfiles.ȱTheȱOutsideȱserver’sȱsecurityȱisȱ
increasedȱbyȱaȱvarietyȱofȱsettings/actionsȱmadeȱwhenȱCM/ECFȱisȱinstalled.ȱȱForȱmoreȱ
information,ȱseeȱtheȱchapterȱonȱ“InstallingȱCM/ECFȱonȱtheȱOutsideȱServer”ȱinȱtheȱ
documentȱCM/ECFȱInstallationȱGuideȱforȱDistrictȱCourts.
Inside server
TheȱInsideȱserverȱisȱaȱmachineȱrunningȱaȱWebȱserverȱ(Apache),ȱapplicationȱsoftwareȱ
andȱtheȱInformixȱDBMS.ȱTheȱInsideȱserverȱisȱinsideȱtheȱECFȱfirewallȱandȱcanȱonlyȱbeȱ
accessedȱfromȱtheȱDCN.ȱȱTripwireȱisȱinstalledȱhereȱtoȱmonitorȱapplicationȱfiles.ȱForȱ
moreȱinformation,ȱseeȱtheȱchapterȱonȱ“InstallingȱCM/ECFȱonȱtheȱInsideȱServer”ȱinȱtheȱ
documentȱCM/ECFȱInstallationȱGuideȱforȱȱDistrictȱCourts.
DCN
TheȱDCNȱisȱownedȱandȱmaintainedȱbyȱtheȱUSȱCourts.ȱȱCourtȱtransactionsȱareȱsentȱ
overȱthisȱnetworkȱtoȱtheȱInsideȱserver.ȱ
Replication server
Informix’sȱHighȱAvailabilityȱDataȱReplicationȱfacilityȱcopiesȱeveryȱmodificationȱtoȱtheȱ
CM/ECFȱInformixȱDBMSȱinstanceȱtoȱaȱdifferentȱmachine.ȱȱTheȱdatabaseȱonȱtheȱ
secondaryȱmachineȱisȱconfiguredȱidenticallyȱtoȱtheȱoneȱonȱtheȱprimaryȱmachine.ȱTheȱ
replicationȱdatabaseȱcanȱbeȱusedȱforȱaccessȱtoȱtheȱCM/ECFȱdataȱifȱtheȱprimaryȱ
machineȱbecomesȱunavailable.ȱȱPleaseȱseeȱtheȱ“Replication”ȱsectionȱofȱthisȱdocumentȱ
forȱdetailsȱofȱsettingȱupȱreplication.
Software configuration
TheȱȱDistrictȱCM/ECFȱenvironmentȱconsistsȱofȱtheȱfollowingȱsoftwareȱproducts:
— Informixȱ–ȱtheȱdatabaseȱmanagementȱsystem,ȱonȱtheȱInsideȱserver.ȱȱTheȱ
CM/ECFȱserverȱisȱdeliveredȱwithȱInformixȱinstalledȱ(butȱnotȱconfigured).
— Apacheȱȱ–ȱtheȱWebȱserverȱonȱtheȱInsideȱandȱOutsideȱservers.ȱTheȱsoftware,ȱ
whichȱcomesȱwithȱtheȱoperatingȱsystem,ȱisȱlocatedȱinȱ/etc/httpd.
— Tripwireȱ–ȱtoȱdetectȱanyȱchangesȱmadeȱtoȱsystemȱorȱapplicationȱfiles,ȱonȱtheȱ
InsideȱandȱOutsideȱservers.ȱȱTheȱtripwireȱbinaryȱisȱlocatedȱinȱ/usr/sbin.
08 Jul 2009
Release 4.0.1
1-4
District CM/ECF System Administrator’s Guide
— WebȱapplicationȱsoftwareȱcomponentsȱwhichȱresideȱonȱbothȱtheȱInsideȱandȱ
Outsideȱservers,ȱinȱtheȱ/opt/DCECFȱdirectory.
— ServerȱapplicationȱsoftwareȱcomponentsȱwhichȱresideȱonlyȱonȱtheȱInsideȱ
server,ȱinȱtheȱ/opt/DCECFȱdirectory.
— Tomcat,ȱaȱWebȱserverȱthatȱworksȱwithȱApacheȱonȱtheȱInsideȱserverȱtoȱmanageȱ
theȱJavaȱservletsȱusedȱinȱtheȱproductionȱofȱnotices.ȱ
SeeȱtheȱȱDistrictȱProductȱPageȱforȱmoreȱinformation:ȱ
http://www.aotx.ao.dcn/dc/
08 Jul 2009
Release 4.0.1
1-5
CHAPTER
2
System Administration
In This Chapter
•
RCȱscripts
•
Cronȱjobsȱ
•
BackupȱandȱRecovery
•
LogicalȱLogs
•
ȱTroubleshootingȱ
•
MonitoringȱSystemȱandȱApplicationȱLogs
•
SourceȱCodeȱModification
•
MonitoringȱDatabaseȱSpaceȱ
•
Filesȱinȱtheȱ/tmpȱdirectory
2
District CM/ECF System Administrator’s Guide
RC scripts
ManyȱofȱtheȱdayȬtoȬdayȱoperationsȱareȱperformedȱatȱmachineȱstartup/shutdownȱbyȱRCȱscripts.ȱȱ
TheȱtableȱbelowȱlistsȱtheȱvariousȱrcȱscriptsȱinstalledȱonȱtheȱInsideȱserver,ȱtheirȱlocationȱandȱ
function.ȱȱȱȱȱ
Program
Location
Purpose
Linked To
S85httpd
K15httpd
/etc/rc3.d
/etc/rc0.d
starts up httpd daemon
stops httpd daemon
/etc/init.d/httpd
S99InfxECF
K01InfxECF
/etc/rc3.d
/etc/rc0.d
starts up Informix
stops Informix
/etc/init.d/InfxECF
S96-tomcat
K96-tomcat
/etc/rc3.d
/etc/rc0.d
starts up Tomcat
stops Tomcat
/etc/init.d/ECF-tomcat
S99ECF-live
K01ECF-live
/etc/rc3.d
/etc/rc0.d
enables access to the live database
disables access to the live database
/etc/init.d/ECF-live
S99ECF-test
K01ECF-test
/etc/rc3.d
/etc/rc0.d
enables access to the test database
disables access to the test database
/etc/init.d/ECF-test
S99ECF-train
K01ECF-train
/etc/rc3.d
/etc/rc0.d
enables access to the train database
disables access to the train database
/etc/init.d/ECF-train
S99fastServ
K01fastServ
/etc/rc3.d
/etc/rc0.d
starts fastServ
stops fastServ
/etc/init.d/fastServ
S99RunSyncDocuments
K01RunSyncDocuments
/etc/rc3.d
/etc/rc0.d
Starts document processing between
Inside server and replication server.
Stops document processing between
Inside server and replication server.
/etc/init.d/RunSyncDocuments
S99RunPacerSendDaemon
K01RunPacerSendDaemon
/etc/rc3.d
/etc/rc0.d
Starts PacerSendDaemon.
Stops PacerSendDaemon.
/etc/init.d/RunPacerSendDaemon
Located in
/opt/DCECF/live/server/server.
PacerSendDaemon retrieves PACER
billing data from the pacer_billing table
and transmits it to the PACER Service
Center.
08 Jul 2009
Release 4.0.1
2-2
District CM/ECF System Administrator’s Guide
TheȱrcȱscriptsȱlistedȱbelowȱareȱalsoȱrunȱonȱtheȱOutsideȱserver:ȱ
Program
Location
Purpose
Linked To
S85httpd
K15httpd
/etc/rc3.d
/etc/rc0.d
/etc/rc5.d
starts up httpd daemon
stops httpd daemon
/etc/init.d/httpd
S99fastServ
K01fastServ
/etc/rc3.d
/etc/rc0.d
starts fastServ
stops fastServ
/etc/init.d/fastServ
08 Jul 2009
Release 4.0.1
2-3
District CM/ECF System Administrator’s Guide
Cron jobs
CM/ECFȱcronȱentriesȱareȱinstalledȱinȱseparateȱfilesȱinȱ/etc/cron.d.ȱȱThereȱareȱfourȱtypesȱ
ofȱcronȱentriesȱusedȱbyȱtheȱCM/ECFȱapplication
•
Cronȱjobsȱforȱeachȱdatabase
•
Cronȱjobsȱforȱtheȱliveȱdatabase
•
CronȱjobsȱforȱtheȱInformixȱinstance
•
Cronȱjobsȱforȱutilities
Cron jobs for each database
Theȱtableȱbelowȱlistsȱcronȱjobsȱthatȱareȱrunȱforȱeachȱdatabase.
File in /etc/cron.d
AutoConfCronAll.live
AutoConfCronAll.test
AutoConfCronAll.train
Runs the Conflict Checking program daily for all judges for their entire
caseload. The report is e-mailed to designated recipients.
AutoConfCronConflict.live
AutoConfCronConflict.test
AutoConfCronConflict.train
Examines the conflict lists to ensure that every judge has a list and that
the list has been updated in the number of days specified in the site
table entry Recuse_List_Overdue. Runs monthly.
AutoConfCronDaily.live
AutoConfCronDaily.test
AutoConfCronDaily.train
Runs the Conflict Checking program nightly for all judges for entries
made to cases today.
CleanFiles.live
CleanFiles.test
CleanFiles.train
Removes old files from the cache directory.
DelFreeMail.live
DelFreeMail.test
DelFreeMail.train
Deletes records which allow a free view of filed documents. (expire
after 30 days). Runs daily.
MailNotify.live
MailNotify.test
MailNotify.train
Sends the summary report of filings to CM/ECF users daily.
ScheduledReportsDaemon.live
ScheduledReportsDaemon.test
ScheduledReportsDaemon.train
08 Jul 2009
Program
Schedules reports to be run on a periodic basis. Runs hourly.
Release 4.0.1
2-4
District CM/ECF System Administrator’s Guide
Cron jobs for the live database
Theȱtableȱbelowȱlistsȱcronȱjobsȱthatȱareȱrunȱforȱtheȱliveȱdatabaseȱonly.
File in /etc/cron.d
Program
DelPacerBill.live
Runs PacerBillDelete.pl daily which removes pacer_billing records that are over
120 days old and have already been sent to the PACER Service Center (PSC).
PacerSendDaemonCron
Runs every two hours to ensure the PacerSendDaemon program is running and
restarts it if it is not running.
ReportDocsDaily
Provides a daily summary report of errors identified by the VerifyDocs program
from the overnight run.
ReportDocsWeekly
Provides a weekly summary report of all errors identified by the VerifyDocs program since the last run.
SyncDocumentsCron
Controls the synchronization of file systems storing documents on primary and
replication servers. Runs hourly.
VerifyDocs
Checks daily for PDF documents in the file system (and live database) for errors
(such as incorrect electronic signatures).
Cron jobs for the Informix instance
ListedȱbelowȱareȱcronȱjobsȱthatȱareȱrunȱweeklyȱonȱtheȱInformixȱinstance.
File in /etc/cron.d
Program
check_extents
Lists tables in each Informix database that have more than 150 extents.
dm
Produces a disk utilization report that shows the amount of free space and %
used in each dbspace.
oncheck
Runs oncheck-cI to check the indexes in all Informix databases and attempts to
repair any that are corrupted.
UpdateStats
For each Informix database, updates Informix statistical information for all tables
and indices to enhance the performance of the SQL optimizer.
Cron jobs for utilities
ListedȱbelowȱareȱutilityȱfilesȱthatȱareȱinstalledȱonȱbothȱtheȱInsideȱandȱOutsideȱservers.
File in /etc/cron.d
clean
08 Jul 2009
Program
Removes old .PDF files from /tmp if not recently accessed, and removes others
if /tmp is > 20% full. Runs every 30 minutes.
Release 4.0.1
2-5
District CM/ECF System Administrator’s Guide
File in /etc/cron.d
Program
clean 0
Removes all old files from /tmp nightly.
deltmp
Deletes nightly all files older than 14 days which reside in certain /tmp subdirectories.
Modifying cron jobs
Severalȱcronȱfilesȱareȱinstalledȱwithȱtheirȱcronȱstatementsȱdisabled.ȱTheyȱinclude:
•
AutoConfCronConflict.live/AutoConfCronConflict.test/AutoConfCronConflict.train
•
AutoConfCronDaily.live/AutoConfCronDaily.test/AutoConfCronDaily.train
•
AutoConfCronAll.live/AutoConfCronAll.test/AutoConfCronAll.train
To modify cron jobs
Toȱenableȱtheȱcronȱjobs,ȱorȱtoȱmodifyȱtheȱtimeȱwhenȱtheȱjobȱisȱscheduledȱtoȱrun,ȱyouȱ
mustȱbeȱrootȱuser.ȱChangeȱtoȱtheȱ/etc/cron.dȱdirectory.ȱFindȱtheȱfileȱyouȱwishȱtoȱ
modifyȱandȱopenȱitȱwithȱaȱtextȱeditor.ȱToȱenableȱaȱcronȱjob,ȱsimplyȱremoveȱtheȱpoundȱ
signȱinȱfrontȱofȱtheȱcronȱstatement.ȱDoȱNOTȱremoveȱtheȱPATHȱstatementȱonȱtheȱfirstȱ
lineȱofȱtheȱfile.ȱMakeȱanyȱnecessaryȱchangesȱtoȱtheȱscheduledȱtime,ȱifȱany,ȱandȱsaveȱtheȱ
file.
PATH=$PATH:/bin:/usr/bin:/usr/sbin:/opt/util
#30 17 * * * root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e dbname
-r '/opt/DCECF/[live | test | train]/server/server/AutoConfCron.pl -d dbname
-m 2000 -p /opt/DCECF/[live | test | train]/server/server >>
/var/log/ecf/AutoConfCronAll.dbname.log 2>&1'
08 Jul 2009
Release 4.0.1
2-6
District CM/ECF System Administrator’s Guide
Backup and Recovery
Referȱtoȱtheȱappropriateȱbackupȱdocumentation:
Backup Type
Document
Link
Informix backups
“Using Lbar to Back Up Informix on Linux”
http://www.aotx.ao.dcn/informix
Inside server backups
“Using ARCServe to Back Up Files and Filesystems
on Linux”
http://www.aotx.ao.dcn/linux
Outside server backups
“Configuring and Using the Judiciary’s Outback Utility
for CM/ECF Linux Servers”
http://www.aotx.ao.dcn/linux
Logical Logs
WhenȱInformixȱloggingȱisȱturnedȱonȱ(trueȱforȱallȱCM/ECFȱdatabases),ȱeveryȱ
transactionȱappliedȱtoȱtheȱdatabaseȱisȱalsoȱwrittenȱtoȱaȱ“logicalȱlog”ȱonȱdisk.ȱTheȱ
initialȱsizeȱandȱnumberȱofȱlogȱfilesȱareȱspecifiedȱinȱtheȱ“onconfig”ȱconfigurationȱfile.ȱȱ
Whenȱtheȱlastȱfileȱhasȱbeenȱfilled,ȱtheȱInformixȱdatabaseȱserverȱcanȱreuseȱoneȱofȱtheȱ
olderȱfilesȱifȱitȱhasȱbeenȱbackedȱup.ȱȱ[Ifȱlogȱfilesȱareȱnotȱbackedȱup,ȱspaceȱforȱ
recordingȱtransactionsȱisȱeventuallyȱconsumed,ȱaȱlogȱfileȱfullȱmessageȱappearsȱinȱtheȱ
messageȱlog,ȱandȱdatabaseȱactivityȱisȱsuspended.]ȱȱ
Forȱmoreȱinformation,ȱseeȱ“UsingȱLbarȱtoȱBackȱUpȱInformixȱonȱLinux”ȱat:
http://www.aotx.ao.dcn/linux/
08 Jul 2009
Release 4.0.1
2-7
District CM/ECF System Administrator’s Guide
Troubleshooting
Theseȱreports,ȱavailableȱinȱtheȱapplicationȱonȱtheȱ“SystemȱAdministratorȱReports”ȱ
menu,ȱmayȱbeȱhelpfulȱwhenȱproblemsȱarise:
Report
Function
Current Users
Lists users whose logins have not expired
Security Incident Report
Lists unsuccessful logins by date
System Log Files
List entries in selected system logs such as those for
fastServ and for document verification
System Transactions
Displays a summary of docket activity and other transactions
Youȱmayȱalsoȱfindȱusefulȱinformationȱbyȱrunningȱtheȱfollowingȱcommandsȱonȱtheȱ
Insideȱserver:
Command
df -h
to check free space in the file systems
dm -s
to check free space in the database
onstat -l
to check if the logical logs are full
onstat -m
to look for Informix error messages
ps -eaf | grep ECFdaemon
to check if daemon processes are running
ps -eaf | grep oninit
to check if “oninit” processes are running
ps -eaf | grep OutServ
to check if “OutServ” processes are running
ps -eaf | grep thttpd
to check if “fastServ” processes are running (also run
on Outside server)
ps -eaf | grep httpd
to check if Apache is running
view /var/log/messages
08 Jul 2009
Function
to look for application error messages
Release 4.0.1
2-8
District CM/ECF System Administrator’s Guide
Monitoring System and Application Logs
Reviewing the Message Log
Theȱmessageȱlogȱstoresȱdiagnosticȱandȱadministrativeȱmessagesȱaboutȱtheȱdatabaseȱ
server.ȱToȱreviewȱmessages,ȱrunȱtheȱInformixȱcommand:ȱȱ
onstat –m
Thisȱcommandȱdisplaysȱtheȱlastȱ20ȱmessageȱlogȱentries.ȱForȱmoreȱextensiveȱmessageȱ
logȱanalysis,ȱopenȱtheȱmessageȱfileȱusingȱviȱ(theȱfileȱnameȱandȱlocationȱareȱdisplayedȱ
atȱtheȱbeginningȱofȱtheȱ“onstat”ȱoutput).ȱ
Theȱmessageȱlogȱfileȱcontainsȱmessagesȱaboutȱdatabaseȱactivities,ȱprocesses,ȱandȱ
errors.ȱCommonlyȱseenȱinȱtheȱmessageȱlogȱfileȱareȱmessagesȱonȱinstanceȱstartup,ȱ
backups,ȱlogȱactivityȱandȱanyȱsystemȱparameterȱvalueȱchange.ȱMostȱdatabaseȱerrorsȱ
areȱalsoȱwrittenȱtoȱtheȱmessageȱlogȱfile.ȱȱTherefore,ȱaȱdailyȱreviewȱofȱtheȱmessageȱfileȱ
canȱhelpȱidentifyȱsourcesȱofȱerrors.ȱȱInȱsomeȱcases,ȱtheȱmessageȱlogȱfileȱmayȱbeȱtheȱ
onlyȱplaceȱtoȱdiscoverȱanȱerrorȱthatȱmayȱnotȱinterruptȱtheȱoperationȱofȱtheȱdatabase,ȱ
butȱthatȱcouldȱleadȱtoȱaȱcriticalȱproblemȱlater.
NOTE Not every message in the file is a signal of a problem. In fact, most messages in
the file are simply notifications of normal Informix operations.
ResolvingȱerrorsȱthatȱappearȱinȱtheȱInformixȱlogȱfilesȱcanȱvaryȱinȱcomplexity,ȱ
dependingȱonȱtheȱerror.ȱSeeȱInformixȬOnȱLineȱDynamicȱServerȱAdministrator’sȱ
GuideȱVersionȱ7.2,ȱChapterȱ40:ȱ“OnlineȱMessageȱLogȱMessages”.
Monitoring Application Logs
LogsȱkeptȱbyȱtheȱCM/ECFȱapplicationȱareȱlocatedȱinȱtheȱ/var/log/ecfȱdirectoryȱonȱbothȱ
theȱinsideȱandȱoutsideȱservers.ȱȱ
ManyȱofȱtheseȱlogsȱcanȱbeȱaccessedȱeasilyȱfromȱtheȱCM/ECFȱapplication.ȱȱOnȱtheȱ
UtilitiesȱMenu,ȱselectȱSystemȱAdministratorȱReports/SystemȱLogȱFiles.ȱȱTheȱlogsȱ
whichȱareȱnormallyȱavailableȱonȱtheȱinsideȱserverȱ(fromȱaȱstandardȱinstallationȱofȱ
CM/ECF)ȱareȱshownȱhereȱ(yourȱdatabaseȱnameȱwillȱappearȱinsteadȱofȱ“bk1”):
08 Jul 2009
Release 4.0.1
2-9
District CM/ECF System Administrator’s Guide
Severalȱofȱtheȱlogȱfilesȱareȱproducedȱbyȱjobsȱlistedȱinȱtheȱ“Cronȱjobs”ȱsectionȱofȱthisȱ
document:
Log File
Purpose
AutoConfAll.dbname.log
Results of the AutoConfAll cron job that runs the Conflict Checking Report for all judges for their entire
caseload.
AutoConfConflict.dbname.log
Results of the AutoConfConfict cron job that runs the
Conflict Checking Report for all judges for today’s
entries.
AutoConfDaily.dbname.log
Results of the AutoConfDaily cron job checks the conflict list to see that each judge has a conflict list and
that the list has been updated in the number of days
set in the site table entry Recuse_List_Overdue.
CopyDocsToFile.courtID_dbname.log
results of the CopyDocsToFile cron job
MailNotify.courtID_dbname.log
output of the MailNotify.pl cron job
DelFreeMail.courtID_dbname.log
results of the DelFreeMail.pl cron job
Theȱfollowingȱlistsȱadditionalȱlogȱfilesȱthatȱcanȱbeȱaddedȱsoȱthatȱtheyȱcanȱbeȱeasilyȱ
viewed:ȱȱ
•
/var/log/informixȱlogs
•
/var/log/httpdȱlogsȱ
•
/var/log/messagesȱ
Toȱaddȱtheȱlogȱfilesȱlistedȱabove,ȱeditȱ/var/log/ecf/loglocations.ȱȱEachȱlineȱspecifiesȱaȱ
labelȱtoȱappearȱonȱtheȱmenuȱabove,ȱandȱtheȱfullȱpathȱnameȱofȱtheȱlogȱfile,ȱseparatedȱbyȱ
08 Jul 2009
Release 4.0.1
2-10
District CM/ECF System Administrator’s Guide
aȱpipe.ȱȱAddȱlinesȱlikeȱthoseȱshownȱbelowȱifȱyouȱwantȱtheȱapplicationȱlogsȱforȱtheȱlive,ȱ
test,ȱandȱtrainingȱdatabasesȱtoȱbeȱonȱtheȱlist.
Application warning messages for live database|/var/log/ecf/live.crit
Application error messages for live database|/var/log/ecf/live.error
Application informational messages for live database|/var/log/ecf/live.info
Application warning messages for test database|/var/log/ecf/testing.crit
Application error messages for test database|/var/log/ecf/testing.error
Application informational messages for test
database|/var/log/ecf/testing.info
Application warning messages for training database|/var/log/ecf/training.crit
Application error messages for training database|/var/log/ecf/training.error
Application informational messages for training
database|/var/log/ecf/training.info
NOTE The /var/log/ecf files shown in the example above are created when the
application is installed, and the appropriate entries in /etc/syslog.conf are made. An
additional group of files is set up which will only be used if you create and use a
development database (development.crit, development.error, development.info).
Entriesȱinȱtheȱ“info”,ȱ“errror”,ȱandȱ”crit”ȱlogsȱareȱmadeȱforȱproblemsȱthatȱtheȱ
applicationȱcodeȱanticipates,ȱsuchȱasȱsecurityȱviolationsȱorȱmissingȱfiles.ȱAȱproblemȱ
consideredȱtoȱbeȱcritical,ȱsuchȱasȱaȱsecurityȱviolationȱorȱdataȱcorruption,ȱisȱrecordedȱinȱ
allȱthreeȱlogs;ȱanȱoccurrenceȱthatȱtheȱapplicationȱcategorizesȱasȱaȱnonȬcriticalȱerror,ȱ
suchȱasȱaȱmissingȱCodesȱtableȱentry,ȱisȱrecordedȱinȱbothȱtheȱerrorȱandȱinfoȱlogs;ȱanȱ
informationalȱmessageȱisȱstoredȱonlyȱinȱtheȱinfoȱlog.ȱErrorsȱthatȱwereȱnotȱanticipatedȱ
byȱtheȱapplicationȱcodeȱresultȱinȱentriesȱinȱ/var/log/ecf/server.dbname.logȱ(forȱexample,ȱ
Perlȱorȱdatabaseȱerrors).
Monitoring Email Messages
WhenȱCM/ECFȱisȱinstalled,ȱanȱemailȱaddressȱisȱspecifiedȱtoȱwhichȱaȱvarietyȱofȱstatusȱ
andȱerrorȱmessagesȱareȱsent.ȱBeȱsureȱtoȱcheckȱthisȱemailȱaccountȱregularly.
TheȱCM/ECFȱapplicationȱincludesȱaȱrequiredȱSiteȱtableȱentryȱ(MailUser)ȱwhichȱ
specifiesȱaȱreturnȱaddressȱshownȱonȱtheȱelectronicȱNoticeȱofȱFiling.ȱThisȱemailȱaccountȱ
receivesȱmessagesȱfromȱCM/ECFȱusers,ȱandȱsystemȬgeneratedȱmessagesȱaboutȱbadȱ
emailȱaddressesȱforȱCM/ECFȱusers.ȱȱIfȱyouȱareȱresponsibleȱforȱthisȱaccount,ȱcheckȱitȱ
frequently.
08 Jul 2009
Release 4.0.1
2-11
District CM/ECF System Administrator’s Guide
Source Code Modification
TheȱAOȱprovidesȱstandardȱCM/ECFȱsourceȱcodeȱtoȱfederalȱcourtsȱforȱtheȱprimaryȱ
purposeȱofȱenablingȱthoseȱcourtsȱtoȱoperateȱtheȱCM/ECFȱsystem.ȱTheȱAOȱwillȱfullyȱ
supportȱtheȱstandardȱsourceȱcodeȱforȱthoseȱcourtsȱthatȱimplementȱCM/ECFȱinȱ
accordanceȱwithȱtheȱproject’sȱplanȱandȱschedule.ȱHowever,ȱtheȱAOȱdoesȱnotȱhaveȱ
sufficientȱresourcesȱtoȱassistȱanyȱcourt,ȱorȱsupportȱtheȱproductȱofȱanyȱeffortȱoutsideȱ
theȱAO,ȱtoȱmodifyȱtheȱstandardȱsourceȱcode.ȱTherefore,ȱwhileȱcourtsȱmayȱhaveȱtheȱ
abilityȱtoȱmodifyȱtheȱsourceȱcode,ȱtheȱAOȱneitherȱrecommendsȱnorȱencouragesȱcourtȱ
modifications.
SoftwareȱthatȱextractsȱinformationȱfromȱtheȱCM/ECFȱdatabase,ȱalsoȱknownȱasȱ
reportingȱorȱreadȬonlyȱsoftware,ȱandȱsoftwareȱthatȱupdatesȱtheȱCM/ECFȱdatabaseȱwillȱ
beȱavailableȱforȱcourtsȱtoȱcustomizeȱtoȱsuitȱtheirȱownȱneeds.ȱSecurity,ȱstatisticalȱ
reporting,ȱsealedȱcaseȱprocessingȱsoftware,ȱconflictȱscreeningȱalgorithm,ȱnoticeȱofȱ
electronicȱfiling,ȱandȱpublicȱaccessȱsoftwareȱ(userȱauthentication,ȱuniversalȱlogin,ȱ
“oneȬfreeȬlook”ȱtoȱelectronicȱdocuments,ȱandȱbilling),ȱareȱnotȱtoȱbeȱmodifiedȱforȱlocalȱ
use.ȱSourceȱcodeȱfilesȱareȱavailableȱtoȱprovideȱcourtȱsystemsȱstaffȱanȱopportunityȱtoȱ
educateȱthemselvesȱonȱtheȱdesignȱandȱmethodologyȱofȱtheȱCM/ECFȱsystem.
Moreȱdetailedȱinformation,ȱasȱwellȱasȱlistsȱofȱ“noȬmodify”ȱsoftwareȱcanȱbeȱfoundȱat:
http://jnet.ao.dcn/it/ecf/source-code.html
08 Jul 2009
Release 4.0.1
2-12
District CM/ECF System Administrator’s Guide
Monitoring Database Space
AnȱInformixȱdbspaceȱisȱaȱlogicalȱgroupingȱofȱphysicalȱchunks,ȱwhichȱareȱtheȱstorageȱ
structuresȱofȱtheȱdatabase.ȱȱInformixȱsystemȱlevelȱinformationȱandȱobjectsȱsuchȱasȱ
tables,ȱindexes,ȱphysicalȱandȱlogicalȱlogsȱareȱstoredȱinȱchunks.ȱMonitoringȱtheȱusageȱ
ofȱtheȱchunksȱisȱcriticalȱtoȱensureȱthatȱtheyȱdoȱnotȱrunȱoutȱofȱspaceȱandȱthatȱtheyȱareȱ
online.
Theȱdmȱcronȱjobȱrunsȱeachȱweekȱtoȱreportȱonȱdiskȱusageȱ(usesȱtheȱ“dm”ȱutility,ȱ
describedȱinȱtheȱUtilitiesȱsectionȱofȱthisȱdocument).ȱȱTheȱoutputȱisȱmailedȱtoȱtheȱ
SystemȱAdministrator.ȱCheckȱtheȱpercentageȱofȱspaceȱusedȱinȱtheȱdbspace;ȱifȱitȱisȱ
moreȱthanȱ80Ȭ90%,ȱyouȱmustȱaddȱchunksȱtoȱtheȱdbspace.ȱ
Adding a new chunk
EmailȱSDSDȬSBȱReplicationȱTeamȱ(cmȬecf_rep_ops@aotx.uscourts.gov)ȱwithȱdetailsȱofȱ
theȱdatabaseȱchunksȱyouȱneedȱcreated.ȱTheȱinitialȱchunksȱareȱnamedȱcourtID_db1ȱandȱ
courtID_db2,ȱsoȱthatȱpatternȱwillȱbeȱfollowedȱinȱnamingȱnewȱchunks.ȱȱItȱisȱessentialȱ
forȱthisȱstepȱtoȱbeȱdoneȱbeforeȱyouȱcreateȱtheȱchunkȱonȱyourȱmachine.ȱTheȱSDSDȬSBȱ
ReplicationȱTeamȱwillȱsendȱemailȱconfirmationȱafterȱcreatingȱandȱlinkingȱtheȱnewȱ
chunksȱonȱtheȱreplicationȱserver.
Afterȱyouȱhaveȱconfirmationȱthatȱtheȱchunkȱhasȱbeenȱcreatedȱonȱtheȱreplicationȱ
machine,ȱcreateȱanȱemptyȱfileȱ(asȱuserȱInformix)ȱonȱyourȱdatabaseȱmachineȱ(theȱ
primaryȱmachine)ȱwithȱtheȱsameȱname,ȱasȱshownȱinȱtheȱfollowingȱexample.
Additionalȱinformationȱcanȱbeȱfoundȱat:
ȱȱhttp://www.aotx.ao.dcn/support/DB/IFX/addchunk.asp.
To add a new chunk
1. TheȱSDSDȬSBȱReplicationȱTeamȱwillȱprovideȱconfirmationȱtheȱnewȱchunksȱwereȱ
createdȱandȱlinkedȱonȱtheȱreplicationȱserver.ȱȱ
2. Changeȱdirectory:
cd /data/chunks1/courtID/livedbs
3. Createȱanȱemptyȱfile:
touch live_db#
4. Changeȱpermissionsȱonȱtheȱfile:
chmod 660 live_db#
08 Jul 2009
Release 4.0.1
2-13
District CM/ECF System Administrator’s Guide
5. Changeȱownerȱandȱgroupȱofȱtheȱfile:
chown informix:informix live_db#
6. Createȱaȱsymbolicȱlink:
ln -s /data/chunks1/courtID/livedbs/live_db# /opt/informix/links/courtID/live/live_db#
7. Useȱtheȱonspacesȱcommandȱtoȱaddȱtheȱnewȱchunkȱ(2ȱgigabytes):ȱ
onspaces -a livedb -p /opt/informix/links/courtID/live/live_db# -o 0 -s 2000000
Files in the /tmp directory
Theȱ“clean”ȱscriptȱrunȱbyȱcronȱremovesȱfilesȱfromȱ/tmpȱwhenȱthatȱdirectoryȱbecomesȱ
moreȱthanȱ20%ȱfull.ȱȱTheȱlistȱbelowȱshowsȱsomeȱofȱtheȱtypesȱofȱfilesȱwrittenȱtoȱ/tmpȱbyȱ
theȱapplicationȱsoftware.ȱȱȱTheȱcourtIDȱ(e.g.,ȱȱtxwd)ȱisȱincludedȱinȱtheȱfileȱname.
Format
416695415039062
context files which allow the application to progress from screen to screen
while remembering what the user has entered/done
416695415039062.LOCK
lock files created while a context file is being generated
416695415039062courtID
context files that have been copied to the database server
a9925315734
document files, including .PDF, text, and HTML receipts
a9925315734courtID
document files that have been transferred to the database machine
252378-0-courtID.pdf
08 Jul 2009
Description of file
cached .PDF files -- the first segment is the document ID, the second is the
sequence number, and the third is the database name.
Release 4.0.1
2-14
CHAPTER
3
3
Enhanced Document Processing
In This Chapter
•
Overview
•
ReplicatingȱTheȱFiles
•
DatabaseȱUpdates
•
CreatingȱDocumentȱHomeȱDirectories
•
DocumentȱCaching
District CM/ECF System Administrator’s Guide
Overview
WhenȱaȱdocumentȱisȱsubmittedȱtoȱCM/ECF,ȱitȱisȱwrittenȱdirectlyȱtoȱtheȱfilesystemȱofȱ
theȱInsideȱprimaryȱserver.ȱItȱisȱwrittenȱtoȱtheȱdirectoryȱwhoseȱnameȱconsistsȱofȱtheȱ
currentȱdateȱ(YYYYMMDD)ȱconcatenatedȱtoȱtheȱbaseȱspecifiedȱinȱtheȱdocument_homeȱ
table.ȱTheȱlocationȱdependsȱonȱtheȱdateȱatȱtheȱtimeȱtheȱdocumentȱfileȱisȱwritten,ȱnotȱonȱ
theȱdateȱtheȱtransactionȱwasȱstarted.
TheȱEnhancedȱDocumentȱprocessȱusesȱtheȱdirectoryȱdefinedȱinȱdh_root_directoryȱofȱȱ
document_homeȱwhereȱdh_activeȱ=ȱ‘Y’.ȱIfȱtheȱcurrentȱdateȱdirectoryȱdoesȱnotȱexistȱinȱ
theȱdocument_homeȱdirectory,ȱitȱwillȱbeȱcreated.ȱTheȱnamesȱofȱcaseȬrelatedȱdocumentȱ
filesȱwillȱfollowȱthisȱnamingȱconvention:
dbname.cs_office.cs_year.cs_type.cs_number.dm_id.dm_seq.
Theȱnamesȱofȱotherȱdocumentȱfilesȱwillȱbeȱinȱtheȱformat:
dbname.dm_id.dm_seq.
Theȱfullȱpathȱforȱtheȱdocumentȱfileȱwillȱthenȱbeȱwrittenȱinȱtheȱdm_doiȱfieldȱofȱtheȱ
appropriateȱdocumentȱtableȱrecord.
EnhancedȱDocumentȱProcessingȱdoesȱnotȱuseȱtheȱ“balancedȬtree”ȱapproachȱusedȱ
previously.ȱTheȱ“balancedȬtree”ȱapproachȱusedȱaȱcomplexȱalgorithmȱtoȱspreadȱ
documentsȱacrossȱfilesystems.ȱIfȱthereȱisȱȱmoreȱthanȱoneȱrecordȱinȱtheȱtableȱwhereȱ
dh_active=’Y’,ȱonlyȱoneȱrecordȱwillȱbeȱselectedȱandȱallȱotherȱdocument_homeȱrecordsȱ
ignored.ȱDocumentsȱwillȱbeȱwrittenȱtoȱtheȱsameȱdirectoryȱuntilȱtheȱfilesystemȱ
becomesȱfull.ȱAtȱthatȱpoint,ȱdh_activeȱmustȱbeȱmanuallyȱsetȱtoȱ‘N’,ȱandȱanotherȱ
document_homeȱrecordȱwhereȱdh_active=’Y’ȱmustȱbeȱcreated,ȱifȱoneȱdoesn’tȱalreadyȱ
exist.
NOTE Enhanced document processing uses the "SELECT FIRST" clause to select the
first row that it finds in the table when determining what document_home record to use.
Without a specific ORDER BY clause, the Informix query result depends on the query plan
that the optimizer chooses. In other words, it does not use FIFO order, instead it uses an
algorithm that will consistently determine the first record in the table. To find the first record
in the document_home table run this SQL query: select first 1 dh_root_directory from
document_home where dh_active=’Y’;
Whenȱaȱdocumentȱisȱdeletedȱusingȱtheȱapplication,ȱtheȱdeleteȱmethodȱforȱtheȱ
documentȱobjectȱwillȱdeleteȱtheȱdocumentȱfromȱtheȱfilesystem,ȱaddȱtheȱfullȱpathȱofȱtheȱ
documentȱtoȱtheȱdeleted_documentsȱtableȱandȱthenȱdeleteȱtheȱrowȱfromȱtheȱ
documentȱtable.
08 Jul 2009
Release 4.0.2
3-2
District CM/ECF System Administrator’s Guide
Replicating The Files
SyncDocuments
TheȱreplicationȱofȱfilesȱisȱcontrolledȱbyȱaȱprogramȱcalledȱSyncDocumentsȱ(locatedȱinȱ
/opt/util),ȱaȱ“daemon”ȱwhichȱwillȱsynchronizeȱtwoȱorȱmoreȱareasȱonȱtwoȱdifferentȱ
servers,ȱaȱcourt’sȱInsideȱserverȱandȱit’sȱreplicationȱserver.ȱȱItȱusesȱrsyncȱwhichȱkeepsȱaȱ
remoteȱdirectoryȱupȬtoȬdateȱwithȱaȱlocalȱone.ȱȱSyncDocumentsȱisȱstartedȱ(orȱ
restarted)ȱbyȱ/etc/init.d/RunSyncDocumentsȱusingȱtheȱserviceȱcommand,ȱorȱbyȱaȱ
rebootȱofȱtheȱserver.ȱAdditionally,ȱaȱcronȱjobȱcalledȱSyncDocumentsCron,ȱlocatedȱinȱ
/etc/cron.d,ȱrunsȱcontinuouslyȱtoȱensureȱtheȱSyncDocumentsȱdaemonȱisȱstillȱactive.ȱIfȱ
theȱdaemonȱhasȱstoppedȱforȱwhateverȱreason,ȱitȱisȱrestarted.
NOTE The CopyDocs processes will continue to remove documents from the database
until all of them are copied to the file system. Since CopyDocs uses the balanced tree
method for writing documents, it may use one or more of the active directories it finds. Once
all case-related documents have been copied to the filesystem on both the primary and
replication servers and removed from the database, the CopyDocs cron jobs can be disabled.
SyncDocuments.config
SyncDocumentsȱusesȱaȱconfigurationȱfileȱcalledȱSyncDocuments.configȱlocatedȱinȱ
/gov/ecf/etc.ȱȱThisȱfileȱcontainsȱtwoȱorȱmoreȱ“blocks”,ȱasȱshownȱinȱtheȱexampleȱbelow.ȱȱ
Theȱfirstȱblockȱȱ[defaults] containsȱtagsȱwhichȱcontrolȱtheȱdefaultȱbehaviorȱofȱ
SyncDocuments.ȱȱTheȱsecondȱblockȱdefinesȱtheȱapplicationȱwhoseȱdocumentsȱwillȱbeȱ
synchronizedȱonȱtheȱprimaryȱandȱreplicationȱservers.
[defaults]
[defaults]
# general setup params
# Run at least every (RunEvery) seconds, or right after completing current run
RunEvery=60
# set Verbose to yes enable debugging mode to stdout; comment out
# or set to "no" to disable verbose mode
###Verbose="yes"
# Send Email to site table (AdminMail) every (ErrorEmailMinutes) minutes, if rsync errors not
corrected.
ErrorEmailMinutes=120
[courtID_live]
Dest=courtIDlei-rep.courtID.gtwy.dcn
LogFile=/var/log/ecf/SyncDocs.courtID_live.log
User=offsite_data_courtID
KeyFullPath=/home/offsite_data_courtID/.ssh/offsite_data_courtID
DisableDelete=no
08 Jul 2009
Release 4.0.2
3-3
District CM/ECF System Administrator’s Guide
DbName=courtID_live
DirOwner=ecf_web
DirGroup=root
DirMode=0775
FileOwner=informix
FileGroup=ecf_web
FileMode=0664
Defaults block
RunEvery
Time in seconds. This controls how often synchronization jobs are initiated. Only
one job can run at a time.
Verbose
yes or no. This controls the display (to stdout) of debugging information. Normally,
this flag should be set to no or commented out.
ErrorEmailMinutes
Controls the amount of time (in minutes) error messages are e-mailed to the
account set in the site table entry AdminMail. The default is 120 minutes.
Application block
Dest
Destination (replication) server resolvable by name or ip address.
LogFile
Log file which contains summary information defining the number of files processed and
written. This file is updated once per hour and is intended to assist in monitoring of this process.
User
The SyncDocuments process connects to the remote server as this user.
KeyFullPath
Key file used with User connecting to remote server.
DisableDelete
yes or no. Normally, SyncDocuments will remove rows from the re_sync_directory table
after each row is synchronized. This option will disable this delete. It is useful when setting
up or debugging a new area to synchronize.
DbName
CM/ECF database name
DirOwner
DirGroup
DirMode
FileOwner
FileGroup
FileMode
These six parameters are used with the -p option to SyncDocuments. This option verifies/sets document directory and file permissions of all directories and files under the directories defined in the document_home table.
RemoteBackDir
This parameter is optional and specifies the directory where modified or deleted files will be
moved to on the replication server only. NOTE: This entry must be coordinated with the
replication center staff since the directory must be writable by the User defined above.
Thereȱareȱaȱfewȱspecialȱcasesȱthatȱareȱalsoȱhandledȱwithȱrsync.ȱFilesȱthatȱareȱupdated,ȱ
perhapsȱfromȱmakingȱanȱedit,ȱafterȱtheȱdayȱwhenȱtheyȱwereȱfirstȱfiled.ȱToȱhandleȱthis,ȱ
theȱtableȱre_sync_directoryȱwillȱbeȱupdatedȱwithȱtheȱdirectoryȱnameȱofȱanyȱdirectoryȱ
whereȱaȱfileȱisȱupdated.ȱTheȱrsyncȱprocessȱwillȱreadȱaȱrowȱfromȱthisȱtableȱ(ifȱany),ȱandȱ
08 Jul 2009
Release 4.0.2
3-4
District CM/ECF System Administrator’s Guide
runȱaȱsyncȱofȱthatȱdirectoryȱsoȱthatȱanyȱupdatesȱtoȱdocumentsȱfiledȱbeforeȱtodayȱareȱ
updatedȱonȱtheȱreplicate.
Newȱorȱupdatedȱfilesȱareȱalwaysȱstoredȱinȱtheȱcurrentȱ(today’s)ȱdirectory.ȱ
Synchronizationȱofȱpreviousȱday’sȱdirectoryȱisȱonlyȱtoȱremoveȱtheȱoldȱfileȱfromȱtheȱ
directoryȱwhereȱitȱwasȱoriginallyȱstored.
SyncDocuments parameters
TheȱonlyȱrequiredȱparameterȱthatȱRunSyncDocumentsȱneedsȱtoȱrunȱisȱtheȱȱȬbȱ
parameter,ȱforȱwhichȱdatabase/applicationȱblockȱinȱtheȱSyncDocuments.configȱfileȱtoȱ
use.ȱSyncDocumentsȱcanȱalsoȱbeȱrunȱwithȱoptionalȱparametersȱwhichȱareȱlistedȱinȱtheȱ
tableȱbelow.
Optional parameters
Parameter
Usage
-c
Only show 'missing' documents for the case id specified; cannot be combined with other
options except -s; caseid cannot be zero.
-d
Find any documents entered in the last n days (must be 1 or greater) that are defined in the
database but do not reside in the local file system; results are displayed in a “cpio/tarfriendly” format; cannot be be combined with any other options except -s.
-g
Debug mode, implies -v; prints lots of information.
-L
Do not loop; sync area only once then exit.
-p
Verify/set file and directory permissions as defined in the SyncDocuments.config file.
-s
statistics output file name; use only with option -c or -d.
-t
Test, list actions only, no files are transfered.
-u (or -h)
Display usage message and exit.
-v
Verbose mode.
DocBackupDir
AnȱoptionalȱsiteȱtableȱentryȱcalledȱDocBackupDirȱcanȱbeȱusedȱtoȱstoreȱaȱbackupȱcopyȱ
ofȱeachȱdocumentȱonȱtheȱfilesystem.ȱAfterȱaȱdocumentȱisȱwrittenȱtoȱtheȱfilesystemȱandȱ
theȱdocumentȱtable’sȱdm_doiȱfieldȱisȱupdated,ȱaȱsecondȱcopyȱofȱtheȱdocumentȱisȱ
writtenȱtoȱtheȱlocationȱspecifiedȱinȱtheȱsiteȱvariable,ȱusingȱtheȱsameȱfilename.ȱThisȱ
offersȱadditionalȱredundancy,ȱespeciallyȱifȱtheȱlocationȱisȱonȱanotherȱphysicalȱdisk,ȱorȱ
perhapsȱisȱevenȱaȱremotelyȬattachedȱdirectoryȱonȱanȱindependentȱmachine.ȱ
Toȱcreateȱaȱdocumentȱbackupȱdirectory,ȱfollowȱtheȱinstructionsȱbelow.
08 Jul 2009
Release 4.0.2
3-5
District CM/ECF System Administrator’s Guide
To create a document backup directory
1. Asȱtheȱrootȱuser,ȱcreateȱtheȱdirectoryȱtoȱstoreȱaȱbackupȱcopyȱofȱeachȱdocumentȱ
copiedȱtoȱtheȱfilesystem.ȱ
mkdir -p
backup_dir
Example
mkdir -p /data/docs1/backup
2. Changeȱtheȱpermissionsȱonȱtheȱdirectory:
chmod
775 backup_dir
3. Changeȱtheȱownerȱandȱgroupȱonȱtheȱdirectory:
chown ecf_web:nobody backup_dir
4. Switchȱuserȱtoȱinformix:
su - informix
5. Usingȱdbaccess,ȱselectȱtheȱliveȱdatabase.
6. RunȱtheȱfollowingȱSQLȱtoȱaddȱaȱsiteȱtableȱentryȱforȱDocBackupDir,ȱsubstitutingȱ
theȱfullȱpathȱofȱtheȱdirectoryȱyouȱcreatedȱforȱbackup_dir:
insert into site
values(‘DocBackupDir’,’backup_dir’,’n’,’ecf_web’);
08 Jul 2009
Release 4.0.2
3-6
District CM/ECF System Administrator’s Guide
Database Updates
Stored Procedures and Triggers
NewȱstoredȱproceduresȱwillȱaddedȱtoȱtheȱInformixȱdatabaseȱforȱdocumentȱprocessing.ȱ
Oneȱisȱcalledȱget_docȱwhichȱtakesȱasȱargumentsȱtheȱdocket entry ID,ȱtheȱ
document sequence number,ȱtheȱpridȱofȱtheȱrequestingȱuser,ȱtheȱcase ID,ȱandȱ
theȱIPȱaddressȱofȱtheȱcaller.ȱItȱdeterminesȱifȱtheȱspecifiedȱpersonȱ(theȱprid)ȱisȱallowedȱ
toȱaccessȱtheȱselectedȱdocument,ȱbasedȱonȱuserȱpermissionsȱandȱaccessȱrestrictions.
Aȱstoredȱprocedureȱencrypt,ȱtakesȱtheȱdocument id,ȱsequence number,ȱtheȱ
mirroredȱflag,ȱtheȱdoc_flag,ȱdoc_sig,ȱandȱdoc_doi,ȱandȱencryptsȱtheȱdocument.ȱ
Anotherȱprocedure,ȱunencrypt,ȱtakesȱtheȱsameȱarguments,ȱandȱisȱusedȱtoȱunencryptȱ
(read)ȱanȱencryptedȱdocument.ȱ
BothȱworkȱbyȱcallingȱtheȱbinaryȱProcessDocument.ȱNoteȱthatȱonceȱencrypted,ȱevenȱifȱ
theȱrestrictionsȱareȱlaterȱremoved,ȱtheȱdocumentȱremainsȱencrypted.ȱThisȱisȱ
transparentȱtoȱtheȱuser;ȱtheyȱwillȱhaveȱunrestrictedȱaccessȱandȱwillȱnotȱseeȱanyȱ
differenceȱbetweenȱaȱformerlyȬrestrictedȱencryptedȱdocumentȱandȱoneȱthatȱhasȱneverȱ
beenȱrestricted.ȱȱ
re_sync_directory table
Theȱre_sync_directoryȱtableȱwillȱhaveȱaȱrowȱforȱeveryȱday’sȱdocumentȱdirectoryȱthatȱ
needsȱsynchronizing.ȱTheȱre_sync_directoryȱwillȱhaveȱtheȱfullȱpathȱtoȱtheȱdirectoryȱtoȱ
rsync,ȱsuchȱasȱ/data/docs1/ECF/courtID/live/20070502.ȱIfȱsynchronizationȱisȱnotȱ
workingȱforȱaȱperiodȱofȱtime,ȱthereȱmayȱbeȱmultipleȱrows,ȱoneȱforȱeachȱdirectoryȱthatȱ
needsȱsynchronization.
deleted_documents table
Theȱdeleted_documentsȱtableȱisȱusedȱtoȱsynchronizeȱdocumentsȱthatȱhaveȱbeenȱ
removedȱfromȱtheȱprimaryȱserverȱwithȱtheȱreplicationȱserver.ȱWhenȱaȱdocumentȱisȱ
deletedȱthroughȱtheȱapplication,ȱtheȱfullȱpathȱofȱtheȱdocumentȱtoȱbeȱdeletedȱisȱaddedȱ
toȱtheȱdeleted_documentsȱtable,ȱtheȱrowȱisȱdeletedȱfromȱtheȱdocumentȱtable,ȱandȱtheȱ
documentȱdeletedȱfromȱtheȱfilesystem.ȱTheȱSyncDocumentsȱprogramȱreadsȱtheȱ
deleted_documentsȱtableȱregularlyȱthroughoutȱtheȱdayȱandȱrunsȱanȱindividualȱrsyncȱ
commandȱforȱeachȱfileȱtoȱbeȱremovedȱfromȱtheȱreplicationȱserver.
Site Table Variables
SomeȱofȱtheseȱvariablesȱareȱusedȱbyȱInformixȱstoredȱproceduresȱandȱbyȱCM/ECFȱ
applicationȱcodeȱtoȱfindȱkeyȱfilesȱsuchȱasȱtheȱkeyȱfileȱdcecf.keyȱandȱtheȱdocumentȱ
processingȱbinary.ȱȱ
08 Jul 2009
Release 4.0.2
3-7
District CM/ECF System Administrator’s Guide
Site Table Entry
CourtType
D for district
DocBackupDir
A second, optional location to write all documents.
KeyFile
Basename for the key file (e.g., dcecf)
ServerHome
08 Jul 2009
Use
Full path to the server directory (e.g., /opt/DCECF/live/server/server)
Release 4.0.2
3-8
District CM/ECF System Administrator’s Guide
Creating Document Home Directories
Thisȱsectionȱprovidesȱinstructionsȱforȱcreatingȱtheȱdocumentȱhomeȱdirectoriesȱthatȱ
willȱholdȱallȱexistingȱandȱnewȱPDFȱfiles.
IMPORTANT If you have not contacted the Replication Facility to create a public key
on the replication server, do so now at (210) 301-6315.
1. Createȱaȱdocument_homeȱdirectoryȱusingȱtheȱcommandȱsyntaxȱshownȱbelow.ȱ
Includeȱyourȱcourtȱshortȱnameȱinȱtheȱdocumentȱhomeȱdirectoryȱname.ȱTheȱcourtȱ
shortȱnameȱcorrespondsȱtoȱtheȱCourtShortNameȱsiteȱtableȱvariable.
mkdir -p /data/docs##/CourtShortName_test/
mkdir -p /data/docs##/CourtShortName_train/
mkdir -p /data/docs##/CourtShortname_dochome_app##/
Examples
mkdir /data/docs1/TXWD_test/
mkdir /data/docs1/TXWD_train/
mkdir /data/docs1/TXWD_dochome_app03
2. Changeȱtheȱownershipȱofȱeachȱdocument_homeȱdirectory:
chown informix:informix /data/docs##/CourtShortName_test/
chown informix:informix /data/docs##/CourtShortName_train/
chown informix:informix /data/docs##/CourtShortname_dochome_app##/
Examples
chown informix:informix /data/docs1/TXWD_test/
chown informix:informix /data/docs1/TXWD_train/
chown informix:informix /data/docs1/TXWD_dochome_app03/
3. Changeȱtheȱpermissionsȱofȱeachȱdocument_homeȱdirectory:
chmod 775 /data/docs##/CourtShortName_test
chmod 775 /data/docs##/CourtShortName_train
chmod 775 /data/doc##/CourtShortName_dochome_app##/
Examples
chmod 775 /data/docs1/TXWD_test/
chmod 775 /data/docs1/TXWD_train/
chmod 775 /data/docs1/TXWD_dochome_app03/
08 Jul 2009
Release 4.0.2
3-9
District CM/ECF System Administrator’s Guide
Configuring CM/ECF for Document Home Directories
Nowȱthatȱtheȱdocumentȱhomeȱdirectoriesȱareȱcreated,ȱyouȱmustȱconfigureȱCM/ECFȱtoȱ
recognizeȱthem.ȱȱTheȱDocumentȱHomeȱEditorȱallowsȱyouȱtoȱidentifyȱwhetherȱeachȱ
directoryȱisȱacceptingȱadditionalȱfiles.
1. LogȱinȱtoȱCM/ECFȱasȱanȱadministrator.
2. OnȱtheȱUtilitiesȱmenu,ȱclickȱUpdateȱSystemȱTables,ȱandȱthenȱclickȱDocumentȱ
Home.
Aȱscreenȱsimilarȱtoȱtheȱfollowingȱexampleȱappears:
Document Home Table
Root Directory | Documents | MB left | % full | Accepting More
New documents are written directly to the one root directory marked as “Accepting More”.
Add a new root directory /data/docs1/TXWD_dochome_app03
It must contain the short name “TXWD” so that it can be replicated properly.
Submit Clear
3. InȱtheȱAddȱaȱnewȱrootȱdirectoryȱbox,ȱtypeȱtheȱpathȱofȱyourȱfirstȱdocumentȱhomeȱ
directory,ȱandȱthenȱclickȱSubmit.
4. Repeatȱstepȱ3ȱforȱeachȱdocumentȱhomeȱdirectoryȱyouȱwishȱtoȱcreate.
Afterȱyouȱhaveȱenteredȱallȱdocument_homeȱtableȱrecords,ȱtheȱscreenȱwillȱlookȱ
similarȱtoȱtheȱfollowingȱexample:
08 Jul 2009
Release 4.0.2
3-10
District CM/ECF System Administrator’s Guide
Document Home Table
Root Directory
/data/docs1/TXWD_dochome_app03
/data/docs2/TXWD_dochome_app03
| Documents | MB left | % full | Accepting More
0
0
0
0
10%
10%
D
D
New documents are written directly to the one root directory marked as “Accepting More”.
Add a new root directory ___________________________________
It must contain the short name “TXWD” so that it can be replicated properly.
Submit Clear
5. Ifȱyouȱwantȱtoȱallowȱmoreȱfilesȱtoȱbeȱaddedȱtoȱaȱdocumentȱhomeȱdirectory,ȱselectȱ
theȱAcceptingȱMoreȱcheckȱbox.
Newȱdocumentsȱwillȱonlyȱgoȱintoȱdocumentȱhomeȱdirectoriesȱwithȱthisȱcheckȱboxȱ
selected.ȱȱUsingȱthisȱfeature,ȱyouȱcanȱmanageȱdiskȱusageȱperȱdocumentȱhome.
08 Jul 2009
Release 4.0.2
3-11
District CM/ECF System Administrator’s Guide
Document Caching
Thisȱsectionȱdescribesȱdocumentȱcaching,ȱaȱmethodȱtoȱcacheȱdocumentsȱasȱtheyȱareȱ
viewed,ȱtoȱimproveȱperformanceȱuponȱsubsequentȱviewings.ȱPleaseȱnoteȱthatȱ
documentȱcachingȱisȱoptional.
Whenȱaȱdocumentȱisȱcached,ȱfilesȱareȱcreatedȱwithȱinformationȱaboutȱPDFheaders,ȱ
hyperlinks,ȱandȱtheȱdocumentȱsignatureȱstampȱinȱaȱdesignatedȱdirectory.ȱȱWhenȱaȱ
userȱrequestsȱaȱdocumentȱbyȱclickingȱonȱaȱlink,ȱifȱcachingȱisȱenabled,ȱtheȱprogramȱwillȱ
checkȱtoȱseeȱifȱtheȱdocumentȱhasȱalreadyȱbeenȱsavedȱtoȱtheȱcacheȱbeforeȱitȱretrievesȱtheȱ
document.ȱIfȱtheȱdocumentȱisȱinȱtheȱcache,ȱitȱwillȱbeȱdisplayedȱmoreȱquickly.ȱIfȱtheȱ
documentȱisȱnotȱinȱtheȱcache,ȱitȱwillȱbeȱdisplayedȱasȱbefore,ȱbutȱwillȱbeȱsavedȱtoȱtheȱ
cacheȱ(ifȱspaceȱallows)ȱforȱimprovedȱprocessingȱinȱfutureȱaccess.ȱAdditionally,ȱaȱ
recordȱofȱtheȱaccessȱwillȱbeȱrecordedȱinȱaȱlogȱfile,ȱalongȱwithȱtheȱdate,ȱtimeȱandȱuser.ȱ
Thisȱwillȱallowȱforȱanȱassessmentȱofȱtheȱeffectivenessȱofȱthisȱcachingȱmethodȱoverȱ
time.ȱ
Site Table Entries
Fourȱsiteȱtableȱentriesȱ(detailedȱbelow)ȱareȱrequiredȱtoȱenableȱandȱconfigureȱ
documentȱcaching.ȱȱSeparateȱsiteȱtableȱentriesȱareȱusedȱforȱtheȱInsideȱandȱOutsideȱ
servers.ȱThisȱwillȱimproveȱperformanceȱforȱusersȱonȱtheȱOutsideȱserverȱbyȱavoidingȱ
theȱneedȱtoȱredirectȱtoȱtheȱInsideȱserverȱeachȱtimeȱaȱdocumentȱisȱrequested.ȱInstead,ȱifȱ
theȱdocumentȱisȱinȱtheȱcache,ȱitȱcanȱbeȱprovidedȱtoȱtheȱuserȱwithoutȱtheȱadditionalȱ
processȱofȱredirecting.
Site Table Entry
Description
remoteDocCache
Full path to the location where cached documents will be placed on the Outside server. This
path is referenced in /gov/ecf/etc/CleanFiles.config on the Outside server.
NOTE: It is strongly recommended that cached documents be the only documents located
in this directory and that at least 6GB of space are available in each application area where
documents are cached, in addition to the amount in remoteDocCacheReserve.
Example: /opt/remoteDocCache/test
remoteDocCacheReserve
The amount of space (in bytes) that must be present in the remoteDocCache directory for
the system to cache a new document on the Outside server. If the cache shares a disk
drive/partition with other processes, the amount of space that needs to be reserved for
other processes will be controlled. Caching will automatically stop on the Outside server if
the available space is less than the value defined in remoteDocCacheReserve. It is
recommended that a minimum of 1GB be reserved to avoid using up all the available disk
space, but 5GB would be better.
Example: 5000000000
08 Jul 2009
Release 4.0.2
3-12
District CM/ECF System Administrator’s Guide
Site Table Entry
Description
localDocCache
Full path to the location where cached documents will be placed on the Inside server. This
path is referenced in /gov/ecf/etc/CleanFiles.config on the Inside server.
NOTE: It is strongly recommended that cached documents be the only documents located
in this directory and that at least 6GB of space are available in each application area where
documents are cached, in addition to the amount in localDocCacheReserve.
Example: /data/docs1/ECF/localDocCache/test
localDocCacheReserve
The amount of space (in bytes) that must be present in the localDocCache directory for the
system to cache a new document on the Inside server. Caching will automatically stop on
the Inside server if the available space is less than the value defined in localDocCacheReserve. It is recommended that a minimum of 5GB be reserved to avoid using up all the
available disk space.
Example: 5000000000
Toȱenableȱdocumentȱcaching,ȱtwoȱnewȱdirectoriesȱneedȱtoȱbeȱcreated,ȱoneȱonȱtheȱInsideȱ
serverȱandȱoneȱonȱtheȱOutsideȱserver.ȱȱItȱisȱhighlyȱrecommendedȱthatȱcachedȱ
documentsȱbeȱtheȱonlyȱdocumentsȱlocatedȱinȱtheseȱdirectories.ȱTheȱOutsideȱserverȱ
directoryȱmustȱbeȱaddedȱasȱtheȱvalueȱforȱtheȱremoteDocCacheȱsiteȱtableȱentry;ȱtheȱ
InsideȱserverȱdirectoryȱmustȱbeȱaddedȱasȱtheȱvalueȱforȱtheȱlocalDocCacheȱsiteȱtableȱ
entry.ȱAfterȱcreatingȱtheȱdirectoriesȱonȱbothȱservers,ȱchangeȱtheȱownerȱandȱgroupȱofȱ
theȱdirectoriesȱtoȱecf_web:apache,ȱandȱsetȱtheȱpermissionsȱtoȱ770.
IMPORTANTȱȱTheȱdirectoryȱpathsȱidentifiedȱinȱtheȱvaluesȱofȱtheȱ
remoteDocCacheȱandȱlocalDocCacheȱsiteȱtableȱentriesȱmustȱalsoȱbeȱdefinedȱinȱtheȱ
/gov/ecf/etc/CleanFiles.configȱfile.ȱȱIfȱtheȱvaluesȱinȱtheȱconfigȱfileȱdoȱnotȱmatchȱtheȱ
valuesȱofȱtheȱsiteȱtableȱrecords,ȱthenȱtheȱcachingȱdirectoriesȱwillȱnotȱbeȱpurgedȱ
properly.
IfȱyourȱcourtȱusesȱOutbackȱtoȱperformȱbackups,ȱthenȱforȱeachȱapplicationȱareaȱexcludeȱ
theȱfilesȱinȱtheȱremoteDocCacheȱdirectoryȱfromȱthisȱprocessȱinȱtheȱoutbackȬinsideȬ
sysconfig.xmlȱfile.ȱȱSeeȱtheȱdocumentȱ“OutbackȱBackupȱUtilityȱforȱCM/ECFȱOutsideȱ
LinuxȱServers”ȱatȱtheȱfollowingȱlocationȱforȱmoreȱinformation:
http://www.aotx.ao.dcn/linux/default.asp#backup
NOTE RemoveȱtheȱinsideȱdocumentȱcachingȱdirectoriesȱfromȱARCServe.
CleanFiles utility
CleanFilesȱisȱaȱutilityȱthatȱremovesȱoldȱfiles,ȱandȱisȱintendedȱprimarilyȱasȱaȱwayȱtoȱ
removeȱfilesȱfromȱtheȱcache.ȱThisȱutilityȱisȱexecutedȱbyȱcronȱandȱlogsȱactivityȱtoȱ
08 Jul 2009
Release 4.0.2
3-13
District CM/ECF System Administrator’s Guide
/var/log/ecf/CleanFiles.app.logȱwhereȱappȱisȱlive,ȱtest,ȱorȱtrain.ȱȱTheȱdefaultȱcronȱisȱsetȱ
toȱrunȱtwiceȱeveryȱhour:ȱȱatȱtheȱbeginningȱofȱtheȱhourȱandȱatȱ30ȱminutesȱafterȱtheȱhour.ȱȱ
Theȱ‘b’ȱparameterȱidentifiesȱtheȱblockȱinȱtheȱconfigurationȱfileȱthatȱwillȱbeȱexecuted;ȱ
forȱdocumentȱcachingȱitȱwillȱbeȱLiveCache,ȱTestCacheȱorȱTrainCache.ȱȱToȱactivateȱtheȱ
utility,ȱunȬcommentȱtheȱcronȱjobȱandȱrestartȱtheȱcronȱdaemon.
CleanFiles.config
Theȱconfigurationȱfile,ȱ/gov/ecf/etc/CleanFiles.config,ȱcontrolsȱhowȱfilesȱareȱremovedȱ
fromȱtheȱcache.ȱȱTheȱtableȱbelowsȱlistȱtheȱvariousȱsettingsȱinȱtheȱfileȱandȱtheirȱpurpose.ȱȱ
Verbose
yes or no – when set to yes, this causes messages to be written to the log file regarding
CleanFiles actions. Due to the number of messages that will be written, this feature is
recommended for troubleshooting purposes, but not for default use. Please note that the
setting for verbose at installation is disabled. In order to enable, remove the pound sign
from the parameter:
#Verbose=yes
Directory
Specifies the directory to examine for eligible files to be removed.
On the Inside server, the path that is defined in the site table entry localDocCache
(e.g., /data/docs1/lECF/ocalDocumentCache/test).
On the Outside server, the path that is defined in the site table entry remoteDocCache
(e.g., /opt/remoteDocumentCache/test).
Support
In each block (TestCache, TrainCache, and LiveCache), it specifies the support directory
on the current server. If it is defined in a particular block, it will override the default block
definition. One of the blocks must contain the variable.
Mode
Controls the actions of CleanFiles.
DisplayFiles – program will display the names of files that have met the criteria for
removal.
RemoveFile - eligible files will be removed.
FileType
Specifies the types of documents to be processed.
• DocumentCache - special processing will be enabled to remove cache files as a set.
FileType=DocumentCache (default)
Fill
Chatty
08 Jul 2009
When the file system containing the Directory is at or beyond a certain percentage of
capacity, the CleanFiles utility will run on the specified Directory. The “Fill” setting specifies the percentage above which cleaning should occur (see “What to do when caching
stops” at the end of this section). For example, to clean the Directory when it is 70% full
or more, the specification would be: Fill=70.
Yes or No
Wnen set to yes, this causes some information to display when it runs, for instance, start
and stop times and number of files removed.
Release 4.0.2
3-14
District CM/ECF System Administrator’s Guide
Age
Determines how old a file must be to be removed from the Directory. Time can be specified in minutes, hours or days. For example, to clean only files that are at least a week
old, the specification would be: Age=7 days. Files that are newer than the specified age
are ignored when CleanFiles is run. Note that the file age is measured from the time of
most recent access of the file, not from the creation time.
This number is very important as if it is set too high the clean script may clean using the
more aggressive approach on a regular basis and make the cache much less effective.
Setting it too low is not as bad but will not take full advantage of the cache. The recommended settings below reflect a conservative setting based on the number of unrestricted documents uploaded per month. This chart assumes 6GB of cache space
(available space minus the value of [local/remote]DocCacheReserve), a Fill value of 70,
and an average document size of 70KB.
100,000 or more
10 days
75,000 or more
15 days
Fewer than 75,000 20 days (default)
Level2Fill
The threshold at which more aggressive cleaning of the Directory will occur. This value
should be higher than the value in “Fill” plus the currently used disk space.
Example: 90
NOTE:
When setting the Level2Fill percentage, ensure that the percentage designated results in
a larger free space byte count than the byte count designated in the DocCacheReserve
site table entries. If the available free space drops below the DocCacheReserve before
the Level2Fill percentage is reached, caching of newly accessed documents will stop,
which prevents the Level2Fill percentage from ever being reached. This prevents the
CleanFiles utility from more aggressively clearing out the cache to favor recently
accessed documents, resulting in poor cache utilization.
Level2Age
Measured from the file’s creation date. This allows for more files to be removed when the
Level2Fill threshold is reached, thereby avoiding a full cache directory. The period can be
in minutes, hours or days.
Example: 2 days
Log Files
OnȱbothȱtheȱInsideȱandȱOutsideȱservers,ȱaȱnewȱlogȱfileȱwillȱbeȱautomaticallyȱcreated.ȱ
Theȱnameȱofȱtheȱlogȱfileȱisȱdocument_access.app.logȱ(whereȱappȱisȱlive,ȱtest,ȱorȱtrain)ȱ
locatedȱinȱ/var/log/ecf/.
Inȱthisȱlogȱfile,ȱaȱrecordȱwillȱbeȱcreatedȱeachȱtimeȱaȱuserȱtriesȱtoȱaccessȱaȱdocumentȱ
(whenȱtheȱuserȱclicksȱonȱaȱdocumentȱlink).ȱTheȱrecordȱcreatedȱwillȱcontain:
•
08 Jul 2009
1stȱfieldȱȬȱtheȱdateȱandȱtimeȱofȱtheȱaccessȱrequest.
Release 4.0.2
3-15
District CM/ECF System Administrator’s Guide
•
2ndȱfieldȱȬȱtheȱdm_idȱofȱtheȱdocumentȱrequested.
•
3rdȱfieldȱȬȱtheȱdm_seqȱofȱtheȱdocumentȱrequested.
•
4thȱfieldȱȬȱModificationsȱrequested.ȱThisȱfieldȱwillȱbeȱaȱconcantenationȱofȱanyȱ
orȱallȱofȱtheȱfollowing:
— Tȱifȱaȱtranscriptȱheaderȱshouldȱbeȱdisplayedȱfromȱaȱpublicȱterminal.
— HȱifȱPDFȱheadersȱwereȱrequested.
— LȱforȱLinkmapsȱ(Linkmapsȱisȱrunȱonlyȱwhenȱmultipleȱdocumentsȱareȱ
attachedȱtoȱtheȱdocumentȱhyperlink).
— Noȱtagȱisȱaddedȱforȱsingleȱdocumentsȱwithoutȱheadersȱorȱattachments.
•
5thȱfieldȱȬȱModificationsȱmadeȱsuccessfully.ȱThisȱusesȱtheȱsameȱformatȱasȱfieldȱ
4,ȱbutȱwillȱreflectȱonlyȱthoseȱmodificationsȱthatȱwereȱmade.ȱȱIfȱnoȱerrorsȱareȱ
incurred,ȱfieldȱ4ȱandȱfieldȱ5ȱwillȱbeȱidentical.ȱThisȱfieldȱwillȱalsoȱbeȱblankȱifȱtheȱ
documentȱwasȱretrievedȱfromȱtheȱcache.
•
6thȱfieldȱȬȱ‘local’ȱifȱtheȱaccessȱrequestȱtookȱplaceȱonȱtheȱInsideȱserver;ȱ‘remote’ȱifȱ
onȱtheȱOutsideȱserver.
•
7thȱfieldȱȬȱ‘fromȱcache’ȱifȱtheȱdocumentȱwasȱalreadyȱinȱtheȱcacheȱ(andȱthereforeȱ
wasȱretrievedȱfromȱcacheȱforȱdisplay).
•
8thȱfieldȱȬȱ‘toȱcache’ȱifȱtheȱdocumentȱwasȱsavedȱtoȱtheȱcache.ȱOtherȱmessagesȱ
thatȱmightȱbeȱdisplayedȱunderȱcertainȱconditions:
— (restricted)ȱȬȱaȱrestrictedȱdocument,ȱlikeȱaȱtranscript,ȱwasȱviewed.
— (cachingȱdisabled)ȱȬȱwhenȱ[local/remote]DocCacheȱsiteȱrecordȱisȱnotȱ
defined.
— (fileȱisȱempty)ȱȬȱaȱzeroȱorȱoneȬbyteȱfile.
— (writeȱtoȱcacheȱfailed)ȱȬȱinvalidȱdirectoryȱpathȱinȱsiteȱrecord.
— (notȱenoughȱspace)ȱȬȱcachingȱcorrectlyȱabortedȱbecauseȱofȱtheȱavailableȱ
spaceȱfellȱbelowȱtheȱreserveȱamount.ȱȱToȱcorrect,ȱsetȱtheȱvalueȱofȱ
[local/remote]DocCacheReserveȱtoȱaȱhighȱnumber.
•
08 Jul 2009
9thȱfieldȱȬȱgUserPridȱvalueȱofȱtheȱuserȱrequestingȱtheȱdocument;ȱnullȱifȱaȱ
PACERȱuser.
Release 4.0.2
3-16
District CM/ECF System Administrator’s Guide
•
10thȱfieldȱȬȱPacerUserIdȱifȱaȱPACERȱaccountȱwasȱused.
•
11thȱfieldȱȬȱIfȱtheȱdocumentȱisȱaȱclaim,ȱtheȱfieldȱwillȱhaveȱ‘claim’ȱinȱit;ȱ
otherwise,ȱitȱwillȱbeȱempty.
Troubleshooting Document Caching
IfȱTomcatȱisȱdownȱwhenȱaȱdocumentȱisȱviewedȱforȱtheȱfirstȱtime,ȱcrossȬdocumentȱ
hyperlinksȱwillȱnotȱworkȱandȱtheȱdocumentȱwillȱnotȱhaveȱheadersȱforȱthatȱviewȱofȱtheȱ
document.ȱȱAnȱexternalȱuserȱwillȱseeȱsymptomsȱofȱtomcatȱnotȱworkingȱproperlyȱwhenȱ
he/sheȱrequestsȱheadersȱbutȱtheyȱareȱnotȱdisplayed.ȱInȱaddition,ȱsubsequentȱrequestsȱ
forȱtheȱdocumentȱwillȱnotȱtakeȱadvantageȱofȱtheȱcacheȱuntilȱtheȱdocumentȱisȱcorrectlyȱ
retrievedȱ(andȱcached)ȱasȱrequested.
Toȱrestartȱtomcat,ȱrunȱtheȱfollowingȱcommandsȱonȱtheȱInsideȱserverȱasȱtheȱrootȱuser:
service ECF-tomcat stop
service ECF-tomcat start
Documentsȱwillȱnowȱbeȱcachedȱwithȱhyperlinksȱand,ȱifȱconfigured,ȱwithȱheadersȱtoo.
SinceȱTomcatȱhandlesȱtheȱcreationȱofȱheadersȱandȱdocumentȱlinks,ȱrestartingȱTomcatȱ
duringȱregularȱcourtȱhoursȱwillȱcauseȱdocumentsȱthatȱareȱcachedȱforȱtheȱfirstȱtimeȱ
duringȱthoseȱminutesȱtoȱbeȱwithoutȱheadersȱandȱdocumentȱlinks.ȱDocumentsȱalreadyȱ
inȱtheȱcacheȱareȱnotȱaffected.
Changesȱtoȱcertainȱheaderȱsiteȱtableȱentriesȱ(PDF_HeaderColor,ȱ
PDF_HeaderPosition,ȱPDF_HeaderOffSet,ȱdlsDBCourtID,ȱBaseURL)ȱwillȱnotȱbeȱ
reflectedȱinȱsubsequentȱdocumentȱretrievalsȱuntilȱtheȱsiteȱtableȱentriesȱareȱreloadedȱinȱ
Tomcat’sȱmemory,ȱwhichȱcanȱbeȱdoneȱbyȱenteringȱtheȱlinkȱforȱtheȱapplicationȱinȱyourȱ
webȱbrowser,ȱasȱfollows:
Live
https://ecf.courtID.circ#.dcn/cmecf/servlet/cmecf.pdf.PreparePDFForDisplay?reload
Test
https://ecf-test.courtID.circ#.dcn/cmecf-test/servlet/cmecf.pdf.PreparePDFForDisplay?reload
Train
https://ecf-train.courtID.circ#.dcn/cmecf-train/servlet/cmecf.pdf.PreparePDFForDisplay?reload
08 Jul 2009
Release 4.0.2
3-17
District CM/ECF System Administrator’s Guide
Doingȱsoȱwillȱreloadȱtheȱvariablesȱandȱlistȱtheȱupdatedȱvaluesȱonȱtheȱscreen.
NOTE Any changes made to the content of the header (adding or removing information
via PDF_HeaderFormat) should always take effect immediately. Documents that have
already been cached will not be affected by changes to these site table entries.
What to do when caching stops
TheȱcurrentȱimplementationȱusesȱstaticȱvaluesȱinȱtheȱCleanFilesȱconfigurationȱforȱ
determiningȱwhenȱcachedȱdocumentsȱshouldȱbeȱremoved,ȱalthoughȱtheȱ
used/availableȱdiskȱspaceȱmayȱchangeȱoverȱtime.ȱȱCachingȱwillȱstopȱwhenȱtheȱcacheȱ
spaceȱisȱatȱcapacityȱandȱifȱCleanFilesȱisnȇtȱremovingȱfiles.ȱȱAȱmessageȱwillȱbeȱwrittenȱ
toȱtheȱ/var/log/ecf/CleanFiles.app.logȱfileȱwhenȱcachingȱstopsȱ(seeȱLogȱFilesȱinȱthisȱ
sectionȱforȱaȱdescription).ȱȱTherefore,ȱitȱisȱnecessaryȱtoȱoccasionallyȱadjustȱsomeȱofȱtheȱ
variables,ȱparticularlyȱFill.ȱȱTheȱFillȱfactorȱmayȱneedȱtoȱbeȱadjustedȱaccordingȱtoȱtheȱ
totalȱsizeȱofȱtheȱdisk,ȱtheȱamountȱofȱfreeȱdiskȱspaceȱandȱtheȱamountȱofȱdiskȱspaceȱ
reserved/usedȱforȱotherȱprocesses.ȱȱForȱexample,ȱifȱyourȱcacheȱisȱonȱaȱlargeȱdiskȱthatȱisȱ
mostlyȱempty,ȱcalculateȱtheȱFillȱfactorȱusingȱtheȱfollowingȱformula:
Fill = 70 - (reserve/harddisk * 70)
Where reserve is the value of [local,remote]DocCacheReserve and harddisk is
the total capacity of the hard drive.
Example
(400GB with 100GB reserved)
Fill = 70 - (100/400 * 70)
Fill is approximately 50% rather than the default 70%.
TheȱfollowingȱchartȱshowsȱtheȱFillȱpercentageȱforȱvariousȱreserve/harddiskȱratios:
Reserve/harddisk ratio
Fill percentage
3/4
17
1/2
35
1/3
47
1/4
52
1/6
58
1/10
63
IfȱtheȱFillȱfactorȱisȱsetȱlowerȱthanȱtheȱcurrentlyȱusedȱdiskȱspace,ȱtheȱCleanFilesȱutilityȱ
willȱrunȱbutȱfilesȱwillȱnotȱbeȱremovedȱuntilȱtheyȱmeetȱtheȱAgeȱfactor.
08 Jul 2009
Release 4.0.2
3-18
District CM/ECF System Administrator’s Guide
Ifȱyouȱhaveȱenoughȱfreeȱdiskȱspaceȱ(minimumȱ11GB)ȱtoȱsetȱupȱcachingȱonȱanȱoldȱ
data#/docsȱpartition,ȱthereȱwillȱbeȱminimalȱmaintenanceȱofȱtheȱconfigurationȱȱ
variablesȱbecauseȱtheȱmajorityȱofȱtheȱdiskȱisȱstatic.ȱȱForȱaȱmostlyȱfullȱdiskȱ(aboveȱ90%ȱ
used),ȱuseȱtheȱfollowingȱformula:
Fill = 100 - ((reserve/harddisk) * 100)
Example of when document caching will stop running
On a 400GB drive with [local,remote]DocCacheReserve set to 200GB and
used space at 30GB, caching will work until the cached documents take up
170GB.
If the Fill value is set to the default of 70%, CleanFiles will not run because at
that point only 50% of the drive is used, so caching will stop.
Level2FillȱshouldȱalwaysȱbeȱsetȱtoȱaȱhigherȱpercentageȱthanȱFillȱandȱhigherȱthanȱtheȱ
percentageȱofȱdiskȱspaceȱcurrentlyȱused.
08 Jul 2009
Release 4.0.2
3-19
CHAPTER
4
4
Replication
In This Chapter
•
Overview
•
ReplicationȱGeneralȱPolicy
•
ReplicationȱGeneralȱSupportȱProcedure
•
MonitoringȱReplication
•
MaintainingȱaȱCourt’sȱApplicationȱSoftwareȱonȱtheȱVirutalȱReplicationȱServers
District CM/ECF System Administrator’s Guide
Overview
Informix’sȱHighȱAvailabilityȱDataȱReplicationȱfacilityȱisȱusedȱtoȱmaintainȱaȱcopyȱofȱ
yourȱCM/ECFȱInformixȱDBMSȱinstanceȱonȱaȱdifferentȱmachine.ȱTheȱreplicationȱ
databaseȱcanȱbeȱmadeȱavailableȱforȱreadȬonlyȱorȱreadȬwriteȱaccessȱinȱtheȱeventȱthatȱ
yourȱliveȱdatabaseȱbecomesȱunavailable.
WhenȱtheȱInsideȱand/orȱOutsideȱserverȱfails,ȱandȱdowntimeȱisȱexpectedȱtoȱexceedȱ
courtȬdeterminedȱtolerances,ȱusersȱcanȱbeȱdirectedȱtoȱtheȱmachinesȱatȱtheȱReplicationȱ
FacilityȱforȱreadȬonlyȱorȱreadȬwriteȱaccessȱ(knownȱasȱlevelȱ1ȱfailoverȱandȱlevelȱ2ȱ
failover,ȱrespectively).
YouȱandȱtheȱReplicationȱFacilityȱwillȱfollowȱproceduresȱthatȱareȱappropriateȱforȱtheȱ
situation;ȱtheseȱwillȱvaryȱdependingȱonȱwhetherȱoneȱorȱbothȱmachinesȱhaveȱbecomeȱ
unavailable,ȱandȱwhichȱfailoverȱlevelȱisȱneeded.
Failover of an Inside (database) server
IfȱtheȱdatabaseȱserverȱfailsȱbutȱtheȱOutsideȱserverȱisȱavailable,ȱReplicationȱFacilityȱstaffȱ
willȱprepareȱtheȱreplicationȱdatabaseȱforȱuse.ȱȱCourtȱusersȱwillȱbeȱgivenȱtheȱURLȱforȱ
theȱreplicationȱdatabase,ȱwhichȱtheyȱwillȱaccessȱoverȱtheȱDCN.ȱȱPublicȱusersȱwillȱbeȱ
ableȱtoȱaccessȱtheȱreplicationȱdatabaseȱoverȱtheȱInternetȱbyȱbeingȱredirectedȱfromȱtheȱ
court’sȱoutsideȱserver.ȱTheȱredirectionȱisȱtransparentȱtoȱtheȱuser;ȱitȱisȱaccomplishedȱbyȱ
addingȱaȱ“redirect”ȱlineȱtoȱtheȱApacheȱconfigurationȱfileȱonȱtheȱcourt’sȱOutsideȱserverȱ
(theȱReplicationȱFacilityȱwillȱprovideȱyouȱwithȱexactȱinstructions).
Failover of an Outside server
IfȱtheȱOutsideȱserverȱfailsȱbutȱtheȱInsideȱserverȱisȱavailable,ȱcourtȱusersȱwillȱcontinueȱ
toȱuseȱandȱdocketȱtoȱtheȱcourt’sȱlocalȱdatabase;ȱreplicationȱwillȱproceedȱasȱusual.ȱAfterȱ
theȱReplicationȱFacilityȱhasȱdoneȱtheȱappropriateȱsetup,ȱpublicȱusersȱwillȱbeȱableȱtoȱ
accessȱtheȱcourt’sȱdatabaseȱthroughȱtheȱReplicationȱFacility’sȱOutsideȱserver.ȱThisȱwillȱ
beȱaccomplishedȱinȱoneȱofȱseveralȱways:ȱ
— Ifȱtheȱcourt’sȱhomeȱpageȱisȱnotȱonȱtheȱfailedȱserver,ȱitsȱCM/ECFȱlinkȱcanȱsimplyȱ
beȱchangedȱtoȱpointȱtoȱtheȱOutsideȱserverȱatȱtheȱReplicationȱFacility.ȱȱ
— Ifȱtheȱcourt’sȱhomeȱpageȱisȱonȱtheȱfailedȱserver,ȱtheȱcourtȱwillȱneedȱtoȱnotifyȱ
publicȱusersȱofȱtheȱReplicationȱFacilityȱURLȱtoȱuse.ȱȱ
— Theȱpreferredȱwayȱtoȱaccomplishȱthisȱisȱtoȱhaveȱaȱnetworkȱengineerȱ
implementȱaȱredirectionȱatȱtheȱgatewayȱfirewallsȱsuchȱthatȱtheȱcourtȱOutsideȱ
usersȱwillȱbeȱredirectedȱtoȱtheȱ10ȱaddressȱofȱtheȱreplicationȱOutsideȱserverȱ
ratherȱthanȱtheȱ10ȱaddressȱofȱtheȱcourtȱOutsideȱserver.ȱȱ
08 Jul 2009
Release 4.0.2
4-2
District CM/ECF System Administrator’s Guide
Occasionallyȱaȱcourtȱmayȱnotȱwantȱtoȱhaveȱaȱredirectionȱimplementedȱatȱtheȱ
gatewayȱfirewalls.ȱInȱthatȱsituation,ȱtheȱcourtȱwillȱmakeȱaȱchangeȱtoȱtheȱ
CM/ECFȱlinkȱonȱtheirȱwebȱsiteȱsoȱthatȱitȱpointsȱtoȱtheȱURLȱofȱtheȱreplicationȱ
Outsideȱserverȱforȱtheirȱcourt.ȱ
— TheȱPACERȱServiceȱCenterȱcanȱalsoȱbeȱaskedȱtoȱchangeȱtheȱlinkȱonȱtheirȱsiteȱtoȱ
pointȱtoȱtheȱOutsideȱserverȱatȱtheȱReplicationȱFacility.
WhileȱtheȱReplicationȱFacilityȱOutsideȱserverȱisȱbeingȱused,ȱaccessȱchargesȱareȱ
accumulatedȱinȱaȱsetȱofȱnewȱbillingȱlogȱfilesȱonȱthatȱmachine.ȱIfȱaȱPACERȱuserȱselectsȱ
theȱ“ReviewȱBillingȱHistory”ȱfunctionȱduringȱthatȱtime,ȱonlyȱtheȱchargesȱincurredȱonȱ
thatȱmachineȱwillȱbeȱshown.ȱȱAfterȱtheȱcourt’sȱserverȱbecomesȱavailableȱagain,ȱtheȱ
PACERȱServiceȱCenterȱmustȱbeȱnotifiedȱsoȱthatȱtheyȱcanȱmergeȱtheȱreplicationȱserver’sȱ
billingȱdataȱwithȱthatȱonȱtheȱcourt’sȱserver;ȱtheȱBillingȱHistoryȱwillȱagainȱbeȱcomplete.
Failover of both servers
AfterȱReplicationȱFacilityȱstaffȱhaveȱcompletedȱtheȱnecessaryȱsetup,ȱtheȱcourtȱmustȱ
notifyȱpublicȱusersȱofȱtheȱURLȱofȱtheȱReplicationȱFacility’sȱOutsideȱserver;ȱcourtȱstaffȱ
mustȱbeȱgivenȱtheȱURLȱofȱtheȱreplicationȱdatabase.
Restoration of normal service after failover
Afterȱtheȱcourt’sȱserversȱareȱavailableȱagain,ȱReplicationȱFacilityȱandȱcourtȱstaffȱmustȱ
followȱproceduresȱwhichȱvaryȱaccordingȱtoȱtheȱcircumstancesȱofȱfailover.ȱȱIfȱtheȱ
replicationȱdatabaseȱserverȱwasȱusedȱinȱreadȬwriteȱmode,ȱtheȱcourt’sȱstepsȱmayȱ
includeȱrestoringȱfromȱaȱbackupȱofȱtheȱreplicationȱdatabase.ȱȱTheȱpreferredȱrestoreȱ
methodȱisȱaȱtapelessȱfailback.ȱThisȱinvolvesȱchangingȱtheȱinformixȱserverȱmodesȱofȱtheȱ
ReplicationȱandȱCourtȱserversȱbetweenȱprimary,ȱstandard,ȱandȱsecondaryȱtoȱ
synchronizeȱtheȱlogicalȱlogsȱoverȱtheȱnetwork.ȱDetailedȱfailbackȱproceduresȱwillȱbeȱ
providedȱbyȱtheȱReplicationȱFacility.
Forȱmoreȱinformation,ȱreferȱtoȱtheȱReplicationȱFAQȱonȱtheȱDistrictȱProductȱPageȱat:ȱȱ
http://www.aotx.ao.dcn/dc/default.asp#repl
08 Jul 2009
Release 4.0.2
4-3
District CM/ECF System Administrator’s Guide
Replication General Policy
NOTE Courts are responsible for maintaining their application software on their
replication server. Instructions are located at the end of this chapter in the section entitled
“Maintaining a Court’s Application Software on the Replication Servers”.
— UseȱofȱtheȱReplicationȱFacilityȱserversȱforȱaȱfailover,ȱwhetherȱreadȬonlyȱorȱ
readȬwriteȱisȱforȱshortȬtermȱuseȱonly.ȱTheȱgoalȱisȱtoȱrestoreȱserviceȱatȱtheȱcourtȱ
asȱexpeditiouslyȱasȱpossible.
— CourtȱstaffȱmustȱmaintainȱanyȱlocalȱmodificationsȱtoȱtheȱCM/ECFȱapplicationȱ
softwareȱorȱlocallyȬdevelopedȱapplicationsȱbeforeȱandȱduringȱfailoverȱonȱtheȱ
ReplicationȱFacilityȱservers.ȱ
— TheȱReplicationȱFacilityȱmayȱnotȱbeȱusedȱasȱaȱmeansȱofȱredistributingȱaȱcourt’sȱ
workloadȱorȱnetworkȱtraffic.ȱȱAnyȱexceptionsȱtoȱthisȱruleȱareȱtoȱbeȱdirectedȱbyȱ
eȬmailȱtoȱThomas_Baribeau@aotx.uscourts.gov.
Replication General Support Procedure
Thisȱsectionȱoutlinesȱtheȱgeneralȱsupportȱprocedureȱregardingȱreplicationȱcalls,ȱ
includingȱfailoverȱrequests.ȱAllȱfailover/failbackȱrequestsȱshouldȱhaveȱaȱsupportingȱ
emailȱwithȱtheȱfailoverȱtype,ȱreasonȱforȱfailover,ȱtheȱstartȬdateȱandȱtime,ȱtheȱstopȬdateȱ
andȱtimeȱ(ifȱknown),ȱpoint(s)ȱofȱcontact,ȱandȱprimary/alternateȱphoneȱnumbers.ȱ
NOTE Court Staff should contact the Replication Help Desk directly at 210-301-6315.
Routine Matters
Forȱroutineȱmattersȱsuchȱasȱthoseȱlistedȱbelow,ȱcallȱtheȱReplicationȱHelpȱDeskȱorȱsendȱ
anȱeȬmailȱtoȱcmȬecf_rep_ops@aotx.uscourts.govȱwithȱaȱcc:ȱtoȱdc@support.aotx.uscourts.gov.
•
Generalȱquestions
•
Coordinatingȱapplicationȱupgrades
•
Advancedȱ(scheduling)ȱrequestsȱforȱfailoverȱsupportȱȱ
AnȱeȬmailȱforȱadvancedȱschedulingȱforȱfailoverȱsupportȱshouldȱbeȱsubmittedȱaȱ
minimumȱofȱtwoȱdaysȱinȱadvance.ȱȱAcknowledgementȱofȱadvancedȱschedulingȱ
requestsȱshouldȱoccurȱwithinȱfourȱbusinessȱhours.
Implementationȱofȱaȱfailover/failbackȱrequestȱscheduledȱinȱadvanceȱcanȱoftenȱbeȱ
implementedȱinȱoneȱhourȱorȱless.ȱȱ
08 Jul 2009
Release 4.0.2
4-4
District CM/ECF System Administrator’s Guide
Emergency Procedures
Forȱanȱimmediateȱfailoverȱrequestȱ(dueȱtoȱhardwareȱfailure,ȱnetworkȱoutage,ȱnaturalȱ
disaster,ȱetc.),ȱcallȱȱ210Ȭ301Ȭ6315ȱandȱeȬmailȱcmȬecf_rep_ops@aotx.uscourts.govȱwithȱaȱcc:ȱ
toȱdc@support.aotx.uscourts.gov.ȱȱAnȱeȬmailȱacknowledgementȱofȱtheȱrequestȱshouldȱ
occurȱwithinȱ15ȱȬȱ30ȱminutes.ȱȱImplementationȱofȱtheȱfailoverȱshouldȱoccurȱwithinȱtwoȱ
hoursȱorȱless.
ȱ
08 Jul 2009
Release 4.0.2
4-5
District CM/ECF System Administrator’s Guide
Monitoring Replication
ThisȱsectionȱdescribesȱbothȱdbHeartBeat,ȱaȱutilityȱusedȱtoȱmonitorȱtheȱstatusȱofȱ
replication,ȱandȱtheȱReplicationȱStatusȱWebȱpage.
dbHeartBeat
TheȱprogramȱdbHeartBeatȱallowsȱCM/ECFȱtoȱmonitorȱtheȱstatusȱofȱreplication.ȱTheȱ
firstȱtimeȱitȱruns,ȱitȱcreatesȱaȱSiteȱtableȱentryȱnamedȱ“dbHeartBeat”ȱinȱyourȱliveȱ
database;ȱtheȱentryȱisȱupdatedȱwithȱaȱtimeȱstampȱeveryȱtimeȱitȱexecutes.ȱIfȱreplicationȱ
isȱworking,ȱtheȱupdatedȱvalueȱwillȱbeȱreflectedȱinȱtheȱreplicationȱdatabase;ȱsoftwareȱatȱ
theȱReplicationȱFacilityȱchecksȱitȱeveryȱtenȱminutes.ȱȱIfȱitȱdoesȱnotȱgetȱupdatedȱonȱ
schedule,ȱReplicationȱFacilityȱstaffȱareȱalertedȱviaȱemailȱsoȱthatȱreplicationȱcanȱbeȱ
restarted.ȱInstructionsȱforȱsettingȱupȱdbHeartBeatȱwillȱbeȱprovidedȱbyȱtheȱReplicationȱ
Facility.
Replication Status
Theȱstatusȱofȱallȱreplicatedȱdatabasesȱcanȱbeȱseenȱat:
http://repstatus-rep.gtwy.dcn/
Yourȱcourt’sȱreplicationȱstatusȱshouldȱappearȱinȱtheȱDistrictȱlist;ȱtheȱtimeȱinȱsecondsȱ
sinceȱtheȱlastȱupdateȱofȱtheȱtimeȱstampȱisȱshownȱ(rememberȱtoȱallowȱforȱtimeȱzoneȱ
differences).ȱȱIfȱreplicationȱfails,ȱyourȱserverȱwillȱappearȱinȱtheȱtopȱsectionȱofȱtheȱ
ReplicationȱStatusȱpageȱunderȱtheȱheadingȱ“DownȱSystems”.
Sinceȱtheȱmonitoringȱprocessȱisȱcheckingȱtime,ȱitȱisȱhelpfulȱifȱyourȱmachineȱhasȱtheȱ
correctȱtimeȱandȱdate.ȱȱToȱensureȱthatȱthisȱisȱtrue,ȱsetȱupȱtheȱntpdateȱprogramȱtoȱrunȱ
nightlyȱfromȱaȱcronȱentry.ȱȱPleaseȱseeȱtheȱLinuxȱdocumentationȱforȱdetailsȱ(typeȱman
ntpdate atȱtheȱshellȱprompt).ȱAskȱyourȱnetworkȱadministratorȱforȱtheȱIPȱaddressȱofȱanȱ
appropriateȱntpȱtimeȱserver.
Forȱmoreȱinformationȱonȱreplication,ȱreferȱtoȱtheȱReplicationȱFAQȱonȱtheȱDistrictȱ
ProductȱPageȱat:
http://www.aotx.ao.dcn/dc/
The RepEmail Site Table Entry
TheȱRepEmailȱsiteȱtableȱentryȱspecifiesȱoneȱorȱmoreȱemailȱaddressesȱtoȱwhichȱaȱ
messageȱisȱsentȱwhenȱtheȱreplicationȱprocessȱstartsȱorȱstops.ȱEachȱindividualȱatȱtheȱ
courtȱwhoȱisȱresponsibleȱforȱmonitoringȱreplicationȱshouldȱhaveȱtheirȱemailȱaddressȱ
listedȱinȱtheȱentry.
08 Jul 2009
Release 4.0.2
4-6
District CM/ECF System Administrator’s Guide
MultipleȱeȬmailȱaddressesȱareȱseparatedȱwithȱeitherȱaȱcommaȱorȱaȱspace,ȱbutȱnotȱboth.ȱȱ
Eitherȱofȱtheȱfollowingȱtwoȱexamplesȱwillȱwork:
•
Separatedȱbyȱspace:
Jane_Doe@ao.uscourts.gov Jill_Doe@ao.uscourts.gov
•
Separatedȱbyȱcomma
Jane_Doe@ao.uscourts.gov,Jill_Doe@ao.uscourts.gov,
Theȱfollowingȱexampleȱwillȱnotȱwork:
Jane_Doe@ao.uscourts.gov, Jill_Doe@ao.uscourts.gov
AnȱemailȱmessageȱwillȱbeȱsentȱtoȱallȱaddressesȱlistedȱinȱtheȱRepEmailȱsiteȱtableȱentryȱȱ
wheneverȱtheȱreplicationȱprocessȱisȱinterruptedȱforȱatȱleastȱ30ȱminutes.ȱTheȱentryȱdoesȱ
notȱimpactȱtheȱtimingȱofȱreplicationȱstatusȱemailȱmessagesȱinȱanyȱway.ȱTimingȱforȱ
theseȱmessagesȱactuallyȱcomesȱfromȱtheȱreplicationȱcenterȱsideȱofȱtheȱconnection.
CM/ECF Codes Table Entry Court Contacts
TheȱCM/ECFȱReplicationȱTeamȱmonitorsȱtheȱstatusȱofȱreplicationȱafterȱnormalȱ
businessȱhours,ȱonȱweekends,ȱandȱonȱholidays.ȱIfȱreplicationȱstops,ȱstaffȱmembersȱ
investigateȱtheȱproblem.ȱȱToȱreceiveȱtelephoneȱnotificationȱwhenȱaȱCM/ECFȱTeamȱ
memberȱnoticesȱthatȱreplicationȱstops,ȱmaintainȱaȱlistȱofȱafterȬhoursȱcontactsȱinȱtheȱ
Codesȱtable.
NOTE This information is only used for business purposes.
Forȱeachȱpersonȱtoȱbeȱcontacted,ȱcreateȱaȱcodesȱtableȱentryȱwithȱtheȱfollowingȱ
information:
Example
Type
Code
Translation
Miscellaneous
Other
08 Jul 2009
CourtContacts
Fred Systems
Home: 703-555-1212 Cell: 703-555-4321
ah1
No calls before 8 AM EST on the weekend
Release 4.0.2
4-7
District CM/ECF System Administrator’s Guide
Maintaining a Court’s Application Software on the
Virutal Replication Servers
Thisȱsectionȱconsistsȱofȱtheȱfollowingȱsections:
•
Introduction
•
PreparationsȱtoȱbeȱmadeȱforȱtheȱsoftwareȬcopyingȱprocess
•
TestingȱinȱreadȬonlyȱmode
•
TestingȱinȱreadȬwriteȱmode
Introduction
AsȱpartȱofȱnormalȱCM/ECFȱoperations,ȱeachȱtransactionȱisȱwrittenȱtoȱtheȱcourtȇsȱȈliveȈȱ
database,ȱandȱalsoȱtoȱaȱreplicationȱdatabaseȱonȱaȱsharedȱmultiȬprocessorȱserverȱatȱSaltȱ
LakeȱCity,ȱUTȱorȱReston,ȱVA.ȱIfȱtheȱcourtȇsȱInsideȱorȱOutsideȱserverȱbecomesȱ
unavailableȱforȱanyȱreason,ȱtheȱcourtȱmayȱinstructȱtheȱAOȱtoȱredirectȱusersȱtoȱaȱ
replicationȱserver.ȱThisȱredirectionȱisȱreferredȱtoȱasȱaȱȈfailoverȈ.
Thisȱsectionȱdescribesȱtheȱprocessȱwhichȱallowsȱeachȱcourtȱtoȱhaveȱfullȱcontrolȱoverȱ
theȱsoftwareȱrunningȱonȱtheȱreplicationȱservers,ȱsoȱthatȱtheȱfailoverȱenvironmentȱwillȱ
beȱidenticalȱtoȱtheȱcourt’sȱlocalȱenvironment.ȱTheȱcourtsȱwillȱbeȱresponsibleȱforȱ
copyingȱlocalȱapplicationȱcodeȱmodificationsȱfromȱtheirȱlocalȱserversȱtoȱtheȱ
appropriateȱreplicationȱserversȱ(InsideȱandȱOutside).ȱ
Inȱadditionȱtoȱmaintainingȱtheȱsoftware,ȱyouȱmayȱneedȱtoȱcopyȱotherȱfilesȱneededȱbyȱ
theȱapplication.ȱFilesȱsuchȱasȱformȱtemplates,ȱdataȱcollectors,ȱandȱgraphicsȱareȱ
checkedȱdailyȱandȱcanȱbeȱautomaticallyȱcopiedȱfromȱyourȱcourt’sȱInsideȱserverȱtoȱtheȱ
replicationȱserversȱifȱtheyȱchangeȱusingȱaȱrsyncȱprocess.
Preparations to be made for the software-copying process
Inȱorderȱforȱyouȱtoȱcopyȱsoftwareȱsafely,ȱandȱforȱlocallyȬdevelopedȱsoftwareȱtoȱrunȱ
safelyȱandȱwellȱonȱtheȱreplicationȱservers,ȱyouȱmustȱdoȱtheȱfollowing:
08 Jul 2009
Release 4.0.2
4-8
District CM/ECF System Administrator’s Guide
To set up and configure rsync transfers using cron
1. Generateȱaȱpublic/privateȱkeypairȱonȱyourȱInsideȱserverȱforȱtheȱrootȱuser:
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
31:11:7d:28:af:c9:f1:63:05:01:18:70:46:28:3d:5a root@servername
NOTE A keypair may already exist. If so, you may use the existing public key.
2. ȱOnȱbothȱtheȱInsideȱandȱOutsideȱreplicationȱservers,ȱdoȱtheȱfollowing:
a. Becomeȱroot’sȱequivalent:
sudo su -
b. Createȱaȱuser:
useradd courtIDrepsync
c.
Useȱvisudoȱtoȱopenȱtheȱ/etc/sudoersȱfile.
d. Inȱtheȱ/etc/sudoersȱfile,ȱdoȱtheȱfollowing:
(1) LocateȱtheȱUserȱprivilegeȱspecificationȱline,ȱandȱthenȱaddȱtheȱnewȱuserȱwithȱtheȱ
followingȱparameter:
courtIDrepsync ALL=NOPASSWD: /usr/bin/rsync
(2) Removeȱorȱcommentȱoutȱtheȱfollowingȱparameterȱ(ifȱitȱexists):
Defaults requiretty
(3) Saveȱandȱexitȱtheȱ/etc/sudoersȱfile.
e. AsȱtheȱcourtIDrepsyncȱuser,ȱcreateȱtheȱ.sshȱdirectoryȱandȱkeyȱfileȱonȱtheȱ
replicationȱserversȱ:
08 Jul 2009
Release 4.0.2
4-9
District CM/ECF System Administrator’s Guide
Forȱexample:
mkdir ~/.ssh
chown courtIDrepsync:courtIDrepsync ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys
f.
Cutȱtheȱcontentsȱofȱyourȱserver’sȱrootȱ.ssh/id_pub.rsaȱfile,ȱandȱthenȱpasteȱthemȱ
intoȱtheȱauthorized_keysȱfileȱforȱtheȱcourtIDrepsyncuserȱonȱtheȱreplicationȱ
server.
3. ChangeȱpermissionsȱforȱtheȱcourtIDrepsyncȱuser’sȱhome,ȱ.ssh,ȱauthorized_keys,ȱ
andȱconfigȱdirectoriesȱandȱfiles:
chmod go-w $HOME $HOME/.ssh
chmod 600 $HOME/.ssh/authorized_keys
echo "ForwardAgent yes" > ~/.ssh/config
chmod 600 ~/.ssh/config
4. Restartȱsshd:
service sshd restart
5. Createȱtheȱ/opt/DCECF/live/UpdateRepServerȱfileȱonȱtheȱcourt’sȱInsideȱserverȱ
andȱembedȱtheȱrsyncȱcommands.
Forȱexample:
#!/bin/bash
rsync -az --exclude "UspciRoutines.pl" --exclude "ECF-live" --exclude
"SiteSetup.pl" --exclude "TransmogrifyRec.pm" --exclude
"onconfig.wawd_shm" –-exclude “dcecf.ini” -e ssh --rsync-path "sudo rsync"
/opt/DCECF/live/ courtIDrepsync@156.119.xx.xxx:/opt/DCECF/live/
rsync --delete -az --exclude "CopyDocsToFile" -e ssh --rsync-path “sudo
rsync” /etc/cron/*
courtIDrepsync@156.119.xx.xxx:/home/courtIDrepsync/crons/
rsync -az --exclude "UspciRoutines.pl" --exclude "SiteSetup.pl" --exclude
"TransmogrifyRec.pm" -e ssh --rsync-path "sudo rsync" /data/docs1/outbackmirror/opt/DCECF/live/ courtIDrepsync@10.209.xx.xxx:/opt/DCECF/live/
rsync --delete -az -e ssh --rsync-path "sudo rsync" /data/docs1/outbackmirror/etc/cron* courtIDrepsync@10.209.xx.xxx:/home/courtIDrepsync/crons/
NOTE This example contains four separate rsync commands (two each for the Inside
and Outside server). Blank lines were inserted between commands for readability purposes
only. Outside server files are extracted from the outback backup files located on your Inside
server.
08 Jul 2009
Release 4.0.2
4-10
District CM/ECF System Administrator’s Guide
TIP The file should be owned by root:root with permission’s of 775. The –exclude
parameters specify files not to overwrite on replication.
CAUTION On the replication server, court cron files should be placed in a directory other
than /etc/cron*, and they should be commented out.
NOTE Ensure the user account is associated with the root public key from your server
created earlier and IP addresses for your replication servers are modified appropriately.
6. Createȱaȱcronȱfileȱthatȱcallsȱtheȱfileȱwithȱyourȱembeddedȱrsyncȱcommands:
# cat UpdateRepServer
SHELL=/bin/bash
PATH=$PATH:/bin:/usr/bin
00 17 * * * root /opt/DCECF/UpdateRepServer >>
/var/log/ecf/UpdateRepServer.log
7. Ifȱaȱcommercialȱproductȱisȱneededȱforȱyourȱlocalȱapplications,ȱpurchaseȱaȱlicenseȱ
forȱtheȱreplicationȱserverȱorȱverifyȱwithȱtheȱvendorȱthatȱinstallationȱonȱaȱbackupȱ
deviceȱisȱpermitted.ȱ
Beȱsureȱthatȱtheseȱrequirementsȱareȱmetȱforȱanyȱsoftwareȱyourȱcourtȱdevelopsȱinȱ
theȱfuture.
Testing in read-only mode
Whenȱyouȱhaveȱcompletedȱtheȱstepsȱshownȱaboveȱtoȱuploadȱtheȱsoftware,ȱrunȱtheȱ
applicationȱusingȱtheȱURLȱthatȱisȱonȱtheȱReplicationȱServersȱStatusȱpage.ȱByȱdefault,ȱ
youȱwillȱbeȱinȱreadȬonlyȱmode,ȱsoȱtheȱQueryȱandȱReportsȱmenusȱareȱtheȱonlyȱonesȱ
availableȱ(menuȱoptionsȱwillȱshowȱifȱtheyȱhaveȱtheȱ“Allowȱinternetȱaccess”ȱboxȱ
checkedȱinȱtheȱapplication’sȱEditȱMenuȱfacility).ȱMakeȱsureȱtheȱoptionsȱonȱtheseȱ
menusȱareȱworkingȱproperlyȱ(bothȱstandardȱandȱlocallyȱdevelopedȱprograms).
Whenȱyouȱhaveȱfinishedȱtestingȱonȱtheȱinsideȱserver,ȱtestȱtheȱoutsideȱserverȱsoftware.ȱȱ
Giveȱtheȱbrowserȱtheȱserver’sȱIPȱaddressȱfromȱtheȱReplicationȱServersȱStatusȱpageȱ(theȱ
IPȱyouȱusedȱwhenȱyouȱinstalledȱtheȱsoftware).ȱWhenȱloggingȱinȱtoȱtheȱapplication,ȱuseȱ
aȱregularȱCM/ECFȱlogin,ȱNOTȱaȱPACERȱlogin.
NOTE If you have developed software that uses ODBC to read the database, you will
need to set your services file, datasource, etc. for the replication database. The values to
use are listed below.
•
•
08 Jul 2009
replicationȱmachineȱnameȱtheȱnameȱfromȱtheȱReplicationȱServersȱStatusȱpage,ȱ
e.g.,rep10.ecf.res.gtwy.dcn
portȱnumberȱtheȱnumberȱinȱtheȱ/etc/servicesȱfileȱforȱyourȱcourt’sȱreplicationȱ
instance
Release 4.0.2
4-11
District CM/ECF System Administrator’s Guide
•
InformixȱinstanceȱcourtID_repl
•
databaseȱnameȱcourtID_live
Testing in read-write mode
Dueȱtoȱtheȱintroductionȱofȱarchiving,ȱtheȱ“pointȱtoȱtest”ȱandȱ“pointȱtoȱtrain”ȱprocessesȱ
manyȱofȱyouȱuseȱtoȱtestȱyourȱapplicationȱsoftwareȱandȱlocalȱmodificationsȱonȱtheȱ
replicationȱserverȱdoȱnotȱworkȱatȱthisȱtime.ȱTheseȱprocessesȱstoppedȱworkingȱbecauseȱ
theȱecf_webȱpasswordȱgenerationȱprocessȱchanged.ȱInȱtheȱpast,ȱthisȱpasswordȱwasȱ
static.ȱNow,ȱtheȱpasswordȱresetsȱeachȱtimeȱtheȱapplicationȱsoftwareȱisȱstarted.ȱTheȱ
CM/ECFȱapplicationȱwillȱnotȱconnectȱtoȱaȱremoteȱdatabaseȱunlessȱtheȱecf_webȱ
passwordȱisȱtheȱsameȱonȱtheȱcourtȱserverȱandȱtheȱreplicationȱserver.
OfficeȱofȱCourtȱAdministration,ȱTechnologyȱDivisionȱ(OCAȬTD)ȱstaffȱmembersȱareȱ
reviewingȱthisȱissue.ȱWeȱwillȱkeepȱyouȱupdatedȱonȱtheȱstatusȱthroughȱtheȱ
Aoml_RepOps_allrecipientsȱannounceȱlist.
08 Jul 2009
Release 4.0.2
4-12
CHAPTER
5
5
Public Access
In This Chapter
•
PACER
•
U.S.ȱPartyȱCaseȱIndex
•
PublicȱTerminals
District CM/ECF System Administrator’s Guide
PACER
DistrictȱPACERȱsoftwareȱusesȱtheȱcentralizedȱPACERȱauthenticationȱprocessȱforȱuserȱ
logins.ȱTheȱcentralizedȱauthenticationȱprocessȱallowsȱtheȱJudiciaryȱtoȱauthenticateȱ
PACERȱusersȱonȱoneȱofȱtwoȱnationalȱgatewayȱsitesȱratherȱthanȱdistributingȱtheȱ
PACERȱpasswordsȱtoȱeachȱsite.ȱȱWhenȱaȱuserȱattemptsȱtoȱlogȱinȱatȱaȱcourtȱsite,ȱtheyȱareȱ
transferredȱtoȱoneȱofȱtheȱauthenticationȱservers.ȱȱTheyȱareȱvalidated,ȱissuedȱaȱcookie,ȱ
andȱtransferredȱbackȱtoȱtheȱcourtȱsystem.
Theȱprocessȱisȱdescribedȱinȱtheȱdocumentȱtitledȱ“CentralizedȱPACERȱAuthenticationȱ
Process”ȱat:
http://pspsc.psc.ao.dcn/documents/centralized.pdf
Toȱobtainȱaȱusernameȱandȱpassword,ȱPACERȱusersȱneedȱtoȱregisterȱwithȱtheȱPACERȱ
ServiceȱCenter.ȱInȱaddition,ȱtheȱPACERȱServiceȱCenterȱalsoȱprovidesȱaȱlinkȱtoȱallowȱ
usersȱtoȱchangeȱtheirȱclientȱcodes:
https://pacer.login.uscourts.gov/cgi-bin/client.pl?court id=xxxx
PublicȱusersȱareȱchargedȱtoȱviewȱCM/ECFȱreportsȱandȱqueries,ȱandȱmustȱlogȱinȱtoȱ
CM/ECFȱwithȱaȱvalidȱPACERȱaccount.ȱPACERȱaccountsȱareȱadministeredȱbyȱtheȱ
PACERȱServiceȱCenterȱ(PSC).ȱAtȱtheȱendȱofȱeachȱreport/query,ȱaȱPACERȱuserȱseesȱaȱ
receiptȱshowingȱtheȱcharges,ȱbasedȱonȱtheȱnumberȱofȱpagesȱdisplayedȱandȱaȱbillingȱ
transactionȱisȱcreated.ȱȱTheȱPSCȱusesȱtheȱtransactionȱdataȱtoȱbillȱPACERȱusers.
CM/ECFȱtransmitsȱtheȱdataȱtoȱaȱPSCȱstagingȱserver,ȱfromȱwhichȱitȱisȱpassedȱtoȱaȱ
CentralȱBillingȱServer.ȱȱTheȱlatterȱhostsȱaȱcentralȱbillingȱtransactionȱdatabaseȱmanagedȱ
byȱtheȱPSC.
Theȱ“ReviewȱBillingȱHistory”ȱoptionȱinȱCM/ECFȱredirectsȱtheȱuserȱtoȱaȱprogramȱonȱ
theȱstagingȱserver,ȱwhichȱprovidesȱdataȱforȱrecentȱmonths;ȱtheȱuserȱcanȱspecifyȱoneȱorȱ
moreȱcourtsȱforȱwhichȱdataȱshouldȱbeȱreported.ȱTheȱ“ReviewȱTransactionȱHistory”ȱ
optionȱonȱtheȱPSCȱsiteȱcontinuesȱtoȱprovideȱaȱwiderȱrangeȱofȱbillingȱdataȱ(upȱtoȱ24ȱ
monthsȱold);ȱthatȱdataȱisȱobtainedȱfromȱtheȱcentralȱbillingȱdatabase.ȱȱ
TheȱrevisedȱPACERȱbillingȱfunctionȱincorporatesȱtheȱprocessingȱformerlyȱdoneȱbyȱtheȱ
ECFbillȱprogram,ȱincludingȱtheȱproductionȱofȱtheȱreceipt.ȱItȱwritesȱbillingȱinformationȱ
intoȱtheȱpacer_billingȱtableȱinȱtheȱcourt’sȱdatabase.
AȱdaemonȱcalledȱPacerSendDaemon,ȱwhichȱisȱrunȱeveryȱ30ȱseconds,ȱretrievesȱfromȱ
theȱpacer_billingȱtableȱthoseȱrecordsȱthatȱhaveȱnotȱyetȱbeenȱsent,ȱandȱformatsȱ
correspondingȱXMLȱtransactionsȱwhichȱareȱthenȱtransmittedȱtoȱoneȱofȱtheȱ“stagingȱ
servers”ȱmaintainedȱbyȱtheȱPSC;ȱtheȱXMLȱisȱnotȱsavedȱonȱtheȱCM/ECFȱserver.ȱTheȱ
daemonȱwaitsȱforȱanȱacknowledgement;ȱwhenȱaȱ“success”ȱisȱreceivedȱforȱaȱbatchȱofȱ
08 Jul 2009
Release 4.0.1
5-2
District CM/ECF System Administrator’s Guide
transactions,ȱitȱmarksȱtheȱappropriateȱpacer_billingȱrecordsȱinȱtheȱdatabaseȱ(setȱ
pb_sent_to_pscȱtoȱ“Y”).ȱȱAfterȱrecordingȱtheȱacknowledgmentȱinȱtheȱ“info”ȱlogȱfile,ȱ
theȱdaemonȱsleepsȱforȱoneȱminuteȱbeforeȱagainȱcheckingȱforȱtransactions;ȱthisȱdelayȱ
ensuresȱthatȱtheȱdataȱstreamȱwillȱnotȱexceedȱtheȱcapacityȱofȱtheȱstagingȱserverȱtoȱ
receiveȱit.
Transactionsȱinȱaȱbatchȱforȱwhichȱnoȱacknowledgmementȱisȱreceivedȱ(orȱforȱwhichȱaȱ
“failure”ȱisȱreceived)ȱwillȱnotȱbeȱmarkedȱsoȱthatȱtheyȱwillȱbeȱpickedȱupȱagainȱforȱtheȱ
nextȱtransmission.
Theȱacknowledgementsȱandȱanyȱerrorsȱwillȱbeȱrecordedȱinȱtheȱstandardȱapplicationȱ
logsȱ(theȱ“info”ȱandȱ“error”ȱlogsȱinȱ/var/log/ecf).
Theȱpostingȱtoȱtheȱstagingȱserverȱoccursȱoverȱaȱsecureȱconnectionȱ(SSL)ȱviaȱHTTPȱtoȱaȱ
perlȱscript,ȱspecifiedȱbyȱtheȱSiteȱtableȱentryȱPacerStagingURL.
TheȱetransȱprogramȱonȱtheȱstagingȱserversȱwillȱpostȱtheȱbillingȱtransactionsȱviaȱSSLȱtoȱ
theȱcentralȱbillingȱserver,ȱinȱXMLȱformat.ȱTheȱcentralȱserverȱwillȱreturnȱanȱ
acknowledgementȱforȱaȱsuccessfulȱtransmission;ȱatȱpredeterminedȱintervals,ȱetransȱ
willȱresendȱtoȱtheȱcentralȱbillingȱserverȱanyȱtransactionsȱforȱwhichȱitȱdidȱnotȱreceiveȱanȱ
acknowledgement.ȱTransactionsȱwillȱbeȱstoredȱinȱanȱInformixȱdatabaseȱonȱtheȱcentralȱ
billingȱserver,ȱlocatedȱatȱtheȱRestonȱgateway.ȱȱAȱreplicatedȱversionȱofȱthisȱdatabaseȱ
willȱbeȱlocatedȱatȱtheȱLee’sȱSummitȱgateway.ȱȱAllȱserversȱwillȱresideȱinȱaȱsecureȱzoneȱ
andȱwillȱnotȱbeȱdirectlyȱaccessibleȱtoȱexternalȱusers.
08 Jul 2009
Release 4.0.1
5-3
District CM/ECF System Administrator’s Guide
CM/ECF Billing Transaction Process
CM/ECF Inside Servers
Lee’s Summit Load Balance
Reston Load Balance
Staging
Servers
Secure Zone
HITACHI
Central Billing Transaction Server
DuringȱaȱreadȬwriteȱfailover,ȱtheȱprocessȱofȱcreatingȱandȱtranmittingȱbillingȱ
transactionsȱwillȱbeȱtheȱsameȱasȱonȱtheȱcourtȱserver.ȱȱStaffȱatȱtheȱReplicationȱ
OperationsȱCenterȱwillȱstartȱPacerSendDaemonȱonȱtheȱreplicationȱserver,ȱandȱPSCȱ
willȱcontinueȱtoȱreceiveȱbillingȱdataȱforȱtheȱcourt.
AlternateȱprocessingȱwillȱbeȱrequiredȱinȱCM/ECFȱduringȱaȱreadȬonlyȱfailover.ȱWhenȱ
theȱapplicationȱdetectsȱthisȱsituation,ȱitȱwillȱwriteȱtheȱbillingȱdataȱtoȱaȱBerkeleyȱUNIXȱ
databaseȱinȱ/gov/ecf/dataȱonȱtheȱreplicationȱserver;ȱtheȱdatabaseȱwillȱbeȱcreatedȱifȱ
necessaryȱ(namedȱRepBillingDB.INFORMIXSERVER).ȱStaffȱatȱtheȱReplicationȱ
OperationsȱCenterȱwillȱstartȱPacerSendDaemonȱwithȱaȱparameterȱthatȱdirectsȱitȱtoȱ
extractȱdataȱfromȱthisȱdatabase;ȱdataȱwillȱbeȱprocessed/transmittedȱinȱtheȱsameȱ
mannerȱasȱifȱitȱcameȱfromȱtheȱCM/ECFȱdatabase.ȱȱPSCȱprocessingȱcanȱcontinueȱ
uninterrupted;ȱbillingȱtransactionsȱwillȱsimplyȱbeȱcomingȱfromȱaȱdifferentȱserver.ȱTheȱ
appropriateȱrecordsȱinȱtheȱBerkeleyȱdatabaseȱwillȱbeȱdeletedȱafterȱaȱbatchȱ
acknowledgementȱisȱreceivedȱfromȱPSCȱ(thoseȱrecordsȱwillȱneverȱbeȱaddedȱtoȱtheȱ
Informixȱdatabase).
08 Jul 2009
Release 4.0.1
5-4
District CM/ECF System Administrator’s Guide
Whenȱtheȱdataȱcannotȱbeȱwrittenȱtoȱtheȱdatabase,ȱitȱisȱwrittenȱtoȱanȱalternateȱ
repositoryȱ(externalȱfileȱorȱsimpleȱnonȬInformixȱdatabase).ȱȱDataȱisȱsentȱfromȱthisȱ
alternateȱlocationȱ(andȱdeletedȱorȱmarkedȱasȱsent).ȱHowever,ȱsinceȱtheȱtransactionȱhasȱ
notȱbeenȱinsertedȱintoȱtheȱdatabase,ȱtheȱnormalȱIDȱsequenceȱforȱtransactionsȱareȱnotȱ
maintained;ȱaȱdistinctiveȱvalueȱforȱtheȱIDȱisȱusedȱtoȱmarkȱtheseȱtransactionsȱasȱhavingȱ
comeȱviaȱthisȱirregularȱrouteȱ(e.g.,ȱtheȱvalueȱofȱaȱcontinuallyȬchangingȱvariableȱisȱ
addedȱtoȱeachȱIDȱinȱaȱseriesȱwhichȱbeginsȱatȱanȱunusuallyȬhighȱnumber).ȱȱNoteȱthatȱ
theȱtransactionsȱcontainȱaȱdate/timeȱstamp,ȱwhichȱmayȱhelpȱinȱverifyingȱtheȱ
continuityȱofȱtheȱdataȱstreamȱwhenȱsequentialȱtransactionȱIDsȱareȱnotȱavailable.ȱȱ
AȱPACERȱuserȱwhoȱchoosesȱtheȱ“ReviewȱBillingȱHistory”ȱoptionȱinȱCM/ECFȱisȱ
redirectedȱtoȱaȱlinkȱonȱtheȱstagingȱserver,ȱasȱspecifiedȱbyȱtheȱSiteȱtableȱentryȱ
PacerHistoryURL.ȱȱInȱaȱnewȱbrowserȱwindow,ȱtheȱuserȱcanȱsearchȱforȱtransactionsȱinȱ
theȱcurrentȱandȱpreviousȱmonthsȱforȱaȱspecificȱcourtȱorȱallȱcourts;ȱdataȱisȱthenȱ
retrievedȱfromȱtheȱcentralȱbillingȱtransactionȱdatabaseȱandȱformattedȱaccordingȱtoȱtheȱ
optionsȱselectedȱbyȱtheȱuser.
08 Jul 2009
Release 4.0.1
5-5
District CM/ECF System Administrator’s Guide
“Review Billing History” Process
PACER User
Lee’s Summit Load B
Reston Load Balance
Staging
Servers
Secure Zone
HITACHI
Central Billing Transaction Server
Transactionsȱforȱotherȱmonthsȱareȱavailableȱonlyȱviaȱtheȱ“ReviewȱTransactionȱ
History”ȱoptionȱwithinȱtheȱAccountȱInformationȱsectionȱofȱtheȱPSCȱsite.ȱȱDuplicateȱ
andȱzeroȬpageȱtransactionsȱwillȱhaveȱbeenȱremoved,ȱsoȱwhatȱtheȱuserȱseesȱ
correspondsȱtoȱwhatȱwillȱappearȱonȱtheirȱstatementȱatȱtheȱendȱofȱtheȱquarter.
InȱCM/ECF,ȱtheȱfunctionȱwhichȱproducesȱtheȱreceiptȱcalculatesȱtheȱchargesȱbasedȱonȱ
theȱperȬpageȱamountȱstoredȱinȱtheȱnewȱpacer_pageȱtable1;ȱonlyȱtheȱInformixȱuserȱ
(andȱroot)ȱhasȱwriteȱpermissionsȱforȱthisȱtable.ȱȱȱAȱWebȬaccessibleȱprogramȱresidesȱonȱ
eachȱcourt’sȱserverȱthatȱdisplaysȱtheȱcurrentȱperȬpageȱcost,ȱsoȱthatȱPSCȱcanȱreadilyȱ
verifyȱtheȱvalueȱatȱanyȱtime.
AȱcgiȬbinȱprogramȱcalledȱGetPacerTrans.plȱreturnsȱdetailedȱdataȱforȱaȱsingleȱ
transactionȱbasedȱonȱitsȱID.ȱȱItȱwillȱapplyȱonlyȱtoȱtransactionsȱthatȱhaveȱbeenȱaddedȱtoȱ
theȱCM/ECFȱdatabase.
1.
08 Jul 2009
If a current pacer_page record does not exist, the receipt will display “TBD” for the cost.
Release 4.0.1
5-6
District CM/ECF System Administrator’s Guide
PacerSendDaemon
TheȱPacerSendDaemonȱprogram,ȱwhichȱisȱlocatedȱinȱ/opt/DCECF/live/server/server,ȱ
runsȱeveryȱ30ȱsecondsȱtoȱretrieveȱPACERȱbillingȱtransactionsȱtoȱtransmitȱtoȱtheȱ
PACERȱServiceȱCenter.ȱTheȱprogramȱcanȱbeȱstarted,ȱstoppedȱorȱrestartedȱwithȱtheȱ
serviceȱcommand.ȱȱForȱinstance,ȱservice RunPacerSendDaemon stop,ȱwillȱkillȱtheȱ
PacerSendDaemonȱprocess.ȱTheȱcronȱfileȱPacerSendDaemonCron,ȱlocatedȱinȱ
/etc/cron.d,ȱactsȱasȱaȱbackupȱtoȱPacerSendDaemon.ȱEveryȱtwoȱhoursȱitȱchecksȱtoȱ
ensureȱtheȱPacerSendDaemonȱprocessȱisȱstillȱrunning.ȱIfȱitȱhasȱdiedȱforȱsomeȱreason,ȱitȱ
restartsȱit.
IMPORTANT Whenever you perform database maintenance, whether upgrading the
database schema or upgrading to a newer version of the Informix RDBMS, the
PacerSendDaemon process must be stopped, and the PacerSendDaemonCron must be
disabled.
To disable PacerSendDaemon
1. Asȱtheȱrootȱuser,ȱstopȱtheȱPacerSendDaemonȱprocess:
service RunPacerSendDaemon stop
2. Changeȱdirectory:
cd /etc/cron.d
3. ModifyȱPacerSendDaemonCron,ȱinsertingȱaȱpoundȱsignȱinȱfrontȱofȱtheȱcronȱentry.
#05 0,2,4,6,8,10,12,14,16,18,20,22 * * * root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e
“courtID_live” -r /opt/DCECF/live/server/server/PacerSendDaemon.courtID_live.log 2>&1’
4. Restartȱcron:
service crond restart
5. Onceȱdatabaseȱmaintenanceȱhasȱbeenȱcompleted:
a. RemoveȱtheȱpoundȱsignȱfromȱPacerSendDaemonCronȱandȱrestartȱcron.
service crond restart
b. RestartȱRunPacerSendDaemon.
service RunPacerSendDaemon start
08 Jul 2009
Release 4.0.1
5-7
District CM/ECF System Administrator’s Guide
U.S. Party Case Index
TheȱPSCȱisȱalsoȱresponsibleȱforȱtheȱU.ȱS.ȱPartyȱCaseȱIndex.ȱȱAppropriateȱdataȱisȱ
extractedȱfromȱyourȱreplicationȱdatabaseȱeachȱdayȱandȱisȱretrievedȱbyȱPSC.ȱȱNoȱ
processingȱisȱdoneȱonȱtheȱcourtȱmachine.ȱ
08 Jul 2009
Release 4.0.1
5-8
District CM/ECF System Administrator’s Guide
Public Terminals
Thisȱsectionȱdescribesȱhowȱtoȱconfigureȱpublicȱterminalsȱatȱyourȱcourtȱsoȱusersȱcanȱ
accessȱcaseȱinformationȱwithoutȱenteringȱaȱloginȱID,ȱandȱconsistsȱofȱtheȱfollowingȱ
sections:
•
Overview
•
SettingȱUpȱPACERȬNetȱConnectivity
•
SettingȱUpȱtheȱPublicȱTerminals
Overview
Toȱconfigureȱpublicȱterminals,ȱyouȱwillȱneedȱaȱcomputerȱwithȱaȱbrowserȱandȱPACERȬ
Netȱconnectivity.
Theȱfollowingȱillustrationȱdepictsȱhowȱtheȱpublicȱterminalsȱareȱconnectedȱatȱtheȱmainȱ
andȱdivisionalȱoffices.
Public terminals at the main and divisional offices
08 Jul 2009
Release 4.0.1
5-9
District CM/ECF System Administrator’s Guide
Setting Up PACER-Net Connectivity
Thisȱsectionȱdescribesȱhowȱtoȱconnectȱpublicȱterminalsȱatȱyourȱcourt’sȱmainȱandȱ
divisionalȱofficesȱtoȱPACERȬNet.
Main office
TheȱCM/ECFȱserversȱinstalledȱatȱyourȱmainȱofficeȱshouldȱalreadyȱhaveȱPACERȬNetȱ
connectivity.ȱYouȱmustȱrunȱnetworkȱcablesȱtoȱconnectȱtheȱpublicȱterminalsȱtoȱtheȱ
PACERȬNetȱCiscoȱswitch.
Divisional office
Forȱaȱdivisionalȱoffice,ȱwhichȱdoesȱnotȱhaveȱPACERȬNetȱconnectivity,ȱtheȱNetworkȱ
ManagementȱFacilityȱ(NMF)ȱconfiguresȱtheȱDCNȱrouterȱtoȱsupportȱpublicȱterminals.ȱ
Forȱquestions,ȱcallȱtheȱNMFȱatȱ(800)ȱ326Ȭ3008.ȱToȱstartȱtheȱprocess,ȱsendȱanȱeȬmailȱtoȱ
NMFȱNetworkȱSupport/DCA/AO/USCOURTS.ȱInȱtheȱSubjectȱline,ȱtypeȱDivisional
office public terminal setup.ȱInȱtheȱmessage,ȱprovideȱtheȱfollowingȱinformation:
•
Officeȱlocation
•
IPȱaddressȱofȱtheȱdivisionalȱofficeȱrouter
•
Aȱ10.x.x.xȱIPȱaddressȱ(fromȱtheȱPACERȬNetȱsubnet)ȱforȱtheȱsecondaryȱEthernetȱ
portȱ(F0/1)ȱonȱtheȱrouter
•
Aȱ156.x.x.xȱIPȱaddressȱ(fromȱtheȱdivision’sȱsubnet)ȱforȱportȱaddressȱtranslationȱ
(PAT)ȱonȱtheȱdivisionalȱofficeȱrouter
NMFȱconfiguresȱtheseȱthreeȱitems:
Subnet
ToȱpreventȱpublicȱtrafficȱfromȱaccessingȱtheȱDCN,ȱtheȱNMFȱassignsȱtheȱsecondaryȱ
Ethernetȱ(F0/1)ȱinterfaceȱonȱtheȱdivisionalȱofficeȱDCNȱrouterȱtoȱtheȱcourt’sȱPACERȬNetȱ
subnet.ȱThisȱisȱaȱ10.x.x.xȱIPȱnumber.
PAT
ToȱrouteȱdivisionalȱofficeȱpublicȱaccessȱrequestsȱtoȱtheȱOutsideȱserver,ȱtheȱNMFȱ
assignsȱtheȱdivisionalȱofficeȱDCNȱrouterȱaȱPortȱAddressȱTranslationȱ(PAT).ȱThisȱisȱaȱ
156.x.x.xȱIPȱaddressȱfromȱtheȱdivision’sȱsubnet.
08 Jul 2009
Release 4.0.1
5-10
District CM/ECF System Administrator’s Guide
ACL
ToȱensureȱthatȱpublicȱterminalsȱcanȱonlyȱconnectȱtoȱPACERȬNet,ȱandȱnotȱtoȱotherȱ
DCNȱaddresses,ȱtheȱNMFȱupdatesȱtheȱAccessȱControlȱListsȱ(ACL)ȱonȱtheȱdivisionalȱ
officeȱDCNȱrouter.ȱInȱtheȱACL,ȱtheȱPACERȬNetȱterminal’sȱIPȱaddressȱ(10.x.x.x)ȱisȱ
givenȱaccessȱtoȱtheȱPACERȬNetȱsubnetȱonly.
Configuring static routes
EnsureȱtheȱdivisionalȱofficeȇsȱsubnetȱisȱincludedȱinȱtheȱstaticȱroutesȱonȱtheȱOutsideȱ
server.
To check the router configuration
1. Runȱtheȱfollowingȱcommand:
netstat -nr
2. InȱtheȱDestinationȱcolumn,ȱdoȱoneȱofȱtheȱfollowing:
•
Ifȱtheȱdivisionȇsȱsubnetȱorȱtheȱ156.132.0.0ȱaddressȱappears,ȱnoȱactionȱisȱ
required.
•
Ifȱtheȱdivisionȇsȱsubnetȱisȱnotȱincludedȱinȱtheȱroutingȱtable,ȱaddȱtheȱdivisionȇsȱ
subnetȱtoȱtheȱ/etc/sysconfig/networkȬscripts/routeȬeth0ȱfile.ȱThisȱchangeȱwillȱ
takeȱeffectȱafterȱtheȱnextȱreboot.
Setting Up the Public Terminals
Dependingȱonȱtheirȱlocation,ȱpublicȱterminalȱcomputersȱresideȱonȱbothȱtheȱPACERȬ
NetȱsegmentȱandȱtheȱDCN.ȱAllȱpublicȱterminalsȱareȱconfiguredȱwithȱaȱ10.x.x.xȱIPȱ
address.
To configure a public terminal
1. Onȱtheȱpublicȱterminalȱcomputer,ȱupdateȱtheȱTCP/IPȱpropertiesȱasȱfollows:
Field
IP address
Your court’s assigned PACER-Net subnet (10.x.x.x)
Subnet mask
255.255.255.0
Default gateway
08 Jul 2009
Value
For headquarters: 10.x.x.x IP address of the PACER-Net
router
For a divisional site: 10.x.x.x IP address assigned to
(F0/1).
Release 4.0.1
5-11
District CM/ECF System Administrator’s Guide
2. Inȱtheȱhostsȱfile,ȱaddȱanȱentryȱforȱtheȱPACERȬNetȱaddressȱofȱtheȱOutsideȱserver.ȱ
OnȱWindowsȱ2000,ȱtheȱfileȱisȱlocatedȱinȱC:\WINNT\system32\drivers\etc.
For public terminals located at the court's headquarters:
TheȱhostȱnameȱshouldȱmatchȱtheȱexternalȱdomainȱnameȱofȱtheȱCM/ECFȱsiteȱtoȱ
avoidȱbrowserȱ“certificateȱnameȱmismatch”ȱwarningsȱandȱerrors.
Example:ȱȱȱȱȱȱȱȱȱȱȱ10.213.12.100 ecf.courtID.uscourts.gov
For public terminals located at the court’s divisional office
Theȱhostsȱfileȱmustȱcontainȱtheȱ156.x.x.xȱNetworkȱAddressȱTranslationȱ(NAT)ȱIPȱ
addressȱofȱtheȱOutsideȱserver.
Example:ȱȱȱȱȱȱȱȱȱȱȱȱȱȱ156.124.30.220 ecf.courtID.uscourts.gov
NOTE Close all open browsers. Any new browser sessions that are opened will use the
new hosts file.
3. Setȱtheȱbrowserȱhomeȱpageȱforȱtheȱpublicȱterminalȱtoȱtheȱpublicȱterminalȱscriptȱatȱ
https://ecf.courtID.uscourts.gov/cgiȬbin/login.pl.
•
ToȱsetȱtheȱhomeȱpageȱaddressȱinȱInternetȱExplorer:
OnȱtheȱToolsȱmenu,ȱclickȱInternetȱOptions.
•
ToȱsetȱtheȱhomeȱpageȱaddressȱinȱFoxfire:
OnȱtheȱToolsȱmenu,ȱclickȱOptions,ȱthenȱselectȱMain.
Modifying ssl.conf on the Outside server
Followȱtheȱinstructionsȱbelowȱ(asȱuserȱroot)ȱtoȱmodifyȱtheȱssl.confȱfileȱonȱyourȱ
Outsideȱserver
1. Changeȱdirectory:
cd /etc/httpd/conf.d
2. Editȱtheȱssl.confȱfile:
08 Jul 2009
Release 4.0.1
5-12
District CM/ECF System Administrator’s Guide
a. Addȱtheȱlinesȱhighlightedȱbelowȱtoȱtheȱendȱofȱtheȱfileȱandȱbeforeȱtheȱcloseȱtagȱ
(
b. Disableȱtheȱfollowingȱtwoȱlinesȱbyȱprecedingȱthemȱwithȱaȱpoundȱsignȱ(#):
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
c.
Addȱtheȱhighlightedȱline,ȱasȱshownȱbelow,ȱtoȱtheȱdefaultȱVirtualHostȱ
container.ȱThisȱisȱneededȱforȱcrossȬdocumentȱhyperlinks:
“ScriptAlias /doc1/ /opt/DCECF/live/web/cgi-bin/show_doc.pl/”
3. Restartȱapache:
service httpd restart
Enabling the Public Terminals
Onceȱtheȱpublicȱterminalsȱhaveȱbeenȱsetȱup,ȱtwoȱCodesȱtableȱentriesȱneedȱtoȱbeȱ
modifedȱforȱyourȱcourt,ȱȱpacer_pubtermȱandȱpaceracct.
1. SelectȱUtilitiesȱȬ>ȱUpdateȱSystemȱTablesȱȬ>ȱCodesȱTable
2. ModifyȱtheȱCodesȱtableȱentryȱȱpacer_pubterm:
•
08 Jul 2009
ChangeȱtheȱIPȱaddressȱforȱtheȱfirstȱpublicȱterminalȱinȱtheȱTranslationȱfield
Release 4.0.1
5-13
District CM/ECF System Administrator’s Guide
•
Forȱaȱsecondȱpublicȱterminal,ȱcreateȱaȱsecondȱpacer_pubtermȱrecordȱwithȱaȱ
codeȱofȱpubterm2
Type
pacer_pubterm
Code
pubterm1
Translation
IP address for first public terminal
10.xxx.xxx.xxx (one for each public terminal in the office where
the PACER router/hub is located)
156.xxx.xxx.xxx (only the PAT address for each divisional
office)
Default
n
Miscellaneous
Other
3. ModifyȱtheȱCodesȱtableȱentryȱpaceracct, byȱsettingȱtheȱTranslationȱfieldȱtoȱtheȱ
defaultȱPACERȱaccountȱforȱyourȱcourt:
Type
paceracct
Code
pacer_acct
Translation
default PACER account
Default
n
Miscellaneous
Other
Securing the Public Terminals
Theȱsecurityȱofȱpublicȱterminalsȱisȱanȱimportantȱconsiderationȱgivenȱthatȱusersȱcanȱ
accessȱthemȱonȱsiteȱwithoutȱcloseȱsupervision.ȱBecauseȱofȱtheirȱlocationȱonȱPACERȬ
Net,ȱwhichȱisȱoutsideȱtheȱDCNȱfirewall,ȱanȱimproperlyȱsecuredȱpublicȱterminalȱcouldȱ
beȱsusceptibleȱtoȱInternetȱhackers,ȱviruses,ȱandȱworms.ȱTherefore,ȱitȱisȱessentialȱthatȱ
theseȱcomputersȱhaveȱtheȱlatestȱsecurityȱupdatesȱtoȱtheȱoperatingȱsystemȱandȱtheȱ
browser.ȱYouȱcanȱtightenȱsecurityȱfurtherȱthroughȱstartupȱoptionsȱonȱtheȱcomputerȱ
andȱinȱtheȱbrowser.
08 Jul 2009
Release 4.0.1
5-14
CHAPTER
6
Security
In This Chapter
•
ApplicationȱSecurity
•
DocumentȱSecurity
•
VeriSignȱCertificates
•
Controllingȱserverȱaccess
6
District CM/ECF System Administrator’s Guide
Application Security
AccessȱtoȱtheȱCM/ECFȱapplicationȱisȱcontrolledȱbyȱaccountsȱwithȱpasswords.ȱȱTheȱ
applicationȱadministratorȱcreatesȱaccountsȱforȱcourtȱstaffȱandȱattorneys.ȱPublicȱusersȱ
haveȱPACERȱaccounts,ȱwhichȱareȱassignedȱandȱadministeredȱbyȱtheȱPACERȱServiceȱ
Center.ȱȱEachȱuserȱisȱassignedȱmembershipȱinȱoneȱorȱmoreȱgroups,ȱwhichȱdetermineȱ
whatȱprogramsȱandȱfunctionsȱareȱpermitted.ȱForȱinformationȱaboutȱCM/ECFȱaccountsȱ
andȱaccessȱcontrol,ȱseeȱtheȱApplicationȱAdministrator’sȱGuide.ȱȱThereȱmayȱbeȱrareȱ
occasionsȱwhenȱyouȱareȱaskedȱbyȱtheȱApplicationȱAdministratorȱtoȱmodifyȱtheȱ
databaseȱtoȱdealȱwithȱapplicationȱsecurityȱissuesȱ(e.g.,ȱifȱtheȱLoginsDisabledȱentryȱinȱ
theȱSiteȱtableȱisȱusedȱtoȱrestrictȱaccess,ȱtheȱapplicationȱcanȱnoȱlongerȱbeȱusedȱtoȱmodifyȱ
orȱdeleteȱit,ȱsoȱyouȱmustȱuseȱdbaccessȱtoȱdoȱso).
AȱSecurityȱIncidentȱReportȱisȱavailableȱfromȱtheȱapplicationȱ(SystemȱAdministratorȱ
Reports).ȱȱItȱlistsȱunsuccessfulȱloginȱattempts.
08 Jul 2009
Release 4.0.1
6-2
District CM/ECF System Administrator’s Guide
Document Security
ThisȱsectionȱprovidesȱinstructionsȱusingȱtheȱVerifyDocs,ȱReportDocs,ȱandȱFixDocsȱ
programsȱtoȱrepairȱdocumentȱerrors.ȱȱ
•
Overview
•
Settingȱtheȱenvironmentȱforȱroot
•
CreatingȱtheȱDataȱFile
•
CorrectingȱDocumentȱErrors
•
ValidatingȱYourȱCorrections
•
ProtectingȱYourȱServer
Overview
CM/ECFȱusesȱfourȱtypesȱofȱelectronicȱdocuments,ȱPDFȱdocuments,ȱtextȱreceipts,ȱ
HTMLȱreceipts,ȱandȱBankruptcyȱclaimsȱdocuments.ȱOccasionally,ȱelectronicȱ
documentsȱcontainȱerrors.ȱTheȱmoreȱtimeȱthatȱpassesȱbetweenȱwhenȱanȱerrorȱinȱanȱ
electronicȱdocumentȱoccursȱandȱwhenȱthatȱerrorȱisȱfixed,ȱtheȱmoreȱlikelyȱthatȱ
documentȱerrorȱisȱgoingȱtoȱbeȱcopied,ȱreplicated,ȱbackedȱup,ȱandȱsoȱforth.ȱTherefore,ȱ
documentȱqualityȱassuranceȱisȱaȱcrucialȱprocessȱthatȱmustȱoccurȱinȱaȱtimelyȱmanner.ȱȱ
Toȱfacilitateȱtheȱdocumentȱqualityȱassuranceȱprocess,ȱthreeȱprogramsȱareȱavailableȱtoȱ
helpȱyouȱidentifyȱandȱcorrectȱerrorsȱwithinȱelectronicȱdocuments.
Program
VerifyDocs
An output file that identifies a wide variety of electronic document errors (such as problems
with the electronic signature).
ReportDocs
Provides a report of the errors identified by the VerifyDocs program.
FixDocs
08 Jul 2009
Description
Repairs many of the errors identified by the VerifyDocs program.
Release 4.0.1
6-3
District CM/ECF System Administrator’s Guide
FunctionalȱOptions
Becauseȱnumberȱofȱdocumentsȱforȱeachȱcourtȱmayȱvary,ȱtheseȱprogramsȱhaveȱbeenȱ
designedȱtoȱprovideȱmanyȱoptionsȱforȱgettingȱtheȱworkȱdoneȱinȱaȱwayȱthatȱbestȱfitsȱ
theȱlocalȱenvironment.ȱForȱexample,ȱyouȱcan:
•
Runȱtheȱprogramsȱandȱprocessȱtheȱdataȱinȱaȱsingleȱrunȱoverȱaȱweekend.
•
RunȱtheȱprogramsȱandȱprocessȱappropriatelyȬsizedȱchunksȱduringȱweeknightȱ
runs.
•
Runȱtheȱprogramsȱduringȱaȱregularȱworkȱday.ȱHaveȱtheȱprogramsȱ“sleep”ȱ
betweenȱdocumentsȱsoȱthatȱtheyȱdoȱnotȱhaveȱaȱnoticeableȱeffectȱonȱnormalȱ
work.
Setting the environment for root
Ifȱyourȱenvironmentȱisȱnotȱalreadyȱsetȱforȱroot,ȱeditȱtheȱ/root/.bashrcȱfile,ȱasȱshownȱ
below,ȱsubstitutingȱyourȱcourtȱabbreviationȱforȱcourtID:
INFORMIXDIR=/opt/informix/current/
INFORMIXSERVER=courtID_ecf
PATH=$PATH:$INFORMIXDIR/bin:/opt/util:/gov/ecf/bin/
export INFORMIXDIR INFORMIXSERVER PATH
Creating the Data File
TheȱVerifyDocsȱprogramȱchecksȱPDFȱdocumentsȱinȱtheȱfileȱsystemȱ(andȱliveȱdatabase)ȱ
forȱerrorsȱ(suchȱasȱincorrectȱelectronicȱsignatures).ȱVerifyDocsȱvalidatesȱasȱmanyȱ
historicalȱdocumentsȱasȱtimeȱallows.ȱȱAsȱerrorsȱareȱfound,ȱVerifyDocsȱsavesȱaȱlistȱofȱ
specificȱerrorȱcodesȱinȱaȱdataȱfile.ȱȱThisȱdataȱfileȱisȱnamedȱusingȱtheȱformatȱ
VerifyDocs.dbname.data.mmȬddȬyyyy:hr:min.ȱBothȱtheȱReportDocsȱandȱtheȱFixDocsȱ
programsȱuseȱthisȱdataȱfile.
08 Jul 2009
Release 4.0.1
6-4
District CM/ECF System Administrator’s Guide
TheȱfollowingȱtableȱdescribesȱtheȱVerifyDocsȱparameterȱoptionsȱusedȱinȱtheȱexamplesȱ
withinȱthisȱsection:
Option
Description
-c
Specifies the time (CPU seconds) to sleep between documents. A non-zero value may
allow the program to be run during the day (such as -c 1 or -c 2). Therefore, always set the
option to zero for an off-hours run (-c 0).
If the -c 2 parameter is set and the batch is set to 100000 documents (-m 10000), this
option needs a minimum of six hours to run (-t 6).
A process may continue for the current batch of documents even if the maximum number of
hours (-t option) has been reached.
-d
Specifies the name of the database.
-m
Specifies the number of documents to process. The default is 10,000. Do not use a value
larger than 10,000.
-n
In addition to normal document processing, specifies the number of days to validate documents that are entered into the system.
-p
Specifies the path to the support directory.
-r
Begin checking at the document with the specified ID. If not specified, VerifyDocs will continue where it left off.
-R
Run for the number of hours specified by the -t option, but process documents whose size
is specified by the -m option in batches.1
-t
Specifies the maximum number of hours to run. If CM/ECF has fewer than 1 million documents, the process should complete over a weekend (60 hours). If necessary, unless the -c
option is used, adjust this value to avoid running the program during normal business hours.
-x
Specifies the name of the output data file.
1.
This option is needed for processing efficiency.
VerifyDocsȱwritesȱtoȱtheȱlogfileȱandȱupdatesȱtheȱlastȱdocumentȱnumberȱinȱtheȱ
dbname.VerifyDocs.lastdocȱfileȱatȱtheȱendȱofȱeachȱbatch1.ȱȱTheȱprogramȱwritesȱtoȱtheȱ
dataȱfileȱasȱitȱfindsȱdocumentȱerrors.
TheȱoutputȱtheȱVerifyDocsȱcommandȱconcludesȱwithȱ(regardlessȱofȱwhetherȱitȱwasȱ
executedȱfromȱtheȱcommandȬlineȱorȱaȱcronȱjob)ȱdependsȱuponȱwhetherȱtheȱprocessingȱ
stopsȱbecauseȱofȱtimeȱlimitsȱorȱcompletes.ȱȱ
•
Forȱprocessingȱthatȱdoesȱnotȱcomplete:
— Theȱnextȱrunȱappendsȱtoȱtheȱdataȱfileȱandȱtheȱlogȱfile.ȱ
1. A batch is the number of documents set in the -m option (such as -m 10000) plus the sleep time (such as c 2).
08 Jul 2009
Release 4.0.1
6-5
District CM/ECF System Administrator’s Guide
— Theȱlogȱfileȱcontainsȱtheȱfollowingȱentry:
VerifyDocs Completed on Mon May 23 14:12:40 2005, processed 308
documents, the last one was 4080998.Resetting next run to begin at
document with dm_id=4081000
— Theȱlastȱdocumentȱcontainsȱtheȱlastȱdocumentȱnumberȱprocessed.
•
Forȱprocessingȱthatȱcompletes:
— Theȱdataȱfileȱisȱrenamedȱbyȱappendingȱtheȱcompletionȱdateȱandȱtimeȱ(thisȱ
ensuresȱthatȱtheȱfileȱisȱpreservedȱforȱsubsequentȱprocessing).
IfȱVerifyDocsȱisȱrunȱfromȱaȱcronȱjob,ȱyouȱcanȱtellȱwhenȱtheȱprocessȱcompletesȱ
byȱwatchingȱforȱtheȱdataȱfileȱtoȱbeȱrenamed.ȱȱIfȱaȱnewȱVerifyDocsȱdataȱfileȱisȱ
created,ȱyouȱmustȱkillȱtheȱprocessesȱbyȱcommentingȱoutȱtheȱcronȱentry.ȱIfȱyouȱ
doȱnotȱkillȱtheseȱprocesses,ȱtheȱcronȱentriesȱwillȱstartȱaȱnewȱprocessȱevenȱafterȱ
VerifyDocsȱfinishes.
— Theȱlogȱfileȱcontainsȱtheȱfollowingȱentries:
VerifyDocs Completed on Tue May 24 10:12:17 2005, processed 73
documents,the last one was 4084141. Counter has reached max dm-id
(4084143), resetting next run to begin at document with dm_id=0
Data collection has completed; renaming data file to
VerifyDocs.zzzz_live.data.05-24-2005:10:12
— Theȱdbname.VerifyDocs.lastdocȱfileȱchangesȱtoȱaȱ0ȱbyteȱfile.
Thisȱsectionȱprovidesȱinstructionsȱforȱcreatingȱthisȱdataȱfile.ȱTheȱproceduresȱforȱ
creatingȱthisȱfileȱdependȱuponȱtheȱnumberȱofȱdocumentsȱinȱCM/ECF.
To create the data file when there are fewer than one million documents in
CM/ECF
1. Changeȱdirectory:
cd /opt/util/
2. Onȱaȱweekend,ȱrunȱtheȱfollowingȱcommand:
/opt/util/VerifyDocs -r 0 -t 60 -R -c 0 -m 10000 -d dbname -x
/var/log/ecf/VerifyDocs.dbname.data -p /opt/DCECF/live/server/support | tee
/var/log/ecf/VerifyDocs.dbname.log
NOTE On a database with 833,398 document records, this step took 19-20 hours.
IMPORTANT Do not continue until VerifyDocs completes.
08 Jul 2009
Release 4.0.1
6-6
District CM/ECF System Administrator’s Guide
To create the data file when there are more than one million documents in CM/ECF
1. Aȱcronȱentryȱ(etc/cron.d/VerifyDocs)ȱsimilarȱtoȱtheȱoneȱbelowȱshouldȱhaveȱbeenȱ
setȱupȱasȱpartȱofȱtheȱinstallationȱofȱreleaseȱ3.0.ȱWhenȱyouȱareȱreadyȱtoȱrunȱtheȱ
program,ȱremoveȱtheȱpoundȱsignȱinȱfrontȱofȱtheȱentryȱtoȱenableȱthem:
#30 17 * * * root cd /opt/util; /opt/util/wrapper -f
/gov/ecf/etc/wrapper.config -e courtID_live -r ‘/opt/util/VerifyDocs -t 8 -R
-m 10000 -d courtID_live -x /var/log/ecf/VerifyDocs.courtID_live.data -p
/opt/DCECF/live/server/support >> /var/log/ecf/VerifyDocs.courtID_live.log
2>&1‘
2. Inȱtheȱ/var/log/ecfȱdirectory,ȱperiodicallyȱmonitorȱtheȱ
VerifyDocs.courtID_live.dataȱfileȱuntilȱtheȱdateȱandȱtimeȱstampȱisȱappendedȱtoȱ
theȱfileȱname,ȱandȱthenȱstopȱtheȱcronȱprocessȱbyȱdoingȱtheȱfollowing:
a. Commentȱoutȱtheȱcronȱentryȱ/etc/cron.d/VerifyDocs.
b. KillȱallȱactiveȱVerifyDocsȱprocesses.
Correcting Document Errors
Theȱdocumentȱcorrectionȱprocessȱrequiresȱyouȱtoȱdoȱtheȱfollowing:
•
Identifyingȱdocumentȱerrors
•
Correctingȱerrorsȱbyȱcategory
Identifying document errors
Beforeȱyouȱcanȱcorrectȱdocumentȱerrors,ȱyouȱuseȱtheȱReportDocsȱprogramȱtoȱreviewȱ
theȱerrorsȱidentifiedȱbyȱtheȱVerifyDocsȱprogram.ȱReportDocsȱcanȱcreateȱaȱsummaryȱ
reportȱorȱindividualȱerrorȱtypeȱreports.ȱYouȱexecuteȱtheȱReportDocsȱprogramȱforȱeachȱ
errorȱtypeȱfound.ȱȱTherefore,ȱitȱisȱrecommendedȱthatȱyouȱcreateȱaȱuniqueȱlogȱfileȱforȱ
eachȱreport.
NOTE This command runs quickly, so it can be performed at any time.
To produce a summary report of the errors identified by the VerifyDocs program
1. Changeȱdirectory:
cd /opt/util/
2. CreateȱaȱsummaryȱreportȱbyȱtypingȱtheȱReportDocsȱcommandȱonȱoneȱline:
./ReportDocs -r /var/log/ecf/VerifyDocs.dbname.data | tee
08 Jul 2009
Release 4.0.1
6-7
District CM/ECF System Administrator’s Guide
/var/log/ecf/ReportDocs.dbname.log
Option
Description
-r
Specifies the name of the file generated by VerifyDocs (the ReportDocs program
finds the most recent file so you do not have to specify the date and time suffix).
InȱtheȱReportDocsȱresults,ȱtheseȱerrorȱtypesȱareȱgroupedȱintoȱfourȱcategories:
•
Errorsȱthatȱareȱsafeȱtoȱfix
•
Errorsȱthatȱareȱunknown
•
Errorsȱthatȱareȱnotȱsafeȱtoȱfix
•
Errorsȱthatȱareȱofȱtypeȱother
Eachȱerrorȱisȱassignedȱaȱtypeȱthatȱallowsȱyouȱtoȱidentifyȱexactlyȱwhatȱtheȱerrorȱis.ȱȱ
Errorȱtypesȱandȱtheirȱdescriptionsȱareȱprovidedȱbelow.ȱAfterȱyouȱknowȱwhichȱ
documentȱerrorsȱhaveȱbeenȱidentified,ȱyouȱuseȱtheȱFixDocsȱprogramȱtoȱcorrectȱthoseȱ
errorsȱbyȱcategory.ȱȱThisȱsectionȱdescribesȱtheȱcorrectionȱprocedureȱforȱeachȱcategoryȱ
inȱtheȱReportDocsȱoutput.
IMPORTANT For issues that you cannot resolve yourself, contact SDSD-SB for
assistance.
TheȱfollowingȱisȱanȱexampleȱofȱtheȱReportDocsȱresults:
processing VerifyDocs.zzz_live.data at Tue Apr 26 15:09:26 2005
documents checked in the range of 2 to 400000
Earliest date found in the data collected = Fri Apr 22 16:05:21 2005
Last time data collected = Sat Apr 23 23:59:32 2005
Last Run did not provide enough data to establish a rate
----------------------------------------------------Errors that are safe to fix; these documents are known to be unaltered
from the time of their filing
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
GOOD (type = i) = 99
----------------------------------------------------Errors that are unknown; the signature is not valid, a comparison
to the regenerated signatures is not possible; normally this means that
the original signature was not generated or saved correctly. It is
likely (but not certain) that repairing these errors is safe.
No signature stored with the document (type = l) = 19
----------------------------------------------------Errors that are 'not safe'; the signature is valid and is not the
same as the regenerated signatures. It appears that the document or signature has
been altered since it was originally filed. It is not recommended that these
signature errors be repaired.
signatures do not match (type = m) = 384
dm_size is not the same as the file size, off by multiple bytes (type = s) = 49
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
bad (type = l) = 2
----------------------------------------------------Errors that are of type other; typically VerifyDocs was not able to
open a document or regenerate a signature.
could not open document file (type = r) = 7
PDFcheck failed (type = p) = 47
orphaned document (type = r0 = 17537
-----------------------------------------------------
08 Jul 2009
Release 4.0.1
6-8
District CM/ECF System Administrator’s Guide
Correcting errors by category
Afterȱyouȱknowȱwhichȱdocumentȱerrorsȱhaveȱbeenȱidentified,ȱyouȱuseȱtheȱFixDocsȱ
programȱtoȱcorrectȱthoseȱerrorsȱbyȱcategory.ȱThisȱsectionȱdescribesȱtheȱcorrectionȱ
procedureȱforȱeachȱcategoryȱinȱtheȱReportDocsȱsummaryȱfile.
Errors that are safe to fix
Theseȱerrorsȱareȱsimpleȱproblemsȱthatȱdoȱnotȱrequireȱindividualȱexamination.ȱOnceȱ
VerifyDocsȱidentifiesȱtheseȱerrors,ȱyouȱcanȱsafelyȱuseȱtheȱFixDocsȱprogramȱtoȱrepairȱ
theȱdocuments.ȱAsȱanȱoption,ȱifȱyouȱwantȱtoȱseeȱwhichȱdocumentsȱhaveȱtheseȱerrorsȱ
andȱverifyȱtheȱcorrectionsȱmade,ȱyouȱcanȱproduceȱaȱdetailedȱreportȱofȱtheȱsafeȱerrorsȱ
listedȱinȱtheȱsummaryȱ(typesȱi,ȱN,ȱandȱw)ȱbeforeȱproceeding.ȱȱUseȱtheȱfollowingȱ
formatȱ(typedȱonȱoneȱline):
./ReportDocs -t type -r /var/log/ecf/VerifyDocs.dbname.date -d dbname |
tee /var/log/ecf/VerifyDocs.dbname.log
Option
Description
-d
Specifies the name of the database. This option is only necessary if the -t option is
used and you wish to display the case number and document number.
NOTE This option is only used in detailed reports.
-r
Specifies the name of the file generated by VerifyDocs (the ReportDocs program
finds the most recent file so you do not have to specify the date and time suffix).
-t
Specifies a type of error to report. Include a for all. For additional options, see the
error types in Appendix C. NOTE This option is only used in detailed reports.
Forȱexample:ȱ
./ReportDocs -t i -r /var/log/ecf/VerifyDocs.nynd_live.data -d nynd_live |
tee /var/log/ecf/VerifyDocs.nynd_live.log
To identify and correct errors that are safe to fix
1. Changeȱdirectory:
cd /opt/util/
08 Jul 2009
Release 4.0.1
6-9
District CM/ECF System Administrator’s Guide
2. RepairȱanyȱerrorsȱlistedȱunderȱErrorsȱthatȱareȱsafeȱtoȱfixȱbyȱtypingȱtheȱFixDocsȱ
commandȱonȱoneȱline:
./FixDocs -r /var/log/ecf/VerifyDocs.dbname.data.mm-dd-yyyy:hr:min -d
dbname -f safe | tee /var/log/ecf/VerifyDocs.dbname.log
Option
Description
-d
Specifies the name of the database
-f
Specifies the categories of errors to fix. Categories include:
•
•
•
-r
safe
unknown
all
Specifies the name of the file generated by VerifyDocs
Theȱfollowingȱexampleȱshowsȱsomeȱtypicalȱmessages,ȱwithȱfixesȱhighlightedȱ(theȱ
actualȱoutputȱshouldȱhaveȱmanyȱmoreȱindividualȱmessagesȱbecauseȱitȱprovidesȱ
informationȱforȱeachȱdocumentȱlistedȱinȱtheȱVerifyDocsȱdataȱfile):
processing VerifyDocs.zzz_live.data at Wed Apr 27 10:45:05 2005
INFO: updated document record with key = 301512-0
INFO: updated document record with key = 301515-0
INFO: updated document record with key = 301518-0
.
.
INFO: This doc is not ok to fix 334603-2 type = m
ERROR: the signature for doc 5733-0 has changed; no changes will be made to
this document
ERROR: the signature for doc 5736-0 has changed; no changes will be made to
this document
.
.
documents checked in the range of 2 to 400000
Earliest date found in the data collected = Fri Apr 22 16:05:21 2005
Last time data collected = Mon Apr 25 23:54:17 2005
Last Run did not provide enough data to establish a rate
----------------------------------------------------Errors that are safe to fix; these documents are known to be unaltered
from the time of their filing
signatures do not match, due to wrong dm_id or dm_seq value in sig, but
08 Jul 2009
Release 4.0.1
6-10
District CM/ECF System Administrator’s Guide
signature is GOOD
(type = i) = 4652
----------------------------------------------------Errors that are unknown; the signature is not valid, a comparison
to the regenerated signatures is not possible; normally this means that
the original signature was not generated or saved correctly. It is
likely (but not certain) that repairing these errors is safe.
No errors of this type were found
----------------------------------------------------Errors that are 'not safe'; the signature is valid and is not the
same as the regenerated signatures. It appears that the document or signature
has been altered since it was originally filed. It is not recommended
that these signature errors be repaired.
No errors of this type were found
----------------------------------------------------Errors that are of type other; typically VerifyDocs was not able to
open a document or regenerate a signature.
No errors of this type were found
----------------------------------------------------Total errors/warnings records detected = 8153
Document skipped (not fixed) = 3501
Document Fixed = 4652
Errors Fixing Documents =
Errors that are unknown
TheȱReportDocsȱprogramȱgroupsȱerrorȱtypesȱc,ȱj,ȱI,ȱM,ȱandȱnȱintoȱtheȱunknownȱ
category.ȱȱDocumentsȱshowingȱtheseȱerrorsȱcouldȱbeȱgoodȱdocuments.ȱTherefore,ȱyouȱ
mustȱuseȱdetailedȱreortsȱtoȱinvestigateȱthem.
To identify and correct errors that are unknown
1. Changeȱdirectory:
cd /opt/util/
2. ForȱeachȱerrorȱtypeȱlistedȱunderȱErrorsȱthatȱareȱunknownȱinȱyourȱReportDocsȱ
summaryȱfileȱ(c,ȱj,ȱlȱ,m,ȱandȱn),ȱproduceȱaȱdetailedȱreportȱusingȱtheȱfollowingȱ
formatȱ(typedȱonȱoneȱline):
./ReportDocs -t type -r /var/log/ecf/VerifyDocs.dbname.data -d dbname |
tee /var/log/ecf/VerifyDocs.dbname.log
Option
-d
Specifies the name of the database. This option is only necessary if the -t option is
used and you wish to display the case and document number.
NOTE This option is only used in detailed reports.
-r
Specifies the name of the file generated by VerifyDocs (the ReportDocs program
finds the most recent file so you do not have to specify the date and time suffix).
-t
08 Jul 2009
Description
Specifies a type of error to report. Include “a” for all. For additional options, see the
error types in Appendix A.
NOTE This option is only used in detailed reports.
Release 4.0.1
6-11
District CM/ECF System Administrator’s Guide
Forȱexample:
./ReportDocs -t l -r /var/log/ecf/VerifyDocs.nynb_live.data -d nynb_live |
tee /var/log/ecf/VerifyDocs.dbname.log
Theȱdetailedȱreportȱprovidesȱspecificȱinformationȱaboutȱtheȱdocumentȱerrors.ȱȱTheȱ
followingȱexampleȱshowsȱaȱreportȱofȱindividualȱerrorsȱforȱtheȱ“l”ȱ(lowerȬcaseȱL)ȱerrorȱ
type:
processing VerifyDocs.zzz_live.data at Tue Apr 26 15:16:31 2005
No signature stored with the document
cs_case_number = 05-10608 de_document_num = 7
dm_id = 74695, dm_seq = 5
current dm_signature =
regenerated dm_signature = [STAMP zzzzStamp_ID=1051896954
[Date=04/16/2004] [FileNumber=74695-5]
[3001e4e91a5dce42f6ff337ddfb7bc7ebf17bba938911182b97b824c2b0aba02352eb4d86981e1d50
e29c8e1e9882ed29603bd4f6a36cdfe231e654aa57af91c]]
No signature stored with the document
cs_case_number = 05-10608 de_document_num = 7
dm_id = 74695, dm_seq = 6
current dm_signature =
regenerated dm_signature = [STAMP zzzzStamp_ID=1051896954 [Date=04/16/2004]
[FileNumber=74695-6]
[3131596f418cee4c34dca7ba97fef5ff6b1223149cd6b8a6d1ecd02170306bfd5f720bac82eac3d47
93a1805d31f5c206b04464bf340392fb4bb051e0b46426c]]
.
.
No signature stored with the document
cs_case_number = 02-41729 de_document_num = 7437
dm_id = 244698, dm_seq = 2
current dm_signature =
regenerated dm_signature = [STAMP zzzzStamp_ID=1051896954 [Date=06/30/2003]
[FileNumber=244698-2]
[61084cf44f69ac80906de4766368725aa2cbd3334304c9e3421c35bcbbccbb288c45644c48228f71a
72fb62d29aa7446ba5c8fb8319cde6183af647dd52c6fef]]
3. Researchȱeachȱentryȱlistedȱinȱtheȱdetailedȱreport,ȱlookȱforȱanȱexplanationȱofȱtheȱ
error,ȱandȱthenȱdoȱoneȱofȱtheȱfollowing:
•
Ifȱtheȱerrorsȱlistedȱcanȱbeȱexplainedȱeasilyȱ(suchȱasȱelectronicȱstampsȱthatȱwereȱ
notȱcreatedȱwhenȱdocumentsȱwereȱconvertedȱbyȱcustomȱsoftware),ȱskipȱtoȱ
stepȱ4.
•
Ifȱtheȱerrorsȱdoȱnotȱhaveȱanȱobviousȱexplanation,ȱuseȱtheȱapplicationȱtoȱviewȱ
theȱdocument,ȱandȱthenȱdoȱoneȱofȱtheȱfollowing:
— Ifȱtheȱdocumentȱappearsȱtoȱbeȱcompleteȱandȱappropriateȱtoȱtheȱcaseȱandȱ
event,ȱcontinueȱwithȱstepȱ4.
— Ifȱtheȱdocumentȱdoesȱnotȱappearȱtoȱbeȱcorrectȱorȱappropriateȱtoȱtheȱcaseȱorȱ
event,ȱattemptȱtoȱreplaceȱtheȱdocumentȱandȱthen,ȱdeleteȱtheȱentryȱfromȱtheȱ
VerifyDocsȱoutputȱfileȱsoȱtheȱproperȱfollowȱupȱoccurs:
a.ȱȱOpenȱtheȱ/var/log/ecf/VerifyDocs.dbname.data.mmȬddȬyyyy:hr:minȱ
file.
08 Jul 2009
Release 4.0.1
6-12
District CM/ECF System Administrator’s Guide
b.ȱȱInȱtheȱ/var/log/ecf/VerifyDocs.dbname.data.mmȬddȬyyyy:hr:minȱfile,ȱ
locateȱtheȱcorrespondingȱentryȱforȱthatȱdocument,ȱandȱthenȱdeleteȱtheȱ
entry.
Toȱlocateȱtheȱappropriateȱentry,ȱlookȱforȱtheȱoneȱwhoseȱsecondȱandȱthirdȱ
fieldsȱmatchȱtheȱdm_idȱandȱdm_seqȱfieldsȱinȱtheȱdetailedȱerrorȱreport.ȱȱInȱ
theȱfollowingȱexample,ȱtheȱsecondȱandȱthirdȱfieldsȱareȱhighlighted:
1116871614|4023394|1|l|/data/docs1/zzzz_dochome_app03//docs0524/z
zzz.1.1.bk.15256.4023394.1||[STAMP ZZZZStamp_ID=842906028
[Date=05/02/2005] [FileNumber=4023394-1]
[bc1458bc509e3fe82a694afe52e339e3f5b1e2426097658089a109f9920033c0
7c61bfbcffdbf0e72558dcde793d5b5bd4bbd582f86473d1c1bb6626f09f2435]
]|||0|
4. Changeȱdirectory:
cd /opt/util/
5. Correctȱtheȱunknownȱerrorsȱafterȱtheyȱhaveȱbeenȱresearchedȱbyȱtypingȱtheȱ
followingȱcommandȱonȱoneȱline:
./FixDocs -r /var/log/ecf/VerifyDocs.dbname.data.mm-dd-yyyy:hr:min -d dbname
-f unknown | tee /var/log/ecf/VerifyDocs.dbname.log
Theȱfollowingȱisȱanȱexampleȱofȱtheȱlogȱfileȱforȱthisȱcommand:
processing VerifyDocs.zzz_live.data at Wed Apr 27 13:12:41 2005
INFO: This doc is not ok to fix 3-0 type = R
INFO: This doc is not ok to fix 4-0 type = R
INFO: This doc is not ok to fix 5-0 type = R
.
.
INFO: updated document record with key = 74695-5
INFO: updated document record with key = 74695-6
INFO: updated document record with key = 74695-7
INFO: updated document record with key = 74695-8
.
.
documents checked in the range of 2 to 400000
Earliest date found in the data collected = Fri Apr 22 16:05:21 2005
Last time data collected = Sat Apr 23 23:59:32 2005
Last Run did not provide enough data to establish a rate
----------------------------------------------------Errors that are safe to fix; these documents are known to be unaltered
from the time of their filing
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
GOOD (type = i) = 4652
----------------------------------------------------Errors that are unknown; the signature is not valid, a comparison
to the regenerated signatures is not possible; normally this means that
the original signature was not generated or saved correctly. It is
likely (but not certain) that repairing these errors is safe.
No signature stored with the document (type = l) = 28
----------------------------------------------------Errors that are 'not safe'; the signature is valid and is not the
same as the regenerated signatures. It appears that the document or signature
has been altered since it was originally filed. It is not recommended
that these signature errors be repaired.
signatures do not match (type = m) = 384
dm_size is not the same as the file size, off by multiple bytes (type = s) = 1
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
bad (type = I) = 2
-----------------------------------------------------
08 Jul 2009
Release 4.0.1
6-13
District CM/ECF System Administrator’s Guide
Errors that are of type other; typically VerifyDocs was not able to
open a document or regenerate a signature.
orphaned document (type = R) = 2583
----------------------------------------------------Total errors/warnings records detected = 2998
Document skipped (not fixed) = 2970
Documents Fixed = 28
Errors Fixing Documents = 0
NOTE Each document in the safe category that was fixed is flagged with a message that
can be ignored. For example:
Error: the signature for doc nnnn-0 has changed; no changes will be made
to this document
Errors that are not safe to fix
TheȱReportDocsȱprogramȱgroupsȱerrorȱtypesȱI,ȱC,ȱm,ȱO,ȱs,ȱS,ȱandȱWȱintoȱtheȱnotȱsafeȱ
category.ȱȱTheseȱerrorsȱareȱseriousȱproblemsȱthatȱareȱnotȱsafeȱtoȱrepairȱautomaticallyȱ
(suchȱasȱanȱalteredȱdocument).
To identify and correct errors that are not safe
1. Changeȱdirectory:
cd /opt/util/
2. ForȱeachȱerrorȱtypeȱlistedȱunderȱErrorsȱthatȱareȱnotȱsafeȱinȱyourȱReportDocsȱ
outputȱsummaryȱ(I,ȱC,ȱm,ȱO,ȱs,ȱS,ȱandȱW),ȱproduceȱaȱdetailedȱreportȱusingȱtheȱ
formatȱ(typedȱonȱoneȱline):
./ReportDocs -t type -r /var/log/ecf/VerifyDocs.dbname.data -d dbname | tee
/var/log/ecf/VerifyDocs.dbname.log
3. Afterȱresearchingȱeachȱentryȱlistedȱinȱtheȱdetailedȱreport,ȱhaveȱaȱsubjectȬmatterȬ
expertȱuseȱtheȱapplicationȱtoȱexamineȱtheȱdocument,ȱandȱthenȱdoȱoneȱofȱtheȱ
following:
•
Ifȱtheȱapparentȱintegrityȱofȱtheȱdocumentȱcannotȱbeȱverified,ȱremoveȱtheȱentryȱ
fromȱtheȱVerifyDocsȱdataȱfile,ȱandȱthenȱreplaceȱtheȱfaultyȱdocument.
ThisȱkeepsȱtheȱdocumentȱfromȱappearingȱinȱtheȱVerifyDocȱreports.
•
IfȱtheȱapparentȱintegrityȱofȱtheȱdocumentȱcanȱbeȱverifiedȱandȱtheȱClerkȱofȱ
Courtȱapproves,ȱrunȱtheȱFixDocsȱprogramȱonȱtheȱdocumentȱwithȱtheȱȬfȱallȱ
option,ȱtoȱrepairȱtheȱreportedȱerrors.
Errors that are of type other
TheȱReportDocsȱprogramȱgroupsȱerrorȱtypesȱf,ȱg,ȱk,ȱK,ȱo,ȱp,ȱr,ȱandȱRȱintoȱtheȱotherȱ
category.ȱȱTheseȱerrors,ȱwhichȱareȱextremelyȱinfrequent,ȱareȱcausedȱbyȱaȱprocessingȱ
08 Jul 2009
Release 4.0.1
6-14
District CM/ECF System Administrator’s Guide
issueȱ(suchȱasȱinsufficientȱmemoryȱorȱaȱmissingȱkeyfile).ȱTheseȱerrorsȱdoȱnotȱhaveȱtoȱ
beȱresolvedȱimmediately.
To identify and correct errors that are of type other
1. Changeȱdirectory:
cd /opt/util/
2. ForȱeachȱerrorȱtypeȱlistedȱunderȱErrorsȱthatȱareȱofȱtypeȱotherȱinȱyourȱReportDocsȱȱ
summaryȱfileȱ(f,ȱg,ȱk,ȱK,ȱo,ȱp,ȱr,ȱandȱR),ȱproduceȱaȱdetailedȱreportȱusingȱtheȱformatȱ
(typedȱonȱoneȱline):
./ReportDocs -t type -r /var/log/ecf/VerifyDocs.dbname.data -d dbname | tee
/var/log/ecf/VerifyDocs.dbname.log
3. Forȱanyȱerrorȱlistedȱinȱtheȱdetailedȱreport,ȱuseȱtheȱapplicationȱtoȱmanuallyȱfixȱtheȱ
associatedȱdocument.
Validating Your Corrections
Afterȱyouȱhaveȱmadeȱallȱofȱyourȱcorrections,ȱyouȱshouldȱvalidateȱthatȱallȱdesiredȱfixesȱ
haveȱbeenȱmade.
To validate your corrections
1. Changeȱdirectory:
cd /opt/util/
2. RunȱtheȱVerifyDocsȱprogramȱagain.
3. RunȱtheȱReportDocsȱprogramȱforȱtheȱsummaryȱoutput,ȱandȱtheȱreviewȱtheȱ
ReportDocsȱoutput.
4. Ensureȱthatȱallȱtheȱdesiredȱfixesȱhaveȱbeenȱmade.
NOTE Repeat the error correction procedures until all the desired fixes are made.
Protecting Your Server
TheȱFixDocsȱprogramȱcouldȱbeȱusedȱwithȱmaliciousȱintent.ȱTherefore,ȱasȱaȱsecurityȱ
measure,ȱyouȱshouldȱtakeȱstepsȱtoȱprotectȱyourȱserver.
To protect your server
SaveȱanȱencryptedȱversionȱofȱtheȱFixDocsȱprogramȱonȱyourȱserverȱbyȱdoingȱȱtheȱ
following:
08 Jul 2009
Release 4.0.1
6-15
District CM/ECF System Administrator’s Guide
1. Changeȱdirectory:
cd /opt/util
2. Runȱtheȱencryptionȱkeyȱcommand:
zip -e FixDocs.enc FixDocs
Enter password:
Verify password:
updating:
08 Jul 2009
FixDocs (deflated nn%)
Release 4.0.1
6-16
District CM/ECF System Administrator’s Guide
VeriSign Certificates
AȱnewȱVeriSignȱkey/certificateȱpairȱmustȱbeȱgeneratedȱforȱaȱnewȱserverȱinstallation.ȱȱ
Eachȱyear,ȱtheȱcertificateȱisȱrenewed;ȱbutȱnotȱtheȱkey.ȱȱTheȱsameȱkeyȱisȱusedȱeachȱyear.ȱȱ
ThisȱsectionȱdescribesȱbothȱprocessesȱȬȱtheȱcreationȱofȱtheȱkey/certificateȱpairȱduringȱ
anȱinitialȱinstallationȱandȱtheȱrenewalȱofȱtheȱcertificate.ȱȱRepeatȱthisȱprocedureȱforȱ
eachȱdatabaseȱ(live,ȱtest,ȱandȱtrain)ȱonȱbothȱservers.ȱ
Logȱinȱasȱrootȱandȱrunȱoneȱofȱtheȱfollowingȱcommandsȱbelowȱ(whereȱURLȱisȱtheȱaliasȱ
foundȱinȱ/etc/hosts):
Alias/URLs for the Inside Server
Format
Examples
ecf.courtID. circ#.dcn
ecf.txwd.circ5.dcn
ecf-test.courtID.circ#.dcn
ecf-test.txwd.circ5.dcn
ecf-train.courtID.circ#.dcn
ecf-train.txwd.circ5.dcn
Alias/URLs for the Outside Server
Format
ecf.courtID.uscourts.gov
ecf.txwd.uscourts.gov
ecf-test.courtID.uscourts.gov
ecf-test.txwd.uscourts.gov
ecf-train.courtID.uscourts.gov
•
Examples
ecf-train.txwd.uscourts.gov
RunȱthisȱgenkeyȱcommandȱtoȱgenerateȱaȱnewȱSSLȱkey/certificateȱpair:ȱ
genkey URL
NOTE This command is used to initially create new key/certificate pairs ONLY. Do
not run this command to renew existing certificates.
Continueȱwithȱtheȱnextȱsection,ȱGeneratingȱaȱNewȱKeyȱPair.ȱ
•
Toȱrenewȱanȱexistingȱcertificate,ȱrunȱtheȱgenkeyȱcommandȱbelow.ȱȱThisȱcommandȱ
createsȱaȱcertificateȱwithoutȱgeneratingȱaȱnewȱkey.
genkey --genreq URL
Skipȱtheȱnextȱsection,ȱGeneratingȱaȱNewȱKeyȱPair.ȱȱContinueȱwithȱtheȱsection,ȱGeneratingȱ
orȱRenewingȱaȱCertificate.
08 Jul 2009
Release 4.0.1
6-17
District CM/ECF System Administrator’s Guide
Generating a New Key Pair
Thisȱsectionȱdescribesȱhowȱtoȱgenerateȱaȱnewȱkey/certificateȱpairȱforȱaȱnewȱserverȱ
installation.ȱȱSkipȱthisȱsectionȱtoȱrenewȱcertificates.ȱȱ
Repeatȱthisȱprocedureȱforȱallȱapplicationsȱonȱbothȱservers.ȱ
1. Respondȱtoȱtheȱpromptsȱasȱfollows:
Prompt
Response
You are now generating a new keypair which will be
used to encrypt all SSL traffic to the server named
ecf.courtID.uscourts.gov
Select Next, and then press ENTER.
Choose the size of your key...
We suggest you select the default, 1024 bits. (The
system generates random bits. This process may take
several minutes).
Select 1024, medium-grade, fast speed.
Please enter random text on your keyboard. (This process may take several minutes.)
Type random keystrokes until counter reaches
100%.
2. Theȱscriptȱasksȱifȱyouȱwantȱtoȱrequestȱaȱsignedȱcertificateȱfromȱaȱ
CertificationAuthorityȱ(CA).ȱȱTypeȱy,ȱandȱthenȱpressȱENTER.
Would you like to send a Certificate Request to a CA? [Y/n] y
Theȱinitialȱcreationȱofȱtheȱkey/certificateȱpairȱandȱcertificateȱrenewalsȱwillȱnowȱfollowȱ
theȱsameȱsteps.ȱFollowȱtheȱinstructionsȱinȱtheȱnextȱtwoȱsectionsȱtoȱcompleteȱtheȱ
process.
Generating or Renewing a Certificate
Thisȱsectionȱisȱusedȱduringȱtheȱcreationȱofȱnewȱkey/certificateȱpairȱandȱtoȱrenewȱ
existingȱcertificates.ȱȱRepeatȱthisȱprocedureȱforȱeachȱdatabaseȱ(live,ȱtest,ȱandȱtrain)ȱonȱ
bothȱservers.ȱ
1. Theȱscriptȱpromptsȱyouȱtoȱchooseȱaȱcertificateȱauthority.ȱȱUsingȱtheȱdownȱarrowȱ
key,ȱselectȱVeriSign,ȱandȱthenȱpressȱNEXT.
Equifax
Thawte
VeriSign
Other
08 Jul 2009
Release 4.0.1
6-18
District CM/ECF System Administrator’s Guide
2. Theȱscriptȱpromptsȱforȱinformationȱaboutȱtheȱcertificateȱrequest.ȱȱCompleteȱtheȱ
certificateȱinformationȱusingȱtheȱfollowingȱvalues:
Prompt
Response
Country
50 states=US (even if the site is a gov domain)
Puerto Rico=PR
Guam=GU
Marshall Islands=MH
Northern Mariana Islands=MP
U.S. Virgin Islands=V
State or Province Name
Your state (Example: Texas)
Locality Name (city, town, etc.)
Your city name (Example: San Antonio)
Organization Name (company)
Type the following name exactly, matching uppercase
and lowercase letters:
Administrative Office of the United States Courts
Organization Name (division)
Your court’s initials (Example: txwd)
Common Name (database URL)
Examples:
Inside server: ecf.txwd.circ5.dcn
Outside server: ecf.txwd.uscourts.gov
Optional Challenge Password
Value of your choice (Example: sdsd)
Optional Company Name
US Court
3. Afterȱyouȱsupplyȱtheȱregistrationȱinformation,ȱtheȱsystemȱrefersȱyouȱtoȱtheȱ
VeriSignȱWebȱsite.ȱȱTheȱURLȱpresentedȱisȱobsolete,ȱsoȱignoreȱtheȱmessage.ȱȱTheȱ
systemȱdisplaysȱtheȱCertificateȱSigningȱRequestȱ(CSR).
TIP In the next step, remember that PuTTY copies text to the clipboard when you
highlight it. It is not necessary to select a Copy command.
4. CopyȱtheȱCSRȱbyȱhighlightingȱeverythingȱfromȱtheȱfirstȱBEGINȱCERTIFICATEȱ
REQUESTȱlineȱthroughȱtheȱlastȱENDȱCERTIFICATEȱREQUESTȱline.ȱȱDoȱnotȱ
includeȱanyȱleadingȱorȱtrailingȱspaces.ȱȱExceptȱforȱtheȱfirstȱlineȱandȱlastȱtwoȱlines,ȱ
theȱhighlightedȱareaȱmustȱincludeȱexactlyȱ64ȱcharactersȱperȱline.
-----BEGIN CERTIFICATE REQUEST----MIIBEzCBzgIBADB7MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEQ
MA4GA1UEBxMHT2FrbGFuZDEbMBkGA1UEChMSQzJOZXQgU29mdHdhcmUgSW5jMRAw
DgYDVQQLEwdUZXN0aW5nMRYwFAYDVQQDEw1nYWJiZXIuYzIubmV0MEwwDQYJKoZI
hvcNAQEBDSMDOwAwOAIxAJukoQhq4LanG2k+/LnRTGJAcgv9LJPsdfCsjqRs8ygo
yaw4ucOEdx+WdnM0x36NcQIDAQABMA0GCSqGSIb3DQEBSSUAAzEABRLR6IkG70oN
G1MnvuMDeWou4kIvc98ysjssCNKsDKsHAXBSEbfsIQs5JRNagVBW
------END CERTIFICATE REQUEST-------
08 Jul 2009
Release 4.0.1
6-19
District CM/ECF System Administrator’s Guide
5. PressȱENTERȱtoȱcontinueȱtheȱregistrationȱprocess.ȱNext,ȱregisterȱtheȱcertificateȱ
requestȱonȱVeriSign’sȱWebȱsite.
CAUTION In the next step, you must type the address. If you copy it to the Clipboard, it
will overwrite the CSR that you previously copied.
6. OpenȱaȱWebȱbrowserȱandȱgoȱtoȱtheȱfollowingȱURL:
https://onsite.verisign.com/AdministrativeOfficeoftheUnitedStatesCourts/serverEnroll.htm
TheȱsystemȱdisplaysȱtheȱVeriSignȱhomeȱpageȱforȱregisteringȱcourtȱcertificates,ȱasȱ
shownȱinȱtheȱfollowingȱillustrations.
7. ScrollȱdownȱtoȱStepȱ1:ȱEnterȱYourȱContactȱInformation.ȱȱTypeȱyourȱPKIȱ
Administrator’sȱinformationȱandȱȱtheȱServerȱIP;ȱenterȱtheȱIPȱaddressȱforȱtheȱ
specificȱdatabaseȱ(live,ȱtest,ȱorȱtrain).ȱȱInsideȱserverȱaddressesȱuseȱtheȱformatȱ
156.xxx.xxx.xxx,ȱwhileȱOutsideȱserverȱaddressesȱuseȱ10.xxx.xxx.xxx..
08 Jul 2009
Release 4.0.1
6-20
District CM/ECF System Administrator’s Guide
8. ȱSelectȱStepȱ2:ȱȱServerȱPlatformȱandȱCertificateȱSigningȱRequestȱ(CSR).ȱForȱtheȱ
ServerȱType,ȱselectȱRedȱHat.ȱȱInȱtheȱCSRȱTextȱBoxȱ(seeȱillustrationȱbelow),ȱpasteȱ
theȱCSRȱfromȱyourȱClipboard.ȱȱTheȱtextȱmayȱexceedȱtheȱdisplayȱareaȱofȱtheȱbox.ȱȱ
DoubleȬcheckȱthatȱitȱisȱcomplete.
08 Jul 2009
Release 4.0.1
6-21
District CM/ECF System Administrator’s Guide
9. SelectȱStepȱ3:ȱCertificateȱOptions.ȱForȱServerȱLicenses,ȱenterȱ1.ȱȱForȱValidityȱ
Period,ȱselectȱtheȱOneȱYearȱradioȱbutton.
10. SelectȱStepȱ4:ȱȱChooseȱaȱChallengeȱPhrase,ȱtypeȱaȱwordȱorȱphraseȱthatȱcanȱbeȱusedȱ
ifȱyouȱeverȱneedȱtoȱcancelȱorȱrenewȱyourȱcertificate.
CAUTION Choose a word or phrase that you can remember, but would be unfamiliar to
anyone attempting to impersonate you. Make sure you remember your Challenge Phrase!
If you write it down, be sure to store it in a safe place. Without your challenge phrase, your
Digital ID cannot be revoked if it is compromised or lost. Use only characters in the English
alphabet; do not use punctuation or accent characters.
11. SelectȱStepȱ5:ȱȱEnterȱCommentsȱtoȱAdministrator,ȱyouȱcanȱtypeȱaȱmessageȱtoȱtheȱ
U.S.ȱCourts,ȱPKIȱAdministrator.ȱ
08 Jul 2009
Release 4.0.1
6-22
District CM/ECF System Administrator’s Guide
12. ȱSelectȱStepȱ6:ȱDigitalȱIDȱSubscriberȱAgreement,ȱclickȱAcceptȱtoȱagreeȱtoȱtheȱ
termsȱofȱtheȱVeriSignȱSubscriberȱAgreement.
13. SwitchȱbackȱtoȱtheȱLinuxȱsession.
14. ȱPressȱENTERȱwhenȱpromptedȱbyȱtheȱsystemȱtoȱHitȱReturn.ȱȱTheȱsystemȱasksȱifȱ
youȱwantȱtoȱsetȱaȱpassphraseȱonȱyourȱprivateȱkey:
[ ] Encrypt the private key
NOTE If you set a passphrase, you must enter it every time the server starts. This
passphrase must be the same for all keys used on the same server. Because of these
requirements, SDSD-SB recommends not using a passphrase.
15. Toȱexitȱtheȱinstallationȱprogram,ȱscrollȱdownȱtoȱselectȱNext,ȱandȱthenȱpressȱ
ENTER.
08 Jul 2009
Release 4.0.1
6-23
District CM/ECF System Administrator’s Guide
Installing Signed Certificates
Thisȱsectionȱdescribesȱhowȱtoȱinstallȱaȱpermanent,ȱsignedȱcertificateȱreceivedȱfromȱ
VeriSignȱorȱanotherȱcertificateȱauthority.ȱRepeatȱthisȱprocedureȱforȱeachȱdatabaseȱ
(live,ȱtest,ȱandȱtrain)ȱonȱbothȱservers.
To install a signed certificate
1. SaveȱtheȱresponseȱfromȱVeriSignȱinȱaȱtemporaryȱfile:
Exampleȱ
/tmp/ca-response
2. Installȱtheȱcertificateȱusingȱtheȱcommand:
getca Fully Qualified Domain Name < Temporary File
Insideȱserverȱexample
getca ecf.txwd.circ5.dcn < /tmp/ca-response
Outsideȱserverȱexample
getca ecf.txwd.uscourts.gov < /tmp/ca-response
3. Restartȱhttpd:
service httpd restart
4. CopyȱyourȱliveȱdatabaseȱcertificatesȱtoȱyourȱInsideȱandȱOutsideȱreplicationȱserver.ȱȱ
Followȱstepsȱ1ȱȬȱ3ȱaboveȱtoȱinstallȱandȱactivateȱtheȱcertificatesȱonȱyourȱreplicationȱ
servers.
5. Pleaseȱensureȱtheȱcorrespondingȱprivateȱkeyȱforȱtheȱliveȱdatabaseȱfromȱyourȱ
InsideȱandȱOutsideȱserverȱisȱalsoȱinȱplaceȱonȱtheȱreplicationȱservers.
6. Forȱassistanceȱwithȱtheȱprivateȱkeyȱandȱcertificateȱfilesȱonȱtheȱreplicationȱservers,ȱ
contactȱtheȱReplicationȱTeamȱatȱ210Ȭ301Ȭ6315ȱorȱemailȱat:
CM-ECF_Rep_Ops@aotx.uscourts.gov.
08 Jul 2009
Release 4.0.1
6-24
District CM/ECF System Administrator’s Guide
Controlling server access
Editȱtheȱ/etc/ssh/sshd_configȱfileȱtoȱcontrolȱaccessȱtoȱtheȱserverȱbyȱusersȱwhoȱenterȱ
throughȱSSH.ȱȱInȱthisȱfile,ȱyouȱcanȱrestrictȱaccessȱtoȱcertainȱusersȱwhoȱlogȱinȱfromȱ
workstationsȱatȱpredefinedȱIPȱaddresses.ȱȱInȱparticular,ȱallowȱaccessȱtoȱtheȱPACERȱ
ServiceȱCenterȱ(PSC).
To control server access through the sshd_config file
1. Asȱroot,ȱeditȱtheȱ/etc/ssh/sshd_configȱfile.
2. AddȱtheȱfollowingȱentryȱtoȱallowȱaccessȱbyȱtheȱPSC:
AllowUsers fp0000@156.132.88.*
3. AddȱAllowUsersȱentriesȱforȱallȱotherȱusersȱwhoȱshouldȱhaveȱaccessȱtoȱtheȱserver.
NOTE By default, all users may log in to the server. After editing the sshd_config
file, only users who are specifically given access may log in to the server. Ensure that
you include all users who require access to your server, including SDSD-SB which has
the range of 156.132.82/83/84/85.
Syntax:ȱȱȱȱȱȱȱȱȱȱȱAllowUsersȱusername@IPaddressȱ[username@IPaddressȱ...]
Youȱcanȱuseȱtheȱasteriskȱ(*)ȱtoȱspecifyȱwildcardȱnamesȱandȱIPȱaddressȱranges.ȱȱUserȱ
namesȱareȱvalid;ȱnumericalȱuserȱIDsȱareȱinvalid.ȱȱSeparateȱusernamesȱwithȱaȱspace.ȱTheȱ
followingȱlistȱprovidesȱexamples.
•
AllowȱtheȱuserȱjohnȱtoȱlogȱinȱfromȱtheȱworkstationȱfoundȱatȱIPȱaddressȱ
192.167.0.10:
AllowUsers john@192.167.0.10
•
Allowȱtheȱuserȱsuzyȱtoȱlogȱinȱfromȱanyȱworkstationȱonȱtheȱsubnetȱ192.167.0:
AllowUsers suzy@192.167.0.*
•
Allowȱanyȱvalidȱuserȱtoȱlogȱinȱfromȱtheȱsubnetȱ192.167.1:
AllowUsers *@192.167.1.*
•
Combineȱtheȱpreviousȱexamplesȱintoȱoneȱstatement:
AllowUsers john@192.167.0.10 suzy@192.167.0.* *@192.167.1.*
4. Afterȱsavingȱyourȱchanges,ȱrestartȱsshd:
service sshd restart
08 Jul 2009
Release 4.0.1
6-25
CHAPTER
7
7
Conflict Checking
In This Chapter
•
ConflictȱCheckingȱReport
•
ConflictȱListȱMaintenance
•
RunningȱtheȱConflictȱCheckingȱReportȱAutomatically
District CM/ECF System Administrator’s Guide
Conflict Checking Report
TheȱConflictȱCheckingȱreportȱisȱdesignedȱtoȱassistȱcourtsȱinȱidentifyingȱpotentialȱ
conflictsȱofȱinterestȱforȱjudgesȱandȱtheȱpartiesȱandȱcasesȱwithȱwhichȱtheyȱwork.ȱTheȱ
conflictȬcheckingȱsoftwareȱcomparesȱcaseȱparticipantsȱwithȱlistsȱofȱpeopleȱandȱ
companiesȱwithȱwhichȱtheȱjudgeȱisȱinvolved.ȱWhenȱaȱcaseȱhasȱaȱpartyȱorȱattorneyȱwhoȱ
matchesȱthisȱlist,ȱȱorȱpartiesȱwhoȱareȱnotȱplaintiffsȱorȱdefendants,ȱorȱcorporateȱparentsȱ
andȱgrandparents,ȱtheȱprogramȱeȬmailsȱaȱreportȱtoȱtheȱjudgeȱorȱdesigneeȱsoȱthatȱtheȱ
judgeȱcanȱconsiderȱrecusalȱforȱthatȱcase.ȱCorporateȱparentsȱareȱaddedȱduringȱcaseȱ
opening,ȱbyȱtheȱCorporateȱparent...ȱbuttonȱonȱtheȱPartyȱInformationȱscreen,ȱorȱlaterȱ
throughȱEditȱCaseȱParticipantsȱorȱEditȱCorporateȱData.
Conflict List Maintenance
Theȱconfictȱlistȱcontainsȱtheȱnameȱofȱpeopleȱandȱorganizationsȱwhoȱmightȱposeȱ
potentialȱconflictsȱifȱtheyȱwereȱtoȱbecomeȱinvolvedȱinȱcasesȱtoȱwhichȱtheȱjudgeȱisȱ
assigned.ȱȱTheȱlistȱisȱstoredȱinȱtheȱdatabaseȱinȱtheȱrecusalȱtable.ȱȱPleaseȱreferȱtoȱtheȱ
ConflictȱCheckingȱsectionȱofȱtheȱApplicationȱAdministrator’sȱGuideȱtoȱsetȱupȱandȱ
configureȱtheȱConflictȱCheckingȱmodule.
Running the Conflict Checking Report Automatically
Cronȱjobsȱ(shownȱbelow)ȱareȱsetȱupȱatȱinstallationȱtoȱautomaticallyȱrunȱtheȱConflictȱ
CheckingȱReport.ȱ
Figure 1
AutoConfCronAll.live
#00 22 * * 1 root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e
dbname -r ‘/opt/DCECF/[live | test | train]/server/server/AutoConfCron.pl
dbname /opt/DCECF/[live | test | train]/server/server ALL >>
/var/log/ecf/AutoConfCron.dbname.log 2>&1‘
AutoConfCronDaily.live
#00 22 * * 1 root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e
dbname -r ‘/opt/DCECF/[live | test | train]/server/server/AutoConfCron.pl
dbname /opt/DCECF/[live | test | train]/server/server DAILY >>
/var/log/ecf/AutoConfCron.dbname.log 2>&1‘
AutoConfCronConflict.live
#00 22 * * 1 root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e
dbname -r ‘/opt/DCECF/[live | test | train]/server/server/AutoConfCron.pl
dbname /opt/DCECF/[live | test | train]/server/server CONFLICTLIST >>
/var/log/ecf/AutoConfCron.dbname.log 2>&1‘
TheȱprogramȱthatȱcallsȱtheȱConflictȱCheckingȱReportȱwhenȱitȱisȱrunȱautomatically,ȱ
AutoConfCron.pl,ȱhasȱthreeȱparameters,ȱdiscussedȱbelow.ȱȱThereȱisȱoneȱcronȱjobȱ
installedȱforȱeachȱofȱtheȱthreeȱparameters.
•
08 Jul 2009
ALLȱrunsȱtheȱConflictȱCheckingȱReportȱforȱallȱjudgesȱforȱtheirȱentireȱcaseload.
Release 4.0.1
7-2
District CM/ECF System Administrator’s Guide
•
DAILYȱrunsȱtheȱConflictȱCheckingȱReportȱforȱallȱjudgesȱforȱtheȱlastȱ24ȱhoursȱfromȱ
theȱtimeȱtheȱcronȱisȱrun.ȱTheȱreportȱcanȱalsoȱbeȱrunȱwithȱanȱoptionalȱ‘multiplier’ȱ
parameterȱwhichȱwillȱextractȱdataȱforȱaȱmultipleȱdayȱrange.ȱȱAsȱshownȱbelow,ȱaddȱ
anȱintegerȱafterȱDAILYȱforȱtheȱrangeȱyouȱwantȱtoȱrunȱtheȱreport,ȱ2ȱforȱ48ȱhours,ȱ3ȱ
forȱ72ȱhours,ȱetc.
Example
00 22 * * 1 root /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e
dbname -r ‘/opt/DCECF/live/server/server/AutoConfCron.pl dbname
/opt/DCECF/live/server/server DAILY 2 >>
/var/log/ecf/AutoConfCron.dbname.log 2>&1‘
•
CONFLICTLISTȱchecksȱtheȱconflictȱlistȱtoȱseeȱthatȱeachȱjudgeȱhasȱaȱconflictȱlistȱorȱ
hasȱbeenȱupdatedȱinȱtheȱnumberȱofȱdaysȱsetȱinȱtheȱsiteȱtableȱentryȱ
Recuse_List_Overdue.
AsȱshownȱinȱFigureȱ1ȱonȱtheȱpreviousȱpage,ȱtheȱcronȱjobsȱareȱinstalledȱasȱdisabled.ȱ
Whenȱyouȱareȱreadyȱtoȱrunȱtheȱreports,ȱorȱwantȱtoȱmodifyȱtheȱdefaultȱcronȱentry,ȱdoȱ
theȱfollowingȱȱ(asȱroot):
To enable the Conflict Checking cron jobs
1. Changeȱdirectory
cd /etc/cron.d
2. Reviewȱtheȱcronȱfiles,ȱremovingȱtheȱpoundȱsignsȱtoȱenableȱthem,ȱandȱchangingȱtheȱ
scheduledȱrunȱtimeȱasȱneeded.
3. Runȱtheȱfollowingȱcommandȱtoȱactivateȱtheȱcronȱjobs:
service crond reload
File in /etc/cron.d
Default cron entry
AutoConfCronAll.live
AutoConfCronAll.test
AutoConfCronAll.train
/opt/DCECF/[live | test | train]/server/server/
AutoConfCron.pl
Monday at 9:00 p.m.
00 21 * * 1
AutoConfCronDaily.live
AutoConfCronDaily.test
AutoConfCronDaily.train
/opt/DCECF/[live | test | train]/server/server/
AutoConfCron.pl
Monday-Friday at
8:00 p.m.
00 20 * * 1-5
AutoConfCronConflict.live
AutoConfCronConflict.test
AutoConfCronConflict.train
08 Jul 2009
Program
/opt/DCECF/[live | test | train]/server/server/
AutoConfCron.pl
The first day of every
month at midnight
00 00 1 * *
Release 4.0.1
7-3
CHAPTER
8
8
Forms
In This Chapter
•
Overview
•
CreatingȱtheȱFormȱTemplate
•
DataȱProperties
•
UsingȱDataȱPropertiesȱinȱtheȱTemplateȱ
•
DevelopingȱAdditionalȱDataȱProperties
•
JSPȱtoȱPerlȱFormsȱConversion
•
CreatingȱYourȱOwnȱDataȱCollectors
•
ChangingȱtheȱDefaultȱDateȱFormat
District CM/ECF System Administrator’s Guide
Overview
DistrictȱCM/ECFȱprovidesȱsampleȱtemplatesȱforȱcriminalȱandȱcivilȱschedulingȱorders,ȱ
asȱwellȱasȱaȱgenericȱNoticeȱofȱHearing.ȱȱIfȱtheȱapplicationȱadministratorȱknowsȱHTML,ȱ
anyȱtextȱeditorȱcanȱbeȱusedȱtoȱmodifyȱtheseȱtoȱsuitȱlocalȱneeds,ȱorȱtheyȱcanȱbeȱcopiedȱ
toȱcreateȱnewȱtemplates.ȱȱTheȱtableȱbelowȱshowsȱtheȱlistȱofȱtemplatesȱincluded:
Form
Display Name
Template Filename
cvschedo
Scheduling Order
cvschedo.html
crschedo
Scheduling Order
crschedo.html
hrgntc
Notice of Hearing
hrgntc.html
alltags
Test All Tags
alltags.html
TheȱtemplateȱinȱeachȱformȱisȱanȱHTMLȱfileȱwithȱembeddedȱPerlȱstatements.ȱTheȱ
templateȱsystemȱusedȱisȱcalledȱTemplateȱToolkit.ȱDocumentationȱisȱavailableȱat:
http://template-toolkit.org
TheȱHTMLȱtemplateȱisȱprocessedȱwhenȱaȱformȱisȱselectedȱfromȱtheȱdropdownȱlistȱinȱ
docketing.ȱȱTheȱHTMLȱfileȱmergesȱcaseȱspecificȱdataȱwithȱstandardȱtext,ȱandȱformatsȱ
theȱtextȱandȱdata.ȱȱAnȱHTMLȱfileȱisȱthenȱdisplayedȱinȱdocketingȱalongȱwithȱtheȱNextȱ
andȱEditȱbuttons.
AnȱHTMLȱformȱtemplateȱcontainsȱPerlȱprogrammingȱstatements,ȱtext,ȱdataȱ
properties,ȱandȱHTMLȱtags.ȱȱFormȱtemplatesȱcanȱbeȱcreatedȱusingȱaȱtextȱeditorȱorȱanȱ
HTMLȱeditor.
08 Jul 2009
Release 4.0.1
8-2
District CM/ECF System Administrator’s Guide
Creating the Form Template
Toȱcustomizeȱtheȱsampleȱtemplatesȱandȱtoȱcreateȱnewȱtemplates,ȱaȱgoodȱ
understandingȱofȱHTMLȱandȱaccessȱtoȱtheȱtemplateȱdirectoryȱonȱtheȱCM/ECFȱserverȱ
isȱrequired.ȱȱȱȱ
NOTE Templates are stored in /opt/DCECF/database/web/templates/forms where
database is the name of the test, train, or live database.
Theȱformȱtemplateȱcanȱbeȱcreatedȱwithȱaȱtextȱeditorȱ(suchȱasȱviȱorȱNotepad)ȱorȱanȱ
HTMLȱeditorȱ(suchȱasȱMacromediaȱDreamweaverȱorȱNetscapeȱComposer).ȱȱWithȱ
eitherȱmethod,ȱPerlȱstatements,ȱtext,ȱandȱdataȱpropertiesȱcanȱbeȱaddedȱtoȱtheȱtemplateȱ
manuallyȱorȱbyȱcopying/modifyingȱfromȱotherȱfiles.ȱȱWithȱaȱtextȱeditor,ȱyouȱworkȱ
withȱanȱuninterruptedȱHTMLȱfileȱinȱwhichȱtheȱHTMLȱtagsȱareȱvisible,ȱandȱyouȱcanȱ
enterȱtheȱcommandsȱyourself.ȱȱWithȱanȱHTMLȱeditor,ȱyouȱcanȱworkȱwithȱanȱ
uninterruptedȱHTMLȱfileȱthatȱhidesȱtheȱHTMLȱtagsȱandȱinȱwhichȱtheȱHTMLȱeditorȱ
insertsȱtheȱHTMLȱtagsȱforȱyou.ȱȱAnȱHTMLȱeditorȱsimplifiesȱtheȱadditionȱofȱHTMLȱ
tagsȱtoȱtheȱtemplate,ȱbutȱmostȱHTMLȱeditorsȱinsertȱproprietaryȱHTMLȱelementsȱthatȱ
mustȱbeȱdeletedȱbeforeȱtheȱtemplateȱcanȱbeȱusedȱinȱCM/ECF.ȱȱIfȱDreamweaverȱisȱused,ȱȱ
fewer,ȱifȱany,ȱproprietaryȱentriesȱwillȱbeȱencounteredȱandȱcanȱeasilyȱbeȱremovedȱwithȱ
Dreamweaver’sȱCleanupȱHTMLȱcommand.ȱȱWhicheverȱtypeȱofȱeditorȱisȱused,ȱtheȱfinalȱ
versionȱofȱtheȱtemplateȱmustȱbeȱsavedȱasȱaȱHTMLȱfile.
WhetherȱaȱtextȱeditorȱorȱanȱHTMLȱeditorȱisȱused,ȱtheȱHTMLȱcodeȱmustȱadhereȱtoȱ
certainȱrulesȱrequiredȱbyȱtheȱEasyȱSoftwareȱProductsȱHTMLDOCȱprogram.ȱȱTheȱ
CM/ECFȱapplicationȱusesȱversionȱ1.8.17ȱofȱtheȱHTMLDOCȱprogramȱtoȱconvertȱtheȱ
HTMLȱfileȱtoȱPDF.ȱȱTheȱHTMLȬtoȬPDFȱconversionȱtakesȱplaceȱwhenȱtheȱuserȱclicksȱonȱ
theȱNextȱbuttonȱdisplayedȱwithȱtheȱinterpretedȱHTMLȱfileȱinȱdocketing.ȱȱMostȱ
browsersȱignoreȱminorȱcodingȱmistakes,ȱsuchȱasȱmissingȱorȱextraȱtags.ȱȱHTMLDOC,ȱ
however,ȱwillȱnotȱcorrectlyȱinterpretȱaȱformȱthatȱdoesȱnotȱfollowȱstrictȱHTMLȱcodingȱ
rules.ȱȱ(Ifȱaȱuserȱeditsȱaȱform,ȱHTMLDOCȱisȱnotȱusedȱbecauseȱtheȱformȱisȱsavedȱtoȱPDFȱ
outsideȱofȱtheȱCM/ECFȱapplication.)
TheȱlatestȱversionȱofȱtheȱHTMLDOCȱSoftwareȱUsersȱManualȱcanȱbeȱdownloadedȱatȱ
theȱfollowingȱwebsite:
http://www.easysw.com/htmldoc
Chapterȱ6ȱofȱtheȱHTMLDOCȱmanualȱprovidesȱlistsȱofȱsupportedȱHTMLȱelementsȱandȱ
versions,ȱasȱwellȱasȱspecialȱHTMLȱtagsȱtoȱcreateȱpageȱbreaks,ȱheaders,ȱfooters,ȱ
margins,ȱandȱotherȱfeatures.ȱȱTheȱmanualȱstatesȱinȱseveralȱplacesȱthatȱtheȱproductȱ
doesȱnotȱsupportȱHTMLȱ4.0ȱelementsȱbutȱtheȱintroductionȱsuggestsȱthatȱsomeȱ4.0ȱ
elementsȱareȱsupported.ȱȱ
08 Jul 2009
Release 4.0.1
8-3
District CM/ECF System Administrator’s Guide
Template Structure
EachȱPerlȱprogrammingȱstatementȱinȱaȱformȱtemplateȱbeginsȱwithȱtheȱmarkerȱ[%ȱandȱ
endsȱwithȱtheȱmarkerȱ%].ȱȱForȱmostȱordersȱandȱnotices,ȱuseȱtheseȱtwoȱstatementsȱnearȱ
theȱtopȱofȱtheȱfile:
[% INCLUDE "../templates/forms/letterhead.html" %]
[% INCLUDE "../templates/forms/casehead.html" %]
Theseȱstatementsȱcallȱtwoȱseparateȱfileȱfragmentsȱthatȱprovideȱtheȱcourtȱnameȱ
(letterhead.html)ȱthatȱtypicallyȱappearȱatȱtheȱtopȱofȱeveryȱstandardȱorderȱorȱnotice.ȱȱ
Itȱisȱnotȱrequiredȱthatȱtheseȱsectionsȱofȱtheȱorderȱorȱnoticeȱbeȱstoredȱinȱseparateȱfiles;ȱ
theyȱcanȱbeȱaddedȱtoȱeachȱHTMLȱtemplateȱindividually.ȱȱTheȱadvantageȱofȱstoringȱ
theseȱsectionsȱinȱseparateȱfilesȱisȱthat,ȱifȱaȱchangeȱisȱneeded,ȱtheȱchangeȱisȱperformedȱ
onlyȱonce.ȱȱModifyȱtheȱletterhead.htmlȱandȱcasehead.htmlȱfilesȱprovidedȱwithȱtheȱ
CM/ECFȱapplicationȱtoȱmeetȱyourȱcourt’sȱrequirements.
Sample Letterhead
Sample Casehead
TheȱtwoȱPerlȱstatementsȱdescribedȱaboveȱmayȱwellȱbeȱallȱtheȱPerlȱcodeȱrequiredȱforȱ
standardȱordersȱandȱnotices.ȱȱJavaȱcodeȱcanȱalsoȱbeȱusedȱinȱformȱtemplatesȱforȱotherȱ
purposesȱsuchȱasȱconditionalȱlogicȱandȱdateȱcomparisons.ȱȱTheȱsampleȱschedulingȱ
ordersȱprovidedȱwithȱtheȱCM/ECFȱapplication,ȱforȱexample,ȱsurroundȱeachȱ
paragraphȱinȱtheȱbodyȱofȱtheȱorderȱwithȱconditionalȱlogicȱstatements.ȱTheseȱ
statementsȱexcludeȱtheȱparagraphȱfromȱtheȱorderȱifȱtheȱdataȱcalledȱbyȱtheȱdataȱ
propertiesȱinȱtheȱparagraphȱisȱnotȱinȱtheȱdatabaseȱwhenȱtheȱorderȱisȱcreatedȱinȱ
docketing.ȱȱ(Theȱdataȱwouldȱnotȱbeȱinȱtheȱdatabase,ȱforȱexample,ȱifȱcourtȱstaffȱ
docketingȱtheȱorderȱdidȱnotȱsetȱaȱparticularȱdeadlineȱforȱthisȱinstanceȱofȱtheȱevent.)ȱȱ
Theȱsampleȱtemplatesȱareȱdescribedȱinȱmoreȱdetailȱlaterȱinȱthisȱchapter.ȱȱ
Text, Data Properties, and HTML Tags
InȱadditionȱtoȱPerlȱcode,ȱformȱtemplatesȱalsoȱcontainȱtext,ȱdataȱpropertiesȱthatȱretrieveȱ
theȱcaseȱspecificȱdata,ȱandȱHTMLȱtagsȱthatȱformatȱtheȱtextȱandȱdata.ȱȱHereȱisȱhowȱtwoȱ
08 Jul 2009
Release 4.0.1
8-4
District CM/ECF System Administrator’s Guide
paragraphsȱfromȱaȱstandardȱorderȱmightȱbeȱrenderedȱintoȱtheseȱelementsȱofȱtheȱ
templateȱfile:
Pursuant to Fed. R. Civ.P.16, the court having conferred with counsel,
IT IS HEREBY ORDERED:
STATUS CONFERENCE: A status conference will be held on 10/11/03
at 11:00 in Courtroom 5.
InȱtheȱHTMLȱfile,ȱdataȱpropertiesȱareȱenclosedȱwithinȱdataȱtags.ȱȱForȱtheȱexampleȱ
paragraphs,ȱtheȱstandardȱtextȱandȱdataȱtagsȱinȱtheȱHTMLȱfileȱwouldȱlookȱlikeȱthisȱ(theȱ
dataȱtagsȱareȱinȱbold):
Pursuant to Fed. R. Civ.P.16, the court having conferred with counsel, IT IS HEREBY
ORDERED:
STATUS CONFERENCE: A status conference will be held on
[% fetch(name="hrgDate" sd_type="statcnf") %]
at
[% fetch(name="hrgTime" sd_type="statcnf") %]
in
[% fetch(name="hrgLoc" sd_type="statcnf") %].
Eachȱdataȱtagȱbeginsȱwithȱtheȱmarkerȱ[ȱandȱendsȱwithȱtheȱmarkerȱ].ȱȱTheȱfirstȱpartȱofȱ
theȱdataȱtagȱ(fetchȱname=“hrgDate”)ȱcallsȱaȱdataȱpropertyȱ(hrgDate)ȱthatȱwasȱ
developedȱforȱtheȱCM/ECFȱapplication.ȱȱTheȱthreeȱpropertiesȱinȱtheȱexampleȱretrieveȱ
theȱdate,ȱtime,ȱandȱlocationȱofȱaȱhearingȱfromȱtheȱscheduleȱtable.ȱȱTheȱsecondȱpartȱofȱ
theȱdataȱtagȱ(sd_type=“statcnf”)ȱisȱaȱvariableȱpassedȱtoȱtheȱdataȱpropertyȱthatȱ
specifiesȱtheȱtypeȱofȱhearing.
TheȱtextȱandȱdataȱareȱformattedȱmostlyȱwithȱHTMLȱtags.ȱȱ(Asȱexplainedȱlaterȱinȱthisȱ
chapter,ȱdataȱtagsȱcanȱalsoȱbeȱusedȱforȱcertainȱkindsȱofȱformatting.)ȱȱTheȱHTMLȱtagsȱinȱ
theȱtemplateȱfileȱforȱtheȱtwoȱexampleȱparagraphsȱwouldȱlookȱlikeȱthisȱ(theȱHTMLȱtagsȱ
areȱinȱbold):
08 Jul 2009
Release 4.0.1
8-5
District CM/ECF System Administrator’s Guide
Pursuant to Fed. R. Civ.P.16, the court having conferred with counsel, IT IS
HEREBY ORDERED:
STATUS CONFERENCE: A status conference will be held on
[% fetch(name="hrgDate" sd_type="statcnf") %]
at
[% fetch(name="hrgTime" sd_type="statcnf") %]
in
[% fetch(name="hrgLoc" sd_type="statcnf") %].
Inȱtheȱexample,ȱtheȱHTMLȱtagsȱȱandȱȱstartȱandȱstopȱboldface,ȱtheȱcommandȱ
ȱinsertsȱaȱparagraphȱbreak,ȱandȱtheȱ ȱtagȱaddsȱadditionalȱspacesȱinȱfrontȱofȱ
theȱtextȱSTATUSȱCONFERENCE.
TheȱfollowingȱwebsiteȱprovidesȱaȱquickȱlessonȱonȱtheȱbasicsȱofȱHTML:
http://www.pagetutor.com/pagetutor/makapage/lesson01.html
NoteȱthatȱHTMLȱcanȱbeȱusedȱtoȱincludeȱanȱimageȱ(suchȱasȱtheȱcourtȱseal)ȱinȱaȱform.ȱȱ
Forȱexample:
Relativeȱpathsȱsuchȱasȱȱmustȱnotȱbeȱusedȱbecauseȱ
HTMLDocȱwillȱnotȱknowȱwhereȱtoȱfindȱtheȱfileȱwhenȱitȱgeneratesȱaȱPDF.ȱ
Formsȱdefaultȱtoȱportraitȱpageȱorientation.ȱȱToȱexplicitlyȱspecifyȱlandscapeȱ
orientation:
Toȱexplicitlyȱspecifyȱportraitȱorientation:
08 Jul 2009
Release 4.0.1
8-6
District CM/ECF System Administrator’s Guide
Data Properties
TheȱCM/ECFȱapplicationȱprovidesȱoverȱ50ȱcustomȱdataȱpropertiesȱforȱuseȱinȱforms.ȱȱ
Theȱpropertiesȱsupplyȱtheȱfollowingȱdata:
Case Information
Case Element
Data Property
Case number
csNum
Short title of case
csShortTitle
Date case is filed
csFlDate
Date case is opened/docketed
cdDktDate
Date case is terminated
csTrmDate
Case type
csType
Case type description
caseTypeDescrip
First four flags set in case
csFlag1, csFlag2, csFlag3, csFlag4
Defendant number
dftNum
Name of first plaintiff and defendant in the case (used to
create the case heading at the beginning of the order or
notice)
firstPlaName, firstDftName
Et al designation (used with the case heading)
plaEtAl, dftEtal
Case number in other court
asPrevCaseNo
Name of other court
asPrevCourt
Nature of Suit
cvNOS
Event Information
Event Element
Data Property
Date and time event entered
Date event filed
evtFileDate
Docket text for current event
curEvtDktxt
Document number
docuNum
Judge who entered the order or held hearing
curJudTitle, curJudName
Name of the filer of a motion
filerName
Role of the filer of a motion
08 Jul 2009
dateTime
filerType
Release 4.0.1
8-7
District CM/ECF System Administrator’s Guide
Name and initials of person who docketed the event
dktClkName, dktClkInits
Today’s date
curDate
Hearing and Deadline Information
Hearing/Deadline Element
Data Property
Date, time, and location of any hearing defined in the deadlines
table
hrgDate, hrgTime, hrgLoc
Date of any deadline defined in the deadlines table
ddlDate
Description of all hearings set by the current event
hrgDesc
Description of all deadlines set by the current event
ddlDesc
Date, time, and location of hearing set by the current user (used with
events that set only one hearing)
curHrgDate, curHrgTime, curHrgLoc
Date of deadline set by the current event (used with events that set
only one deadline)
curDdlDate
Hearing judge
hrgJudge
Hearing judge title
hrgJudgeTitle
Judge Information
Judge Information Element
Data Property
Title of presiding and referral judges
judTitle
Name of presiding and referral judges
judName
Initials of presiding and referral judges
judInits
AO Code of presiding and referral judges (used with conditional logic)
judCode
Court Information
Court Information Element
Data Property
Name of the Clerk of Court
Name of the Chief Deputy Clerk
dptyClkName
Court Name (e.g., Western District of Michigan)
ctName
Main and divisional office names
offName
Main and divisional office codes
offCode
Street address of main and divisional offices
offStreetAddr
City and State of main and divisional offices
08 Jul 2009
ctClkName
offCityState
Release 4.0.1
8-8
District CM/ECF System Administrator’s Guide
Zip Code of main and divisional offices
offZip
Telephone number of main and divisional offices
offTelNum
Attorney Information
Judge Information Element
Data Property
Attorney name
atyName
Attorney office
atyOffice
Attorney unit
atyUnit
Attorney street address
atyStreetAddr
Attorney city and state
atyCityState
Attorney zip
atyZip
Attorney address
atyAddr
Attorney country
atyCountry
Attorney phone
atyPhone
Party Information
Judge Information Element
Data Property
Party name
Party office
ptyOffice
Party unit
ptyUnit
Party street address
ptyStreetAddr
Party city and state
ptyCityState
Party zip
ptyZip
Party address
ptyAddr
Party country
ptyCountry
Party phone
ptyPhone
Party DOB
ptyDob
Party prisoner ID
08 Jul 2009
ptyName
ptyPrisonerID
Release 4.0.1
8-9
District CM/ECF System Administrator’s Guide
Using Data Properties in the Template
Inȱtheȱtemplateȱfile,ȱtheȱuserȱentersȱtheȱdataȱpropertiesȱinȱtheȱspotȱwhereȱtheȱdataȱ
shouldȱbeȱmergedȱwithȱtheȱtext.ȱȱEachȱofȱtheȱpropertiesȱdescribedȱaboveȱisȱenclosedȱ
withȱaȱdataȱtag:
[% fetch(name="property name") %]
TheȱhrgDate,ȱhrgTime,ȱhrgLoc,ȱandȱddlDateȱpropertiesȱareȱpassedȱaȱvariableȱwithinȱ
theȱtag.ȱȱTheȱvariableȱisȱtheȱvalueȱofȱtheȱsd_typeȱfieldȱinȱtheȱdeadlinesȱtableȱentryȱthatȱ
definesȱtheȱhearingȱorȱdeadline,ȱforȱexample:
[% fetch(name="hrgDate" sd_type="prtrlconf") %]
TheȱjudTitle,ȱjudName,ȱjudInits,ȱandȱjudRoleȱpropertiesȱmayȱbeȱpassedȱtheȱjudge’sȱ
roleȱinȱtheȱcaseȱasȱaȱvariable,ȱforȱexample:
[% fetch(name="judName" jd_judge_role="pre") %]
Theȱofficeȱdataȱpropertiesȱmayȱbeȱpassedȱtheȱofficeȱnumberȱ(theȱvalueȱinȱtheȱlc_codeȱ
ofȱtheȱlocationȱtableȱentryȱforȱthatȱoffice)ȱasȱanȱoptionalȱvariable,ȱforȱexample:
[% fetch(name="offName" lc_code="Office7") %]
Ifȱtheȱvariableȱisȱomitted,ȱtheȱofficeȱpropertiesȱwillȱretrieveȱtheȱdataȱforȱtheȱofficeȱ
whoseȱnumberȱisȱpartȱofȱtheȱcaseȱtitle.ȱȱTheȱofficeȱpropertiesȱretrieveȱdataȱfromȱtheȱ
locationȱtable,ȱwhichȱisȱdiscussedȱlaterȱinȱthisȱchapter.
Aȱtemplateȱcalledȱalltags.htmlȱisȱprovidedȱwithȱtheȱCM/ECFȱapplication.ȱȱThisȱ
templateȱcontainsȱanȱexampleȱofȱeachȱdataȱproperty.ȱȱTheȱcourtȱcanȱuseȱtheȱ
alltags.htmlȱfileȱtoȱcopyȱandȱpasteȱdataȱpropertiesȱintoȱtheȱformȱtemplates.ȱȱTheȱ
propertiesȱcanȱbeȱcopiedȱdirectlyȱfromȱtheȱHTMLȱfileȱonȱtheȱCM/ECFȱserver,ȱorȱtheȱ
courtȱuserȱcanȱgenerateȱaȱtestȱformȱforȱtheȱtemplateȱfromȱtheȱUtilitiesȱmenuȱandȱcopyȱ
andȱpasteȱfromȱtheȱHTMLȱorȱPDFȱfilesȱdisplayedȱthere.
Changing Lower Case and Upper Case
IfȱyouȱwantȱdataȱtoȱappearȱinȱallȱupperȱcaseȱȬȱwhichȱisȱstoredȱinȱtheȱdatabaseȱasȱlowerȱ
caseȱȬȱȱinȱanȱorderȱorȱnotice,ȱanȱoptionalȱvariableȱ(case=“u”)ȱcanȱbeȱpassedȱtoȱaȱdataȱ
property.ȱȱForȱexample,ȱifȱyouȱwantȱtheȱshortȱtitleȱofȱtheȱcaseȱtoȱappearȱinȱallȱupperȱ
case,ȱtheȱfollowingȱwouldȱbeȱenteredȱinȱtheȱtemplateȱfile:
08 Jul 2009
Release 4.0.1
8-10
District CM/ECF System Administrator’s Guide
Dataȱstoredȱinȱtheȱdatabaseȱasȱupperȱcaseȱcanȱbeȱrenderedȱinȱlowerȱcaseȱinȱtheȱorderȱ
orȱnoticeȱwithȱtheȱvariableȱcase=“I”.ȱInȱtheȱabsenceȱofȱtheȱcase=ȱvariable,ȱdataȱwillȱbeȱ
returnedȱwithȱcapitalizationȱasȱstoredȱinȱtheȱdatabase.
Conditional Logic
Thereȱmayȱbeȱaȱneedȱtoȱincludeȱconditionalȱlogicȱinȱaȱtemplate,ȱforȱexampleȱtoȱtestȱ
whetherȱaȱjuryȱtrialȱhasȱbeenȱset,ȱasȱshownȱinȱtheȱexampleȱbelow:
<% if (!forms.getHrgDate(“jytrl”).equals("")) { %>
TRIAL DATE AND SETTING: The jury trial in this matter shall
commence on
at
at the United States District Court,
,
in
.
<% } %>
Ifȱthereȱisȱnoȱjuryȱtrialȱsetȱforȱtheȱcurrentȱdocketȱevent,ȱnothingȱwillȱbeȱprinted.
[% fetch(name="dateFormat" value="F2") %]
[% fetch(name="hrgDate" sd_type="prtrlconf") %]
08 Jul 2009
Release 4.0.1
8-11
District CM/ECF System Administrator’s Guide
Developing Additional Data Properties
ItȱisȱpossibleȱtoȱdefineȱaȱdataȱpropertyȱforȱanyȱdataȱelementȱstoredȱinȱtheȱCM/ECFȱ
database.ȱȱDefiningȱdataȱpropertiesȱrequiresȱexpertiseȱinȱPerlȱandȱInformixȱSQL.ȱTheȱ
followingȱtableȱprovidesȱaȱlistȱofȱCM/ECFȱDataȱProperties.
Data Property
Description
Example
Database Table.Field
actionCode
granting
dktpart.dp_ action_ type
asPrevCaseNo
Case number in other
court
03-NYS-9765
asccase.as_prev_caseno
asPrevCourt
Name of other court
New York State
Supreme Court
asscase.as_prev_court
atyName
Attorney Name
Nevin Matthew
Goodman
attorney.at_first_name
at_middle_name
at_last_name
atyOffice
Attorney Office
Law Offices of Goodman & Goodman
attorney.at_office
atyUnit
Attorney Unit
5B
attorney.at_unit
atyStreetAddr
Attorney Street
Address
13640 Potter Avenue
Suite 10
5th Floor
attorney.at_address1
at_address2
at_address3
atyCityState
Attorney City and State
Ashburn, VA
attorney.at_city
at_state
atyZip
Attorney Zip Code
20333
attorney.at_zip
atyAddr
Attorney Address
Law Offices of Goodman & Goodman
13640 Potter Avenue
Suite 10
5th Floor
Ashburn, VA 20333
attorney.at_office, at_address1
at_address2, at_address3
at_city, at_state, at_zip
atyCountry
Attorney Country
US
attorney-at_country
atyPhone
Attorney Phone
703-555-1212
attorney.at_phoneno
caseTypeDescrip
Case type description
Civil
casetype.cy_description
citCitation
Full citation code
18:4.F
citation.cit_citation
citSortTitle
First part of the citation
code
18
citation.cit_sort_title
citSortSection
Offense category code
4
citation.cit_sort_section
citSortSubSection
08 Jul 2009
Order action code
Offense category subsection code
Release 4.0.1
citation.cit_sort_sub_sec
8-12
District CM/ECF System Administrator’s Guide
citDescription
Withholding information on a crime
citation.cit_description
citText
Text of the citation
from the count table
Accessory after the
fact
count.cn_cittext
csDktDate
Date case is
opened/docketed
10/12/2004
case.cs_date_enter
csFlag1
First flag set in case
APPEAL
case_flags.cf_value
csFlag2
Second flag set in
case
CASREF
case_flags.cf_value
csFlag3
Third flag set in case
MOTREF
case_flags.cf_value
csFlag4
Fourth flag set in case
ENE
case_flags.cf_value
csFlDate
Date case is filed
10/12/2004
case.cs_date_filed
csNum
Case number
1:03-cv-08000
case.cs_case_number
csShortTitle
Case Short Title
Reddick v. Greene
case.cs_short_title
csTrmDate
Date case is terminated
10/12/2004
case.cs_date_term
csType
Case type
cv
case.cs_type
ctClkName
Court Clerk's name
Joan R. Smith
site.si_ value (si_code = Clerk)
ctName
Court Name
Western District of
Michigan
site.si_ value (si_code = CourtName)
curDate
Today's date, date current event entered on
docket
10/12/2004
system date
curDdlDate
Date of deadline created by current event
10/12/2004
schedule.sd_ dtset
curEvtDktxt
Docket text for current
event
Status Conference
set for 10/12/04 at
11:00 AM in Courtroom 8 before Hon.
Katherine Jones.
dkttext.dt_ text
curJudge
Name of judge who
entered the order or
held the hearing
Katherine Jones
judge.jd_first_name,
jd_middle_name, jd_last_name,
jd_generation
curJudgeTitle
Title of judge who
entered the order or
held the hearing
Hon.
judge.jd_title
curHrgDate
08 Jul 2009
Name of the specific
citation
Date of hearing created by current event
10/12/2004
schedule.sd_ dtset
Release 4.0.1
8-13
District CM/ECF System Administrator’s Guide
curHrgLoc
Courtroom 8
codes.co_translation (co_type = location and co_code = schedule.sd_loc)
curHrgTime
Time of hearing created by current event
11:00 AM
schedule.sd_ tmset,
sd_ mset_ am_ pm
curHrgTime
Time of hearing created by current event
11:00 AM
schedule.sd_ tmset,
sd_ mset_ am_ pm
dateTime
Date and time current
event entered
10/12/2004 13:14
dktentry.de_date_enter
defNum
Defendant number
1
py_def_num
DdlDate
Date of deadline
This property is
passed the variable
sd_type, e.g.,
sd_type = ptcnf.
10/12/2004
schedule.sd_dtset
ddlDesc
Description of all deadlines set in this event.
Amended Pleadings, Discovery
deadlines.dl_description
dftEtal
Prints “et al.” for the
defendants
, et al.
N/A
dktClkInits
Docket clerk's initials
jrs
person. pr_ initials
dktClkName
Docket clerk's name
John R. Smith
person.pr_first_name, person,pr_middle_name, person.pr_last_name
docuNum
Document number
8
dktentry.de_ document_ num
dptyClkName
Chief Deputy Clerk's
name
George Harper
site.si_ value (si_code= Deputy)
evtFileDate
Date current event
filed
10/12/2004
dktentry.de_date_filed
filerName
Filer of motion name
May Company
person.pr_ first_ name,
pr_ middle_ name, pr_last_name
filerType
Filer of motion type
Defendant
role_type.ro_description
(party.py_role_type = roletype.ro_code)
firstDftName
Name of first defendant
Best Co.
party.py_ first_ name,
py_ middle_ name, py_last_name,
py_generation
firstPlaName
Name of first plaintiff
Proctor Inc.
party.py_ first_ name,
py_ middle_ name, py_last_name,
py_generation
getFormVar
08 Jul 2009
Location of hearing
created by current
event
Get a value from perl
%Var hash
1622
[% fetch(name="getFormVar"
key='caseId') %]
Release 4.0.1
8-14
District CM/ECF System Administrator’s Guide
hrgDate
10/12/2004
schedule.sd_dtset
hrgDesc
Description of all hearings set in this event.
Status Conference,
Final Pretrial Conference
deadlines.dl_description
hrgLoc
Location of hearing
This property is
passed the variable
sd_type, e.g.,
sd_type = ptcnf.
Courtroom 8
codes.co_translation
(co_type = location and
co_code = schedule.sd_loc)
hrgTime
Time of hearing
This property is
passed the variable
sd_type, e.g.,
sd_type = ptcnf.
11:00 AM
schedule.sd_ tmset,
sd_ mset_ am_ pm
judCode
Judge AO code
This property is
passed the variable
jd_judge_role, e.g.,
jd_judge_role = pre.
9801
judge.jd_ao_code
judInits
Judge initials
This property is
passed the variable
jd_judge_role, e.g.,
jd_judge_role = pre.
kj
judge.jd_initials
judName
Judge name
This property is
passed the variable
jd_judge_role, e.g.,
jd_judge_role = pre.
Katherine Jones
judge.jd_first_name,
jd_middle_name, jd_last_name,
jd_generation
judTitle
Judge title
This property is
passed the variable
jd_judge_role, e.g.,
jd_judge_role = pre.
Hon.
judge.jd_title
motionDesc
Description of motion
Show Cause
document_type.do_select_text
offCityState
08 Jul 2009
Date of hearing
This property is
passed the variable
sd_type, e.g.,
sd_type = ptcnf.
City and State of office
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
Alexandria, VA
lc_ city, lc_ state
Release 4.0.1
8-15
District CM/ECF System Administrator’s Guide
offCode
Office code
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
1
case.cs_ office
offName
Office name
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
Eastern Division
location.lc_office
offStreetAddr
Office address
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
100 Dangerfield
Road
location.lc_ address1 - address3
offTelNum
Office telephone number
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
(703) 836-8000
location.lc_ phoneno
offZip
Office zip code
This property may be
passed an optional
variable lc_code, e.g.,
lc_code = Office 1.
22314
location.lc_zip
plaEtal
Prints “et al.” for the
plaintiffs
, et al.
N/A
Address Information for Main and Divisional Offices
Theȱnameȱandȱaddressesȱofȱtheȱcourt’sȱmainȱandȱdivisionalȱofficesȱareȱstoredȱinȱtheȱ
locationȱtable.ȱȱTheȱofficeȱdataȱpropertiesȱareȱusedȱinȱtheȱformȱtemplatesȱtoȱincludeȱ
dataȱfromȱtheȱlocationȱtableȱinȱanȱorderȱorȱnotice.ȱȱTheȱofficeȱdataȱpropertiesȱare:ȱ
offName,ȱoffCode,ȱoffStreetAddress,ȱoffCityState,ȱoffZip,ȱandȱoffTelNum.ȱȱAsȱ
explainedȱinȱtheȱDataȱPropertiesȱsectionȱearlierȱinȱthisȱchapter,ȱtheȱofficeȱdataȱ
propertiesȱmayȱbeȱpassedȱtheȱofficeȱnumberȱasȱanȱoptionalȱvariable,ȱforȱexample:
[% fetch(name="offName" lc_code="Office7") %]
Ifȱtheȱvariableȱisȱomitted,ȱtheȱofficeȱpropertiesȱwillȱretrieveȱtheȱdataȱforȱtheȱofficeȱ
whoseȱnumberȱisȱpartȱofȱtheȱcaseȱtitle.
08 Jul 2009
Release 4.0.1
8-16
District CM/ECF System Administrator’s Guide
TheȱlocationȱtableȱisȱupdatedȱwithȱtheȱLocationȱTableȱeditorȱ(UtilitiesÆUpdateȱ
SystemȱTablesÆLocationȱTable).
Clerk of Court and Chief Deputy Clerk Names
TheȱnameȱofȱtheȱClerkȱofȱCourtȱandȱChiefȱDeputyȱClerkȱcanȱbeȱincludedȱinȱordersȱandȱ
noticesȱusingȱtheȱctClkNameȱandȱdptyClkNameȱdataȱproperties.ȱȱTheseȱpropertiesȱ
retrieveȱtheȱnamesȱfromȱtheȱClerkȱandȱDeputyȱsiteȱtableȱentries.ȱȱTheȱnameȱandȱ
initialsȱofȱtheȱpersonȱenteringȱtheȱorderȱorȱnoticeȱonȱtheȱdocketȱcanȱbeȱretrievedȱwithȱ
theȱdktClkNameȱandȱdktClkInitsȱdataȱproperties.
Summary of System Tables Used with Forms
Theȱformsȱsoftwareȱusesȱvaluesȱfromȱtheȱsystemȱtablesȱdescribedȱbelow.ȱȱUnlessȱ
otherwiseȱnoted,ȱtheȱvaluesȱinȱtheseȱtablesȱareȱsetȱatȱinstallation.
•
CodesȱTable
TheȱvalueȱsmgȱisȱstoredȱinȱtheȱPrTypeȱcodesȱtableȱentry.ȱȱEachȱcourtȱcreatesȱaȱpersonȱ
recordȱwithȱtheȱtypeȱsmgȱforȱeachȱspecialȱmailingȱgroupȱbyȱusingȱtheȱEditȱPersonȱ
Dataȱutility.
•
DispatchȱTableȱ(events)
TheȱGenerateȱaȱTestȱFormȱFunctionȱisȱcontrolledȱbyȱtheȱdispatchȱdefinitionsȱnamedȱ
FormsTest,ȱwithȱthisȱcontent:
GetCaseForm();
EndScreen();
PreProcessCaseNum('','','','','','','y');
GenTest();
docform('any');
GenTestEnd();
•
document_typeȱTable
Youȱmustȱaddȱtheȱdoc(paper1),ȱdocform,ȱandȱRecipientȱDPFsȱtoȱeventsȱthatȱproduceȱ
forms.ȱȱTheȱBaselineȱDictionaryȱincludesȱeventsȱforȱtheȱsampleȱschedulingȱordersȱandȱ
noticeȱofȱhearing.
•
DPFȱTable
TheȱDPFsȱlistedȱbelowȱareȱstoredȱinȱtheȱdpfȱtable.ȱȱTheȱdoc,ȱdocform,ȱandȱRecipientȱ
DPFsȱareȱenteredȱinȱtheȱdocument_typeȱtable.ȱȱTheȱGenTest,ȱGenTestEnd,ȱandȱ
GetCaseFormȱDPFsȱareȱusedȱinȱtheȱdispatchȱdefinitionȱofȱtheȱGenerateȱaȱTestȱFormȱ
08 Jul 2009
Release 4.0.1
8-17
District CM/ECF System Administrator’s Guide
function.ȱȱTheȱDelayAttachment,ȱprocess_html,ȱandȱAddDocumentDȱDPFsȱareȱusedȱ
internally.
DPF Name
Screen
Repeat
Module
Recipient
100
Recipient.pl
n
docform
0
DocDPF
n
doc
0
DocDPF
n
DelayAttachment
0
DetailDktEntry.pl
n
process_html
0
DoForm.pl
y
AddDocumentD
0
DoForm.pl
n
GenTest
100
DoForm.pl
y
GenTestEnd
100
DoForm.pl
y
GetCaseForm
100
DoForm.pl
y
Eachȱcourtȱcreatesȱentriesȱinȱtheȱformȱtableȱforȱeachȱform.ȱȱFourȱentriesȱareȱprovidedȱ
atȱinstallationȱforȱtheȱsampleȱformsȱandȱtheȱalltags.htmlȱform.ȱȱTheȱformȱIDsȱareȱ
crschedo,ȱcvschedo,ȱhrgntc,ȱandȱalltags.
•
LocationȱTable
Atȱinstallation,ȱanȱentryȱinȱtheȱlocationȱtableȱisȱcreatedȱforȱeachȱofficeȱentryȱfoundȱinȱ
theȱcodesȱtable.ȱȱEachȱcourtȱmustȱupdateȱtheȱlocationȱtableȱwithȱcompleteȱaddressȱ
information.
•
MenuȱTable
Theȱmenuȱtableȱhasȱthreeȱentriesȱforȱforms:ȱtheȱFormȱTableȱeditor,ȱtheȱLocationȱTableȱ
editor,ȱandȱtheȱGenerateȱTestȱFormȱutility.ȱȱȱ
•
program_groupȱTable
PermissionsȱforȱtheȱFormȱTableȱeditor,ȱtheȱLocationȱTableȱeditor,ȱandȱtheȱGenerateȱ
TestȱFormȱutilityȱareȱgrantedȱtoȱtheȱAdministratorȱgroupȱatȱinstallation.ȱȱEachȱcourtȱ
canȱsetȱadditionalȱpermissionsȱforȱtheseȱprograms.
Youȱmayȱcontinueȱtoȱmaintainȱyourȱexistingȱ.jspȱformsȱasȱwellȱasȱdevelopȱnewȱ
templatesȱinȱperl.ȱȱHowever,ȱeachȱindividualȱformȱmustȱbeȱinȱeitherȱjspȱorȱperl,ȱbutȱ
notȱcombined.
08 Jul 2009
Release 4.0.1
8-18
District CM/ECF System Administrator’s Guide
JSP to Perl Forms Conversion
Aȱconversionȱscriptȱhasȱbeenȱprovidedȱtoȱmigrateȱlocallyȱcreatedȱ.JSPȱformsȱtemplatesȱ
toȱtheȱnewȱPerlȱtemplates.ȱTheȱscript,ȱcalledȱjsp2tt.pl,ȱisȱlocatedȱinȱtheȱ
/opt/DCECF/database/ȱserver/serverȱdirectory,ȱwhereȱdatabaseȱisȱlive,ȱtest,ȱorȱtrain.ȱ
To run the jsp2tt.pl script
1. Changeȱdirectory:
cd /opt/DCECF/{ test | train | live }/server/server
2. Runȱtheȱfollowingȱcommand,ȱsubstitutingȱtheȱnameȱofȱtheȱ.JSPȱformȱtemplateȱyouȱ
wantȱtoȱconvertȱforȱinput_file.ȱSubstituteȱtheȱnameȱofȱtheȱnewȱPerlȱtemplateȱtoȱbeȱ
createdȱforȱoutput_file.
jsp2tt.pl input_file output_file
Example
jsp2tt.pl hrgntc.jsp hrgntc.html
Ifȱyouȱareȱconvertingȱmanuallyȱinȱplaceȱofȱusingȱtheȱjsp2tt.plȱconversionȱscript,ȱtheȱ
followingȱlistsȱaȱquickȱcheatsheetȱofȱJSPȱcommandsȱandȱtheirȱcorrespondingȱPerlȱ
templateȱToolkitȱstatements.
include a file:
JSP: <%@ include file="letterhead.jspf" %>
Perl: [% INCLUDE "../templates/forms/letterhead.html" %]
data properties
JSP:
Perl: [% fetch(name="offName") %]
date format
JSP:
Perl: [% fetch(name="dateFormat"
value="F2") %]
comments
JSP: <%-- Foo! --%>
Perl: [%# Foo! %]
directory
JSP: /opt/DCECF/database/web/cmecf/web
/opt/DCECF/database/web/templates/forms
conditional
logic
<% if (!forms.getHrgDate("jytrl").equals("")) {
%>
TRIAL DATE AND SETTING: The
jury trial in this matter...
<% } %>
Perl:
[% IF (fetch(name="csType") == 'cv') %]
TRIAL DATE AND SETTING: The
jury trial in this matter…
[% END %]
ForȱmoreȱinformationȱaboutȱPerl’sȱTemplateȱToolkit,ȱȱseeȱtheȱwebsite:
http://template-toolkit.org/
08 Jul 2009
Release 4.0.1
8-19
District CM/ECF System Administrator’s Guide
Creating Your Own Data Collectors
Toȱcreateȱyourȱownȱdataȱcollectors,ȱeditȱForms.pmȱinȱbothȱofȱtheȱfollowingȱ
directories:
•
/opt/DCECF/{trainȱ|ȱtestȱ|ȱliveȱ}/web/support/
•
/opt/DCECF/{trainȱ|ȱtestȱ|ȱliveȱ}/server/support/ȱ
Followȱtheȱthreeȱ(3)ȱstepsȱbelowȱtoȱcreateȱyourȱownȱdataȱcollectors:
1. Addȱyourȱcollectorȱnameȱtoȱtheȱfetch()ȱsubroutineȱinȱForms.pm.ȱForms.pmȱ
containsȱaȱhashȱnamedȱ%subsȱwhichȱcontainsȱtheȱnamesȱofȱallȱofȱtheȱdataȱ
collectors.ȱ
TheȱfollowingȱexampleȱtellsȱtheȱFormsȱprocessȱtoȱtriggerȱtheȱ&ctNameȱsubroutineȱ
whenȱtheȱdataȱcollectorȱctNameȱisȱencounteredȱinȱaȱtemplate:
"ctName" => \&ctName
2. InȱForms.pm,ȱcreateȱaȱsubroutineȱthatȱretrievesȱtheȱdataȱyouȱwant.
Example
sub ctName {
my $results = SQL::unload("si_value", "site", "where
si_code='CourtName'");
chomp($results);
$results;
}
3. Putȱyourȱnewȱdataȱcollectorȱintoȱaȱtemplateȱtoȱtest.
Example
[alltags.html]
the court name is: [% fetch(name="ctName") %]
4. Afterȱtestingȱyourȱchanges,ȱmakeȱaȱbackupȱcopyȱofȱForms.pmȱbyȱcopyingȱitȱtoȱaȱ
secureȱdirectoryȱthatȱisȱnotȱaffectedȱbyȱtheȱinstallationȱprocessȱȬȬȱthatȱis,ȱdoȱnotȱuseȱ
aȱdirectoryȱbelowȱ/opt/DCECF.
08 Jul 2009
Release 4.0.1
8-20
District CM/ECF System Administrator’s Guide
Changing the Default Date Format
Whenȱaȱpropertyȱretrievesȱaȱdate,ȱtheȱdateȱisȱdisplayedȱinȱmm/dd/yyȱformatȱbyȱ
default.ȱȱTheȱdateFormatȱpropertyȱcanȱbeȱusedȱinȱtheȱformȱtemplateȱtoȱspecifyȱaȱ
differentȱdateȱformat.ȱȱThisȱpropertyȱsetsȱaȱnewȱdefaultȱformatȱforȱtheȱremainingȱdatesȱ
inȱtheȱform.ȱȱTheȱcourtȱcanȱuseȱtheȱdateFormatȱpropertyȱwithȱmoreȱthanȱoneȱdateȱorȱ
withȱallȱdates.
TheȱdateFormatȱpropertyȱisȱenteredȱasȱfollows:
[% fetch(name="dateFormat" value="Fn") %]
whereȱFnȱisȱoneȱofȱtheȱvaluesȱshownȱbelow.
Value
Example Date Format
th
F1
The 8 of June 2006
F2
June 8, 2006
F3
Jun. 8, 2006
F4
Thursday, June 8, 2006
F5
Thursday, 6/8/06
F6
6/8/06
F7
the 8th of June 2006
Forȱexample,ȱtoȱchangeȱtheȱdateȱformatȱinȱtheȱschedulingȱorderȱforȱtheȱdateȱofȱtheȱ
pretrialȱconferenceȱtoȱJuneȱ8,ȱ2006,ȱtheȱfollowingȱwouldȱbeȱenteredȱinȱtheȱtemplateȱ
file:
[% fetch(name="dateFormat" value="F2") %]
[% fetch(name="hrgDate" sd_type="prtrlconf") %]
08 Jul 2009
Release 4.0.1
8-21
CHAPTER
9
9
Forms (Legacy)
In This Chapter
•
Overview
•
FormsȱTemplatesȱ
•
TagȱLibraryȱandȱCustomȱTags
•
CreatingȱNewȱPropertiesȱ
•
ConditionalȱLogic
District CM/ECF System Administrator’s Guide
Overview
TheȱDistrictȱCM/ECFȱformsȱsoftwareȱisȱwrittenȱinȱtheȱJavaȱprogrammingȱlanguage.ȱ
Softwareȱusedȱinȱformsȱproductionȱisȱlistedȱbelow:
JavaȱDevelopmentȱToolȱKitȱ(JDK)ȱversionȱ1.4.2_03ȱȬȱtheȱsetȱofȱJavaȱdevelopmentȱ
tools.ȱItȱisȱusedȱtoȱcompileȱJavaȱapplicationsȱandȱapplets.ȱTheȱsoftwareȱisȱlocatedȱinȱ
/usr/java/java.ȱȱ
JavaȱServerȱPagesȱ(JSP)ȱȬȱCM/ECFȱdistrictȱformȱtemplatesȱareȱJavaȱServerȱPagesȱ
whichȱendȱinȱtheȱsuffixȱ.jsp.ȱȱTheȱtemplatesȱareȱaȱcombinationȱofȱjavaȱprogrammingȱ
languageȱcodeȱwithȱHTML.ȱȱTheȱtemplatesȱandȱassociatedȱfilesȱareȱlocatedȱinȱ
/opt/DCECF/[liveȱ|ȱtestȱ|ȱtrain]/web/cmecf/webapps/cmecf.
JavaȱsourceȱcodeȱandȱcompiledȱclassȱfilesȱȬȱTheȱsourceȱcodeȱ(.javaȱfiles)ȱareȱlocatedȱinȱ
/opt/DCECF/[liveȱ|ȱtestȱ|ȱtrain]/web/cmecf/webapps/cmecf/src/jspȱandȱtheȱcompiledȱ
versionsȱ(.classȱfiles)ȱareȱlocatedȱinȱ/opt/DCECF/[liveȱ|ȱtestȱ|ȱtrain]/ȱweb/ȱcmecf/ȱ
webapps/cmecf/WEBȬINF/classes/jsp.
Tomcatȱversionȱ5.0.19ȱȬȱWebȱserverȱwhichȱworksȱinȱconjunctionȱwithȱApacheȱtoȱ
processȱ.jspȱfiles.ȱTheȱsoftwareȱisȱlocatedȱinȱ/opt/tomcat.
HTMLDOCȱȱversionȱ1.8.23ȱȬȱconvertsȱHTMLȱdocumentsȱtoȱPortableȱDocumentȱ
Formatȱ(PDF).ȱTheȱsoftwareȱisȱlocatedȱinȱ/opt/htmldoc.ȱ
Forms Templates
DistrictȱCM/ECFȱprovidesȱsampleȱtemplatesȱforȱcriminalȱandȱcivilȱschedulingȱorders.ȱ
IfȱtheȱapplicationȱadministratorȱknowsȱHTML,ȱanyȱtextȱeditorȱcanȱbeȱusedȱtoȱmodifyȱ
theseȱtoȱsuitȱlocalȱneeds,ȱorȱtheyȱcanȱbeȱcopiedȱtoȱcreateȱnewȱtemplates.ȱȱTheȱtableȱ
belowȱshowsȱtheȱlistȱofȱtemplatesȱincluded:
Form
Template filename
cvschedo
Scheduling Order
cvschedo.jsp
crschedo
Scheduling Order
crschedo.jsp
hrgntc
Notice of Hearing
hrgntc.jsp
alltags
08 Jul 2009
Display name
Test All Tags
alltags.jsp
Release 4.0.1
9-2
District CM/ECF System Administrator’s Guide
AȱformȱtemplateȱconsistsȱofȱHTMLȱstatementsȱthatȱformatȱtheȱformȱandȱprovideȱ
standardȱtextȱcomponents.ȱWithinȱtheseȱstatementsȱareȱtags,ȱwhichȱareȱspecificationsȱ
forȱdataȱelements,ȱcalledȱproperties,ȱtoȱbeȱincludedȱinȱtheȱform.ȱȱ
NOTE Form templates are stored in the directory /opt/DCECF/[live | test |
train]/web/cmecf/webapps/cmecf.
Thereȱareȱtwoȱtypesȱofȱfilesȱinȱthisȱdirectory:ȱȱ.jspȱandȱ.jspf.ȱȱTheȱ.jspȱextensionȱrefersȱ
toȱJavaȱServerȱPages.ȱTheȱ.jspfȱextensionȱrefersȱtoȱJSPȱfragmentsȱwhichȱareȱfilesȱ
typicallyȱincludedȱwithinȱotherȱJSPȱtemplates.ȱ
Template structure
Eachȱtemplateȱfileȱstartsȱwithȱtheȱfollowingȱstatement:
<%@ include file=”begin.jsp” %>
andȱendsȱwithȱtheȱfollowingȱstatement:
<%@ include file=”end.jsp” %>
Theseȱstatementsȱprovideȱaȱcommonȱlocationȱforȱinitializationȱandȱcleanupȱroutines.ȱ
Theyȱsetȱupȱtheȱcustomȱtagȱlibrary,ȱsetȱtheȱpageȱcontext,ȱandȱprovideȱJavaȬrelatedȱ
errorsȱwithinȱHTMLȱcommentsȱsoȱtheyȱcanȱbeȱinterpretedȱbyȱtheȱcallingȱscript.
Tag Library and Custom Tags
Theȱtagȱlibraryȱdescriptorȱecf.tldȱcontainsȱallȱtheȱcustomȱtagsȱneededȱforȱdistrictȱ
formsȱgeneration.ȱTheȱfileȱisȱlocatedȱin:
/opt/DCECF/[live | test | train]/web/cmecf/webapps/cmecf/WEB-INF/tlds
ThisȱfileȱprovidesȱaȱmappingȱofȱJSPȱsyntaxȱtoȱtriggerȱtheȱappropriateȱsoftware.ȱȱItȱ
directsȱallȱcustomȱtagsȱtoȱaȱclassȱcalledȱ“EcfTag”.ȱȱThisȱclass,ȱinȱturn,ȱreferencesȱaȱ
Formsȱobject,ȱwhichȱhandlesȱtheȱactualȱsoftwareȱretrievalȱforȱeachȱdefinedȱpropertyȱ
name.
AnȱexampleȱofȱaȱcustomȱtagȱcanȱbeȱfoundȱinȱtheȱfileȱEcfTag.java.ȱTheȱexample,ȱshownȱ
below,ȱprintsȱ“etȱal.”ȱforȱcasesȱwithȱmultipleȱplaintiffs:
else if (name.equal(“plaEtAl”))
{propertyText = f.getPlaEtAl (); }
public String getPlaEtAl () {
if(cs == null) return INIT_ERROR;
return setData(“plaEtAl”, cs.getPlaEtaL ());
}
08 Jul 2009
Release 4.0.1
9-3
District CM/ECF System Administrator’s Guide
Creating New Properties
Youȱcanȱdefineȱpropertiesȱforȱanyȱdataȱinȱtheȱdatabase.ȱToȱaddȱaȱnewȱpropertyȱforȱuseȱ
inȱformsȱgeneration,ȱwriteȱaȱnewȱ“public”ȱfunctionȱinȱtheȱfileȱForms.javaȱthatȱreturnsȱ
aȱString.ȱȱTheȱfileȱisȱlocatedȱin:
/opt/DCECF/[live | test | train]/web/cmecf/webapps/cmecf/WEB-INF/classes/jsp
Theȱnameȱofȱtheȱfunctionȱshouldȱbeȱtheȱsameȱasȱtheȱpropertyȱname,ȱproceededȱbyȱtheȱ
prefixȱ“get”ȱandȱtheȱfirstȱletterȱofȱtheȱpropertyȱnameȱcapitalized:
public String getPartyLast ()
Belowȱisȱaȱsampleȱpropertyȱfunctionȱwhichȱreturnsȱtheȱlastȱname:
public String getPartyLast()
{
String sql = “ SELECT py_last_name “ +
“ FROM party “ +
“ WHERE py_caseid = “ + caseId +
“ AND py_aliaseq = 0 “;
String value = runSQL (sql) ;
return setData (“partyLast”, value);
}
runSQL
AȱpropertyȱfunctionȱcanȱincludeȱaȱcallȱtoȱrunSQL,ȱwhichȱexecutesȱtheȱSQLȱstatementȱ
passedȱtoȱitȱandȱreturnsȱtheȱresultȱasȱaȱstring:
String value = runSQL(sql);
Ifȱaȱqueryȱreturnsȱmultipleȱfields,ȱtheyȱareȱseparatedȱbyȱaȱsingleȱspace.ȱToȱspecifyȱaȱ
differentȱfieldȱseparator,ȱincludeȱaȱsecondȱargumentȱtoȱrunSQL:ȱ
(sql, “:”)
IfȱaȱSQLȱqueryȱreturnsȱmultipleȱrecords,ȱtheyȱareȱseparatedȱbyȱHTMLȱlineȱbreaksȱ
(Ȉ Ȉ).ȱȱToȱlimitȱtheȱnumberȱofȱrowsȱreturned,ȱspecifyȱtheȱmaximumȱnumberȱasȱtheȱ
thirdȱparameterȱtoȱrunSQL:
runSQL(sql, “:”, 5)
NOTE Null fields are not included in the string returned by runSQL; if all selected fields
are null, the empty string is returned.
Theȱfollowingȱvariablesȱareȱavailableȱatȱtheȱtimeȱthatȱtheȱpropertyȇsȱfunctionȱisȱcalled:
08 Jul 2009
Release 4.0.1
9-4
District CM/ECF System Administrator’s Guide
— caseIdȱȬȱtheȱIDȱofȱtheȱcurrentȱcaseȱ(cs_caseidȱfromȱtheȱcaseȱtable).
— deSeqnoȱȬȱtheȱvalueȱofȱde_seqnoȱforȱtheȱcurrentȱ(latest)ȱdocketȱentryȱrecord.
— pridȱȬȱtheȱpersonȱIDȱforȱtheȱcurrentȱuser.
— judgePridȱȬȱtheȱpersonȱIDȱforȱtheȱjudgeȱthatȱwasȱselectedȱduringȱtheȱcurrentȱ
docketȱentry.
Theȱnewȱpropertyȱcanȱthenȱbeȱreferencedȱinȱaȱtemplateȱas:
Afterȱaddingȱaȱcustomȱproperty,ȱrecompileȱForms.javaȱandȱrestartȱTomcat:
1. Changeȱtoȱtheȱclassesȱdirectoryȱforȱtheȱapplication:
cd /opt/DCECF/[live | test | train]/web/cmecf/webapps/cmecf/WEBINF/classes/
2. RecompileȱForms.java:
javac jsp/Forms.java
3. StopȱandȱrestartȱTomcat:
service ECF-tomcat stop
service ECF-tomcat start
Conditional Logic
Thereȱmayȱbeȱaȱneedȱtoȱincludeȱconditionalȱlogicȱinȱaȱtemplate,ȱforȱexampleȱtoȱtestȱ
whetherȱaȱjuryȱtrialȱhasȱbeenȱset,ȱasȱshownȱinȱtheȱexampleȱbelow:
<% if (!forms.getHrgDate(“jytrl”).equals("")) { %>
TRIAL DATE AND SETTING: The jury trial in this matter shall
commence on
at
at the United States District Court,
,
in
.
<% } %>
Ifȱthereȱisȱnoȱjuryȱtrialȱsetȱforȱtheȱcurrentȱdocketȱevent,ȱnothingȱwillȱbeȱprinted.
08 Jul 2009
Release 4.0.1
9-5
CHAPTER
10
10
Utilities
In This Chapter
•
check_extents
•
cleanȱ
•
deltmp.pl
•
dmȱ
•
hogs
•
LargeDocumentsȱ
•
lost
•
oncheckȬcIȱ
•
setlockmodeȱ
•
showlocksȱ
•
UpdateStats
•
wait_for_informix
•
whoson.pl
•
wrapperȱ
District CM/ECF System Administrator’s Guide
CM/ECF Utilities
AȱnumberȱofȱCM/ECFȱutilitiesȱareȱsetȱtoȱrunȱfromȱcronȱwhenȱtheȱapplicationȱisȱ
installed,ȱasȱlistedȱearlierȱinȱthisȱdocument.
Theȱfollowingȱtableȱlistsȱotherȱutilitiesȱthatȱareȱeitherȱusedȱbyȱthoseȱcronȱjobs,ȱorȱmayȱ
beȱusefulȱtoȱyouȱonȱoccasion:
Utility
Function
check_extents
Lists extent information for the tables in an Informix
database.
clean
Removes .PDF files from /tmp if they have not been
accessed in approximately 22 minutes; if /tmp is more
than 20% full, removes other files that haven’t been
accessed in approximately 1 hour.
deltmp
Deletes files from specified /tmp subdirectories.
dm
Produces various disk usage reports.
hogs
Helps identify SQL statements that are inefficient
(exceed a specified number of database reads during
a given interval).
LargeDocuments
Identifies PDF documents (in the database or file system) which exceed a specified size.
lost
Identifies Perl programs that have been running
longer than the specified time. It can be used to find
and kill “lost” processes.
oncheck-cI
Checks all of the indexes in an Informix instance for
corruption and attempts to repair if corruption is found.
setlockmode
Sets the lock mode of all tables in a given database to
row-level locking.
showlocks
Produces a list of all locks currently active on the
specified database.
UpdateStats
Updates Informix statistical information for all tables
and indexes within an Informix instance.
wrapper
Executes the program specified as the third parameter after setting the environment variables INFORMIXDIR, INFORMIXSERVER, and PATH. Used to
run the utilities in cron.
Moreȱdetailsȱaboutȱsomeȱofȱtheseȱutilitiesȱareȱgivenȱinȱtheȱfollowingȱpages.
08 Jul 2009
Release 4.0.1
10-2
District CM/ECF System Administrator’s Guide
check_extents
ListsȱextentȱinformationȱforȱtheȱtablesȱinȱanȱInformixȱdatabase.ȱ
Usage:
check_extents -m MaxNumSafeExtents -d databasename -e emailAddresses -I
InformixServer
NOTE All parameters are optional.
Parameters
Description
-d databasename
Specifies a single database to be checked. Otherwise, all databases defined
within the current Informix instance are checked.
-e email address(es)
All output (if any) to be mailed to the email address(es) specified.
-l
Specifies which INFORMIXSERVER to use; if not specified, the default INFORMIXSERVER will be used.
-m MaxNumSafeExtents
Specifies that check_extents should only print out information for those tables that
have more than MaxNumSafeExtents; if no table exceeds the limit, no output will
be produced. Without this option, check_extents lists the extents for each table.
-t
Total extent information to be presented for each database (total space allocated
and used in kbytes).
check_extents -m 10 courtID_live
Warning large number of extents found for courtID_live:document
Table Name: document
First Extent Size: 26564.0
Next Extent Size: 5312.0
Total Space Allocated: 416996.0
Total Space Used: 413280.0
Number of Extents: 27.0
Number of rows: 25358.0
clean
Removesȱ.PDFȱfilesȱfromȱ/tmpȱifȱtheyȱhaveȱnotȱbeenȱaccessedȱinȱapproximatelyȱ22ȱ
minutes;ȱifȱ/tmpȱisȱmoreȱthanȱ20%ȱfull,ȱremovesȱotherȱfilesȱthatȱhaven’tȱbeenȱaccessedȱ
inȱapproximatelyȱ1ȱhour.ȱȱSendsȱanȱemailȱmessageȱonlyȱifȱanyȱfilesȱareȱremoved.ȱRunsȱ
fromȱcronȱeveryȱ30ȱminutes.ȱȱAȱsecondȱnightlyȱcronȱjobȱrunsȱ“clean”ȱwithȱtheȱ“0”ȱ
argumentȱtoȱremoveȱallȱoldȱfilesȱfromȱ/tmp.ȱȱ
08 Jul 2009
Release 4.0.1
10-3
District CM/ECF System Administrator’s Guide
deltmp.pl
Deletesȱfilesȱfromȱ/tmpȱsudirectoriesȱthatȱhaveȱnotȱbeenȱaccessedȱforȱ14ȱdaysȱ(theȱ
cleanȱutility,ȱdescribedȱabove,ȱdeletesȱfilesȱinȱ/tmpȱitself).ȱTheȱsudirectoriesȱtoȱbeȱ
processedȱareȱlistedȱinȱtheȱfileȱ/var/log/ecf/tmpsublist Changeȱthisȱlistȱasȱ
needed.Youȱcanȱoverrideȱtheȱdefaultȱofȱ14ȱdaysȱbyȱspecifyingȱtheȱnumberȱofȱdaysȱasȱaȱ
parameter:
deltmp.pl days
Theȱnumberȱofȱdaysȱwillȱapplyȱtoȱallȱlistedȱdirectories.ȱIfȱtheȱfilesȱinȱsomeȱdirectoriesȱ
shouldȱbeȱkeptȱlongerȱorȱremovedȱsooner,ȱyouȱcanȱoverrideȱtheȱdaysȱparameterȱ
individually,ȱasȱshownȱforȱformsGenȱinȱthisȱsampleȱtmpsublist:
/tmp/formsGen,5
Accessȱtimeȱisȱusedȱtoȱdetermineȱtheȱageȱofȱtheȱfilesȱ(reflectsȱread/writeȱaccessȱasȱwellȱ
asȱcopy/move).ȱȱIfȱyouȱinsteadȱwantȱtoȱuseȱtheȱlastȱtimeȱmodified,ȱchangeȱtheȱ“Ȭatime”ȱ
valueȱinȱtheȱscriptȱtoȱȈȬmtimeȈ.
dm
Programȱthatȱproducesȱvariousȱdiskȱusageȱreports.ȱSomeȱusefulȱoptions:ȱȱȱȱȱȱ
-d
Detail report.
-m
Disk layout mappings.
-s
Print summary data only.
dm –s
Disk Utilization Report
Wednesday 07-Jun-2000 @ 14:26:17
SERVER = casd
INFORMIXSERVER = courtID_shm
INFORMIXDIR = /opt/informix/current
ID Space Name
Size
Free
Free Device
1 rootdbs
1000000 928651 ( 7.13%)
Free Device
2 livedb
5000000 3597357 (28.05%)
Free Device
3 tempdb
100000
99097 ( 0.90%)
Theȱrighthandȱcolumnȱshowsȱtheȱpercentȱofȱspaceȱused.ȱIfȱtheȱspaceȱusedȱisȱ90%ȱorȱ
more,ȱyouȱmustȱaddȱspace.ȱSeeȱ“Monitoringȱspace”ȱinȱthisȱdocumentȱforȱmoreȱ
information.
08 Jul 2009
Release 4.0.1
10-4
District CM/ECF System Administrator’s Guide
dm -d
Disk Utilization Report
Wednesday 07-Jun-2000 @ 14:30:51
SERVER = casd
INFORMIXSERVER = courtID_shm
INFORMIXDIR = /opt/informix/current
ID Space Name Chunk Offset Size
Free
Device
1 rootdbs
1
0
1000000 928651 /data/chunks1/courtID/courtID_root
Total:
1000000 928651
ID Space Name Chunk Offset Size
Free
Device
2 livedb
2
0
1000000 392961 /data/chunks1/courtID/courtID_db1
3
0
1000000 204405 /data/chunks1/courtID/courtID_db2
4
0
1000000 999997 /data/chunks1/courtID/courtID_db3
5
0
1000000 999997 /data/chunks1/courtID/courtID_db4
6
0
1000000 999997 /data/chunks1/courtID/courtID_db5
Total:
5000000 3597357
ID Space Name Chunk Offset Size
Free Device
3
tempdb
7
0
100000
99097 /data/chunks1/courtID/temp
Total:
100000
99097
hogs
ListsȱanyȱprocessȱrunningȱanȱSQLȱstatementȱthatȱexceedsȱaȱspecifiedȱnumberȱofȱ
databaseȱreadsȱduringȱaȱgivenȱinterval.ȱȱThisȱmayȱhelpȱidentifyȱSQLȱstatementsȱthatȱ
areȱinefficient.ȱȱOptionsȱareȱlistedȱinȱtheȱfollowingȱtable.
Parameter
Description
-f
Specifies that completed queries should be included (data on certain type of queries
remains available in Informix); otherwise, only active queries are checked.
-h
Displays help.
-m
Specifies the number of reads which must be exceeded for a process to be reported. If not
specified, a value of 1000 is used.
-n count
Specifies the number of times to repeat the check.
-t seconds
Specifies the interval between checks. If not specified, a value of 60 is used.
Theȱexampleȱshownȱbelowȱusesȱparametersȱsetȱunrealisticallyȱlowȱforȱpurposesȱofȱ
illustrationȱ(aȱmoreȱrealisticȱrunȱwouldȱbeȱhogsȱȬtȱ20ȱȬmȱ5000ȱȬnȱ10ȱ–f ).
hogs -t 1 -m 50 -n 2 –f
hogs started at Tue Nov 27 13:37:15 CST 2001
Looking for Processes that accumulate more than 50 reads in a 1 second period.
Will repeat 2 times.
SessionId: 31182,Pid: 6764, User: nobody, Time: 0.4, Db reads: 1475
DbName: courtID_live, Command: /gov/ecf/bin/perl /opt/DCECF/live/web/cgibin/DktActivityRpt.pl 35
Query: select unique cs_caseid, cs_case_number, cs_sort_case_numb,
cs_term_digit, cs_type, cs_office, de_doc_id, de_document_num,
de_date_filed, date(de_date_enter), de_date_enter, de_who_entered,
08 Jul 2009
Release 4.0.1
10-5
District CM/ECF System Administrator’s Guide
p1.pr_first_name, p1.pr_last_name, de_seqno, p2.pr_first_name,
p2.pr_last_name, dp_type, dt_text, py_last_name, cs_short_title,
cs_date_term from dktentry, case, document_type, dkttext, outer person p1,
outer person p2, dktpart, outer party where de_caseid = cs_caseid and
de_date_enter >= "2001-11-19 00:00:00" and de_date_enter <= "2001-11-19
23:59:59" and dp_caseid = cs_caseid and de_who_entered = p1.pr_prid and
cs_judprid_ptr = p2.pr_prid and de_seqno = dp_deseqno_ptr and dp_sub_type !=
"rel" and cs_judprid_ptr in (1015) and py_caseid = cs_caseid and py_end_date
is null and py_role = "tr" and py_alias_type is null and cs_office in ("3")
and dt_caseid = cs_caseid and de_seqno = dt_deseqnoptr and dt_seqno in
(select min(dt_seqno) from dkttext where dt_caseid = cs_caseid and de_seqno
= dt_deseqnoptr) and do_type = dp_type and do_sub_type = dp_sub_type order
by cs_sort_case_numb, de_document_num
hogs pass completed at Tue Nov 27 13:37:18 CST 2001
SessionId: 31182,Pid: 6764, User: nobody, Time: 0.3, Db reads: 1702
DbName: courtID_live, Command: /gov/ecf/bin/perl /opt/DCECF/live/web/cgibin/DktActivityRpt.pl 35
Query: select unique cs_caseid, cs_case_number, cs_sort_case_numb,
cs_term_digit, cs_type, cs_office, de_doc_id, de_document_num,
de_date_filed, date(de_date_enter), de_date_enter, de_who_entered,
p1.pr_first_name, p1.pr_last_name, de_seqno, p2.pr_first_name,
p2.pr_last_name, dp_type, dt_text, py_last_name, cs_short_title,
cs_date_term from dktentry, case, document_type, dkttext, outer person p1,
outer person p2, dktpart, outer party where de_caseid = cs_caseid and
de_date_enter >= "2001-11-19 00:00:00" and de_date_enter <= "2001-11-19
23:59:59" and dp_caseid = cs_caseid and de_who_entered = p1.pr_prid and
cs_judprid_ptr = p2.pr_prid and de_seqno = dp_deseqno_ptr and dp_sub_type !=
"rel" and cs_judprid_ptr in (1015) and py_caseid = cs_caseid and py_end_date
is null and py_role = "tr" and py_alias_type is null and cs_office in ("3")
and dt_caseid = cs_caseid and de_seqno = dt_deseqnoptr and dt_seqno in
(select min(dt_seqno) from dkttext where dt_caseid = cs_caseid and de_seqno
= dt_deseqnoptr) and do_type = dp_type and do_sub_type = dp_sub_type order
by cs_sort_case_numb, de_document_num
hogs pass completed at Tue Nov 27 13:37:20 CST 2001
TheȱsampleȱoutputȱshowsȱthatȱtheȱprogramȱDktActivityRpt.plȱisȱrunningȱaȱqueryȱthatȱ
isȱtakingȱaȱlongȱtimeȱtoȱcomplete.ȱȱToȱdiagnoseȱtheȱproblemȱwithȱaȱquery,ȱfirstȱlookȱatȱ
theȱselectionȱcriteria:ȱ
where de_caseid = cs_caseid and de_date_enter >= "2001-11-19 00:00:00" and
de_date_enter <= "2001-11-19 23:59:59" and dp_caseid = cs_caseid and
de_who_entered = p1.pr_prid and cs_judprid_ptr = p2.pr_prid and de_seqno =
dp_deseqno_ptr and dp_sub_type != "rel" and cs_judprid_ptr in (1015) and
py_caseid = cs_caseid and py_end_date is null and py_role = "tr" and
py_alias_type is null and cs_office in ("3") and dt_caseid = cs_caseid and
de_seqno = dt_deseqnoptr and dt_seqno in (select min(dt_seqno) from dkttext
where dt_caseid = cs_caseid and de_seqno = dt_deseqnoptr) and do_type =
dp_type and do_sub_type = dp_sub_type
Ifȱtheȱselectionȱcriteriaȱareȱnotȱreasonableȱ(e.g.,ȱallȱcasesȱinȱtheȱdatabaseȱareȱbeingȱ
selected),ȱthenȱsomeȱuserȱeducationȱmayȱbeȱneeded.ȱInȱthisȱcase,ȱtheȱselectionȱcriteriaȱ
lookȱreasonable:ȱtheȱuserȱhasȱspecifiedȱaȱoneȬdayȱdateȱrange,ȱaȱparticularȱjudge,ȱandȱ
anȱoffice.ȱYouȱcanȱnextȱtryȱrunningȱtheȱsameȱqueryȱinȱdbaccess,ȱwithȱqueryȱprofilingȱ
enabledȱ(setȱ“explain”ȱon),ȱtoȱseeȱhowȱInformixȱprocessesȱitȱ–ȱtryȱthisȱONLYȱifȱtheȱ
08 Jul 2009
Release 4.0.1
10-6
District CM/ECF System Administrator’s Guide
SQLȱdoesn’tȱupdateȱtheȱdatabase.ȱ.ȱȱPleaseȱconsultȱInformixȱdocumentationȱforȱtheȱ
locationȱandȱtheȱcontentȱofȱtheȱoutputȱfile.ȱLookȱforȱtheȱuseȱofȱanȱindex.ȱInformixȱmayȱ
notȱbeȱusingȱoneȱthatȱexists,ȱifȱUpdateStatisticsȱhasȱnotȱrunȱsuccessfully;ȱanȱindexȱmayȱ
beȱmissingȱfromȱtheȱdatabase;ȱorȱaȱnewȱindexȱmayȱbeȱneededȱtoȱspeedȱupȱtheȱquery.ȱȱ
Inȱsomeȱcases,ȱtheȱqueryȱusedȱbyȱtheȱapplicationȱmayȱneedȱtoȱbeȱmodifiedȱ(aȱ
ModificationȱRequestȱwouldȱbeȱnecessary).
Thisȱprogramȱcanȱmissȱprocessesȱthatȱhaveȱfinishedȱrunningȱbeforeȱtheȱsecondȱcheckȱ
isȱmade,ȱevenȱifȱtheyȱhaveȱperformedȱmoreȱthanȱtheȱnumberȱofȱreadsȱspecifiedȱbyȱ“Ȭ
m”.ȱȱTheȱnumberȱofȱprocessesȱmissedȱisȱreducedȱifȱtheȱ–fȱoptionȱisȱspecified.
ThisȱprogramȱcanȱmistakenlyȱreportȱaȱprocessȱasȱrunningȱaȱresourceȬintensiveȱSQLȱ
whenȱitȱisȱactuallyȱrunningȱtheȱsameȱSQLȱstatementȱmoreȱthanȱonce.ȱȱȱThisȱisȱcommonȱ
forȱsiteȱtableȱaccess,ȱwhichȱisȱfrequentȱandȱbrief.ȱ
LargeDocuments
IdentifiesȱPDFȱdocumentsȱ(inȱtheȱdatabaseȱorȱfileȱsystem)ȱwhichȱexceedȱaȱspecifiedȱ
size.ȱȱOptionsȱareȱlistedȱinȱtheȱfollowingȱtable.
Parameter
Description
-c supportdir
Specifies the full path of the CM/ECF support directory (e.g., /opt/DCECF/live/server/support).
-d database
Specifies the name of the database to check.
-f filename
Specifies the full path of a file in which reported documents will be listed.
-h
Displays help.
-i informixsvr
Specifies the Informix instance (INFORMIXSERVER).
-k
Does not report on documents previously identified as large (listed in the file specified by
the –f option, or in dbname-large-docs.list, if –f is not used). Newly reported documents will
be added to this file.
-m
Instead of being displayed, output will be emailed to the specified Linux account.
-p pagesize
Specifies the page size (in bytes) to which each document should be compared. The document will be reported if its average page size exceeds this number.
-s docsize
Specifies the document size in bytes to which each document should be compared. The
document will be reported if its total size exceeds this number.
NoteȱthatȱtheȱCM/ECFȱapplicationȱhasȱtheȱcapabilityȱofȱcheckingȱtheȱsizeȱofȱaȱPDFȱ
documentȱbeingȱuploadedȱagainstȱaȱcourtȬdefinedȱlimit;ȱtheȱfilingȱcanȱbeȱrejectedȱifȱitȱ
exceedsȱthatȱsize.ȱȱSeeȱtheȱCodesȱTableȱentryȱ“PDFdoc”ȱinȱtheȱCM/ECFȱApplicationȱ
Administrator’sȱGuide.
08 Jul 2009
Release 4.0.1
10-7
District CM/ECF System Administrator’s Guide
lost
IdentifiesȱPerlȱprogramsȱthatȱhaveȱbeenȱrunningȱlongerȱthanȱtheȱspecifiedȱtime.ȱItȱcanȱ
beȱusedȱtoȱfindȱandȱkillȱ“lost”ȱprocesses.ȱOptionsȱareȱlistedȱbelow.
Parameter
Description
-a
Look at all processes (including OutServ). This option bypasses the filter that includes only
perl programs.
-h
Displays help.
-t seconds
Specifies the running time in seconds which must be exceeded for a process to be
reported.
-m address
Output will be emailed to the specified email address, instead of being displayed.
-q
Only produce output for those processes that have informix connections and sql statements
associated with the process.
Ifȱtheȱuserȱisȱroot,ȱtheȱoptionsȱbelowȱapplyȱtoȱallȱprocessesȱwhichȱexceedȱtheȱrunȱtimeȱ
givenȱbyȱtheȱ–tȱparameter;ȱotherwise,ȱtheyȱapplyȱonlyȱtoȱprocessesȱownedȱbyȱtheȱuser.
Parameter
Description
-f filename
Specifies the full path of a file listing programs that may be automatically killed if they are
reported; the –k option must also be specified.
-k
Kill any reported process in the -f list.
-s
Print a stack trace of each reported program.
Theȱcommandȱbelowȱwouldȱlookȱforȱanyȱprocessesȱthatȱhaveȱexistedȱforȱmoreȱthatȱ
120ȱseconds,ȱandȱdisplayȱaȱstackȱdumpȱforȱanyȱprocessesȱfound.
lost -t 120
08 Jul 2009
-s
Release 4.0.1
10-8
District CM/ECF System Administrator’s Guide
Theȱoutputȱwouldȱbeȱsimilarȱtoȱthis:
Looking for lost perl processes that have existed for more than 120 seconds
Pid = 870, User = root, Run Time = 35961 seconds
Processor Time = 0:02
Command = /gov/ecf/bin/perl /home/sirotta/src/isup/isup
870:
/gov/ecf/bin/perl /home/sirotta/src/isup/isup
dfae4918 read
(6, 80d7c08, 1400)
dfb0be66 _filbuf (80c0118) + 86
080847ab Perl_sv_gets (8167530, 80c0118, 0) + 2df
08098988 Perl_pp_backtick () + ec
0807beae Perl_runops () + 1e
08058efa perl_run (80c0c14) + 252
080572d7 main
(2, 8047de0, 8047dec) + 73
080571eb ???????? ()
Ifȱyouȱfindȱaȱprocessȱwithȱaȱhighȱrunȱtime,ȱlookȱatȱtheȱselectionȱcriteriaȱusedȱtoȱrunȱtheȱ
particularȱperlȱcommand.ȱPerhapsȱaȱreportȱisȱbeingȱrunȱwithȱaȱdateȱrangeȱfromȱ
“beginningȱofȱtime”ȱtoȱtoday,ȱwhichȱwouldȱlikelyȱextractȱallȱcasesȱfromȱtheȱdatabase.ȱȱ
Settingȱaȱnarrowerȱdefaultȱrange,ȱorȱinstructingȱusers,ȱmayȱsolveȱtheȱproblem.ȱȱInȱaȱ
situationȱlikeȱthisȱitȱmayȱbeȱnecessaryȱtoȱuseȱtheȱ“Ȭk”ȱ(kill)ȱoptionȱofȱtheȱ“lost”ȱ
program.ȱȱȱUseȱthisȱoptionȱonlyȱasȱaȱlastȱresort,ȱandȱwithȱextremeȱcare.
IfȱaȱperlȱscriptȱinȱtheȱCM/ECFȱapplicationȱisȱfrequentlyȱappearingȱinȱtheȱlogs,ȱcontactȱ
theȱSystemsȱDeploymentȱandȱSupportȱDivisionȱȬȱSupportȱBranchȱ(SDSDȬSB)ȱsoȱthatȱ
theirȱstaffȱcanȱdoȱfurtherȱresearch.ȱȱTheȱscriptȱmayȱneedȱtoȱbeȱchangedȱtoȱimproveȱitsȱ
performanceȱ(theȱstandardȱ“modificationȱrequest”ȱprocedureȱwouldȱbeȱusedȱtoȱ
initiateȱsuchȱaȱchange).
oncheck-cI
ChecksȱallȱofȱtheȱindexesȱinȱanȱInformixȱinstanceȱforȱcorruption;ȱattemptsȱtoȱrepairȱifȱ
corruptionȱfound.ȱȱCallsȱInformixȱutilityȱoncheck.
Usage: oncheck-cI [-h ] [-i ]
Theȱprogramȱwillȱdisplayȱthisȱerrorȱmessage,ȱwhichȱshouldȱbeȱignored:
ERROR: Views used where table expected.
08 Jul 2009
Release 4.0.1
10-9
District CM/ECF System Administrator’s Guide
setlockmode
Thisȱutilityȱisȱonlyȱneededȱifȱaȱdatabaseȱisȱexportedȱwithoutȱtheȱcorrectȱoptionsȱforȱ
lockȱmode.ȱȱItȱsetsȱtheȱlockȱmodeȱofȱallȱtablesȱinȱaȱgivenȱdatabaseȱtoȱrowȬlevelȱlocking.
Usage: setlockmode
[-h ] [-i ] -d
showlocks
Thisȱutilityȱmayȱbeȱusefulȱifȱtheȱsystemȱ“hangs”.ȱȱItȱproducesȱaȱlistȱofȱallȱlocksȱ
currentlyȱactiveȱonȱtheȱspecifiedȱdatabase.ȱȱTheȱlistȱincludesȱInformixȱsessionȱid,ȱtable,ȱ
lockȱtypeȱ(exclusiveȱorȱshared)ȱandȱtheȱInformixȱuserȱwhoȱcreatedȱtheȱlock.
Usage: showlocks -d
UpdateStats
UpdatesȱInformixȱstatisticalȱinformationȱforȱallȱtablesȱ(andȱindexes)ȱwithinȱanȱ
Informixȱinstance.ȱUpdatedȱstatisticsȱresultȱinȱbetterȱperformanceȱbyȱtheȱSQLȱ
optimizer.
Forȱeachȱdatabase:ȱȱȱupdatesȱstatisticsȱmedium
Forȱeachȱprimaryȱcolumnȱinȱanȱindex:
ȱȱȱȱȱȱȱupdatesȱstatisticsȱhighȱforȱtableȱTABNAMEȱ(PRIMARYCOLNAME)
Usage: UpdateStats [-h ] [-I ]
TheȱtableȱbelowȱlistsȱtheȱtypesȱofȱmessagesȱareȱproducedȱbyȱUpdateStats:.
Type
Description
error
These would no normally be displayed if UpdateStats is run from cron, when root is the
user.
informational
Message is in the format “No index exists for database on table ”
status
Explains each task as it is being run.
Unableȱtoȱopenȱtheȱsysmasterȱdatabaseȱ–ȱȱyourȱruntimeȱInformixȱenvironmentȱisȱnotȱsetȱ
upȱcorrectlyȱ(checkȱINFORMIXDIRȱandȱINFORMIXSERVERȱenvironmentȱvariables).ȱ
Unableȱtoȱconnectȱtoȱȱ–ȱtheȱcurrentȱuserȱdoesȱnotȱhaveȱconnectȱpermissionsȱ
toȱtheȱdatabaseȱindicatedȱinȱtheȱerrorȱmessage.ȱ[Thisȱerrorȱwouldȱnotȱoccurȱwhenȱ
UpdateStatsȱisȱrunȱfromȱcron.]
08 Jul 2009
Release 4.0.1
10-10
District CM/ECF System Administrator’s Guide
Unableȱtoȱupdateȱstatisticsȱforȱ
ȱorȱȱ–ȱusuallyȱindicatesȱthatȱtheȱcurrentȱ
userȱdoesȱnotȱhaveȱdbaȱprivilegesȱonȱtheȱindicatedȱdatabase.ȱ(Pleaseȱnoteȱtheȱuserȱ
“root”ȱdoesȱnotȱbyȱdefaultȱhaveȱdbaȱprivilegesȱforȱtheȱsysmasterȱandȱsysutilsȱ
databasesȱ–ȱsoȱerrorȱmessagesȱforȱtheseȱdatabase/tablesȱareȱnormalȱwhenȱUpdateStatsȱ
isȱinvokedȱbyȱtheȱuserȱ“root”).
wait_for_informix
Runsȱonstatȱtoȱdetermineȱifȱtheȱdatabaseȱisȱupȱandȱrunning.ȱȱIfȱtheȱdatabaseȱisȱnotȱup,ȱ
itȱwillȱwaitȱ5ȱsecondsȱandȱtryȱagain.ȱThisȱcheckȬwaitȱloopȱwillȱcontinueȱuntilȱtheȱ
databaseȱisȱupȱandȱrunning.ȱȱ
whoson.pl
ProducesȱaȱlistȱofȱallȱusersȱcurrentlyȱloggedȱinȱtoȱanyȱInformixȱdatabaseȱonȱtheȱ
machine.ȱȱTheȱlistȱconsistsȱofȱprid,ȱuserȱlevel,ȱuserȱname,ȱoffice,ȱloginȱexpirationȱandȱ
theȱdatabaseȱtoȱwhichȱtheyȱareȱconnected.
wrapper
Executesȱtheȱprogramȱspecifiedȱasȱtheȱthirdȱparameterȱafterȱsettingȱtheȱenvironmentȱ
variablesȱINFORMIXDIR,ȱINFORMIXSERVER,ȱandȱPATH.ȱȱItȱisȱusedȱtoȱrunȱtheȱ
utilitiesȱinȱcron.ȱ
00 00 * * * /opt/util/wrapper -f /gov/ecf/etc/wrapper.config -e dbname -r
/opt/DCECF/[live | test | train]/server/server/MailReport.pl dbname
/opt/DCECF/[live | test | train]/server/server
>>/var/log/ecf/MailNotify.dbname.log 2>&1
Requiredȱparametersȱareȱlistedȱinȱtheȱfollowingȱtable.
Parameter
Description
-e
Pertains to a database on the server, as shown below:
[courtID_test]
INFORMIXDIR=/opt/informix/current
INFORMIXSERVER=courtID_shm
DBNAME=dbname
SERVER_HOME=/opt/DCECF/test/server/server
ONCONFIG=onconfig.courtID_shm
-f
-r
08 Jul 2009
The configuration file, wrapper.config, is located in /gov/ecf/etc.
Program to execute.
Release 4.0.1
10-11
CHAPTER
11
11
Archiving
In This Chapter
•
Overview
•
ArchivingȱaȱCase
•
RestoringȱaȱCase
•
ConfiguringȱtheȱPrimaryȱServer
District CM/ECF System Administrator’s Guide
Overview
Archivingȱelectronicȱcaseȱfilesȱprovidesȱsecondaryȱstorageȱforȱelectronicȱcaseȱfilesȱthatȱ
areȱnoȱlongerȱactive.ȱȱTheȱprimaryȱbenefitȱisȱaȱfasterȱsystemȱbackupȱandȱrestore.ȱ
Additionally,ȱoffȬloadingȱdataȱfromȱtheȱCM/ECFȱliveȱdatabaseȱimprovesȱapplicationȱ
performance;ȱalso,ȱdiskȱconsumptionȱonȱprimaryȱCM/ECFȱserversȱisȱreduced.ȱȱȱ
Theȱtermsȱ“archive”ȱandȱ“archivedȱcase”ȱdoȱnotȱreferȱtoȱtheȱtransferȱofȱtheȱcaseȱfileȱtoȱ
theȱFederalȱRecordsȱCenterȱ(FRC)ȱorȱtheȱNationalȱArchivesȱandȱRecordȱ
Administrationȱ(NARA).ȱȱAtȱpresent,ȱnoȱstandardsȱexistȱforȱtheȱtransferȱofȱelectronicȱ
caseȱfilesȱtoȱtheȱFRCȱorȱNARA,ȱandȱcourtsȱcontinueȱtoȱsendȱpaperȱrecordsȱfromȱcaseȱ
filesȱtoȱtheȱFRC.ȱSomeȱcourtsȱmayȱwishȱtoȱscheduleȱtheȱtransferȱofȱtheȱelectronicȱ
portionȱofȱCM/ECFȱcaseȱfilesȱtoȱtheȱonȬlineȱarchiveȱatȱtheȱsameȱtimeȱasȱtheȱtransferȱofȱ
theȱpaperȱportionȱofȱtheȱfileȱtoȱtheȱFRC.ȱȱOtherȱcourtsȱmayȱwishȱtoȱtransferȱtheȱ
electronicȱcaseȱfileȱtoȱtheȱarchiveȱwellȱbeforeȱtransferringȱtheȱpaperȱrecordsȱtoȱtheȱFRCȱ
inȱorderȱtoȱrealizeȱsystemȱperformanceȱbenefitsȱasȱsoonȱasȱpossible.
Whenȱaȱcaseȱisȱarchived,ȱcaseȱdataȱisȱcopiedȱfromȱtheȱcourt’sȱliveȱdatabaseȱtoȱtheȱ
court’sȱarchiveȱdatabaseȱwhichȱresidesȱonȱoneȱofȱtwoȱarchiveȱservers.ȱ1ȱAllȱcaseȱdataȱisȱ
thenȱremovedȱfromȱtheȱliveȱdatabase,ȱexceptȱforȱrecordsȱinȱtheȱcase,ȱparty,ȱattorney,ȱ
judge,ȱjs56,ȱasccase,ȱcase_flags,ȱjdg_index,ȱfrc_*,ȱandȱrms_casefileȱtables.
NOTE The frc tables (frc_box, frc_case, frc_casestatus, frc_legacy, frc_other_rec,
frc_shipment, and frc_transmittal) and the rms_casefile records will not be deleted from
the live server because there is a requirement to update FRC and RMS information after a
case has been archived.
Asȱpartȱofȱreplication,ȱdocumentsȱareȱcopiedȱtoȱtheȱfilesystemȱonȱbothȱtheȱprimaryȱ
serverȱandȱaȱreplicationȱdocumentȱserverȱlocatedȱatȱoneȱofȱtheȱreplicationȱfacilities.ȱ
Whenȱaȱuserȱqueriesȱaȱdocumentȱonȱanȱactiveȱcase,ȱdocumentsȱareȱaccessedȱonȱtheȱ
primaryȱserver.ȱWhenȱaȱuserȱqueriesȱaȱdocumentȱonȱanȱarchivedȱcase,ȱtheȱdocumentȱisȱ
accessedȱonȱtheȱreplicationȱdocumentȱserver;ȱdocumentsȱinȱtheȱarchivedȱcaseȱremainȱ
onȱtheȱsameȱreplicationȱdocumentȱserverȱasȱwhenȱtheȱcaseȱwasȱactive.ȱDocumentsȱareȱ
deletedȱfromȱtheȱprimaryȱserverȱwhenȱaȱcaseȱisȱarchived.
Whenȱaȱcourtȱuser,ȱattorney,ȱorȱPACERȱuserȱqueriesȱaȱcaseȱonȱtheȱprimaryȱcourtȱ
serverȱthatȱhasȱbeenȱarchived,ȱtheȱcase,ȱparty,ȱattorney,ȱjudge,ȱandȱjs56ȱtablesȱareȱ
searchedȱandȱtheȱuserȱredirectedȱtoȱtheȱarchiveȱserverȱfromȱwhichȱtheȱdataȱandȱ
documentsȱareȱretrieved.
Whenȱaȱcaseȱisȱrestoredȱtoȱtheȱliveȱdatabase,ȱallȱcaseȱdataȱisȱcopiedȱbackȱintoȱtheȱliveȱ
databaseȱfromȱtheȱarchiveȱdatabase.ȱȱAllȱdocumentsȱforȱthatȱcaseȱareȱthenȱcopiedȱbackȱ
1. One archive server is located at Reston, Virginia, the other at Lee Summit, Missouri. A court is assigned to
the archive server at the same Replication Facility where their replication server resides.
08 Jul 2009
Release 4.0.1
11-2
District CM/ECF System Administrator’s Guide
fromȱtheȱreplicationȱȱdocumentȱserverȱtoȱtheȱprimaryȱserver.ȱȱWhenȱtheȱprocessȱisȱ
complete,ȱallȱcaseȱdataȱisȱdeletedȱfromȱtheȱarchiveȱdatabase;ȱandȱthereȱareȱagainȱtwoȱ
copiesȱofȱtheȱdocuments.ȱ
IMPORTANT Before initiating the archive process, contact the Replication Support
team at (210) 301-6315. The archive server needs to be configured for your court before
you begin.
Archiving a Case
AfterȱcasesȱhaveȱbeenȱselectedȱforȱarchivingȱasȱoutlinedȱinȱtheȱApplicationȱ
Administrator’sȱGuide,ȱtheȱarchiveȱserverȱconfiguredȱforȱtheȱcourt,ȱandȱarchivingȱ
scheduled,ȱtheȱarchivingȱprocessȱproceedsȱasȱoutlinedȱbelow.
•
•
Theȱarchiveȱdatabase’sȱpasswordȱfileȱisȱreadȱforȱuserȱvalidation.ȱThisȱpasswordȱfileȱ
isȱlocatedȱonȱtheȱarchiveȱserverȱinȱtheȱuser’sȱhomeȱdirectory.
•
Theȱpasswordȱfileȱisȱcopiedȱtoȱtheȱprimaryȱdatabase’sȱsiteȱtableȱrecordȱ
offsite_data_courtIDArcPwd.ȱTheȱpasswordȱisȱaȱrandomlyȬgeneratedȱeightȬ
characterȱstring.ȱ
•
Afterȱsavingȱtheȱpasswordȱtoȱaȱtemporaryȱfileȱonȱtheȱarchiveȱserver,ȱtheȱprocessȱ
disconnectsȱfromȱtheȱarchiveȱdatabase.ȱ
•
Aȱsocketȱisȱthenȱopenedȱandȱaȱforkedȱprocessȱcreatedȱforȱtheȱarchiveȱupdatesȱandȱ
aȱconnectionȱtoȱtheȱarchiveȱdatabaseȱreȬestablished.ȱThisȱisȱdoneȱsoȱthatȱtheȱ
databaseȱconnectionȱisȱnotȱsharedȱbetweenȱtheȱmainȱprocessȱandȱtheȱarchiveȱ
updates.
•
Caseȱdataȱisȱthenȱinsertedȱintoȱtheȱarchiveȱdatabaseȱfromȱqueriesȱofȱtheȱliveȱ
database.ȱAȱtableȱrowȱisȱreadȱinȱtheȱliveȱdatabaseȱandȱthenȱcopiedȱtoȱtheȱarchiveȱ
database.ȱ
•
Afterȱinsertionȱofȱeachȱrow,ȱdataȱisȱcomparedȱonȱbothȱtheȱprimaryȱandȱarchiveȱ
serversȱsoȱthatȱtheyȱmatch.ȱ
•
08 Jul 2009
Theȱarchivingȱprocessȱbeginsȱwithȱtheȱliveȱdatabaseȱonȱtheȱprimaryȱserverȱ
connectingȱtoȱtheȱarchiveȱdatabaseȱonȱtheȱcourt’sȱarchiveȱserverȱasȱtheȱ
offsite_data_courtIDȱuser.ȱ
Concurrentlyȱwithȱthisȱprocess,ȱaȱbackupȱcopyȱofȱtheȱcaseȱisȱcreatedȱonȱtheȱ
primaryȱserver.ȱAllȱcaseȱdataȱandȱanyȱdocumentsȱstillȱinȱtheȱdatabaseȱareȱcopiedȱ
intoȱanȱXMLȱfile.ȱThisȱfileȱisȱsavedȱtoȱtheȱdirectoryȱdefinedȱbyȱsiteȱtableȱentryȱ
ArchiveHome.ȱTheȱdefaultȱforȱArchiveHomeȱisȱ/data/docs1/ECF/live/Archive.ȱ
Release 4.0.1
11-3
District CM/ECF System Administrator’s Guide
•
Documentsȱonȱtheȱarchiveȱserverȱareȱthenȱcheckedȱforȱaccessibility.ȱAnyȱ
documentsȱthatȱareȱnotȱaccessibleȱonȱtheȱarchiveȱserverȱareȱcopiedȱfromȱtheȱ
primaryȱserverȱtoȱtheȱreplicationȱdocumentȱserver.ȱ
•
Onceȱallȱdocumentsȱassociatedȱwithȱtheȱcaseȱhaveȱbeenȱaccountedȱfor,ȱtheyȱareȱ
movedȱtoȱtheȱArchiveHomeȱdirectoryȱonȱtheȱprimaryȱserver.
•
ȱOnȱtheȱprimaryȱserver,ȱtheȱcase.cs_archivedȱfieldȱforȱtheȱarchivedȱcaseȱisȱchangedȱ
toȱy,ȱwhichȱwillȱcauseȱreportsȱforȱthatȱcaseȱtoȱrunȱfromȱtheȱarchiveȱdatabase.ȱ
•
Allȱcaseȱdataȱisȱthenȱremovedȱfromȱtheȱliveȱdatabase,ȱexceptȱforȱrecordsȱinȱtheȱ
case,ȱparty,ȱattorney,ȱjudge,ȱjs56,ȱsardbk,ȱsardap,ȱasccase,ȱcase_flags,ȱjdg_index,ȱ
frc_*,ȱandȱrms_casefileȱtables.
Restoring a Case
Theȱprocessȱofȱrestoringȱaȱcaseȱbeginsȱwithȱcaseȱdataȱbeingȱinsertedȱintoȱtheȱliveȱ
databaseȱfromȱqueriesȱofȱtheȱarchiveȱdatabase.ȱAȱtableȱrowȱisȱreadȱinȱtheȱarchiveȱ
databaseȱandȱthenȱcopiedȱtoȱtheȱliveȱdatabase.ȱAfterȱinsertionȱofȱeachȱrow,ȱdataȱisȱ
comparedȱonȱbothȱtheȱarchiveȱandȱprimaryȱserversȱsoȱthatȱtheyȱmatch.ȱ
Allȱdocumentsȱrelatedȱtoȱtheȱcaseȱbeingȱrestoredȱareȱcopiedȱfromȱtheȱreplicationȱ
documentȱserverȱtoȱtheȱprimaryȱserver.ȱTheȱdocumentsȱremainȱonȱtheȱreplicationȱ
documentȱserver.ȱȱ
Theȱcase.cs_archivedȱfieldȱforȱtheȱarchivedȱcaseȱisȱchangedȱtoȱr.ȱUponȱcompletionȱofȱ
theȱrestoreȱprocess,ȱallȱdataȱrelatedȱtoȱtheȱrestoredȱcaseȱisȱdeletedȱfromȱtheȱarchiveȱ
database.ȱ
08 Jul 2009
Release 4.0.1
11-4
District CM/ECF System Administrator’s Guide
Configuring the Primary Server
Thisȱsectionȱprovidesȱinstructionsȱforȱconfiguringȱtheȱprimaryȱserverȱforȱarchiving.ȱ
Theȱdistrict_3.1_archiving.plȱprogramȱisȱrunȱonȱtheȱcourt’sȱprimaryȱserverȱasȱuserȱ
root.ȱItȱcreatesȱtheȱfollowingȱconnectionȱinformationȱforȱaccessȱtoȱtheȱarchiveȱserver:
•
createsȱnewȱentriesȱinȱ$INFORMIXDIR/etc/sqlhostsȱȱ
•
modifiesȱ/etc/servicesȱtoȱuseȱportȱ7102ȱforȱconnectivity
•
Modifiesȱtheȱpasswordȱentryȱforȱecf_webȱbyȱgivingȱitȱshellȱacccessȱ(/bin/falseȱisȱ
changedȱtoȱ/bin/bash)ȱasȱwellȱasȱaȱhomeȱdirectory.
•
Createsȱaȱ/home/ecf_webȱandȱaȱ/home/ecf_web/.sshȱdirectory.
•
Createsȱaȱprivateȱkeyȱfileȱnamedȱidentityȱwhichȱisȱstoredȱinȱtheȱ
/home/ecf_web/.sshȱdirectory.
•
Createsȱaȱlogȱfileȱnamedȱdistrict_3.1_archiving.mdHMSȱ(e.g.,ȱȱ
district_3.1_archiving.0209114717)
IMPORTANT The district_3.1_archiving.pl script can be run at any time. However,
before you proceed with archiving cases, contact the Replication Support team at (210)
301-6315. The archive server needs to be configured for your court in order for the
archiving process to work correctly.
To configure the primary server
1. LogȱinȱtoȱtheȱInsideȱserverȱasȱuserȱroot.
2. Changeȱdirectory:
cd /opt/DCECF/live/installation
3. Runȱtheȱfollowingȱscript:
./district_3.1_archiving.pl
ȱThereȱshouldȱbeȱnoȱerrorsȱinȱtheȱlogȱfile.
08 Jul 2009
Release 4.0.1
11-5
District CM/ECF System Administrator’s Guide
CHAPTER
12
copy_ecf_data
In This Chapter
•
•
SiteȱTableȱEntries
•
CodesȱTableȱEntries
•
DataȱCompletelyȱCopied
•
DataȱPartiallyȱCopied
•
Documents
•
08 Jul 2009
Overview
SealedȱCases
Release 4.0.1
12-1
District CM/ECF System Administrator’s Guide
Overview
Theȱcopy_ecf_dataȱprogramȱwillȱallowȱyouȱtoȱcopyȱcasesȱfromȱtheȱliveȱdatabaseȱtoȱtheȱ
testȱ(orȱtrain)ȱdatabase.ȱItȱcanȱcopyȱcasesȱfromȱaȱliveȱdatabaseȱthatȱisȱrunningȱCM/ECFȱ
Releaseȱ3.2ȱorȱhigher.ȱIfȱtheȱliveȱdatabaseȱisȱonȱanȱolderȱreleaseȱitȱwillȱhaveȱtoȱbeȱ
upgradedȱtoȱ3.2ȱbeforeȱyouȱcanȱuseȱtheȱprogram.ȱȱ
IMPORTANT
Theȱcopy_ecf_dataȱprogram:
•
Dropsȱtheȱtargetȱdatabaseȱandȱrecreatesȱitȱfromȱitȱsourceȱschema.ȱȱ
•
Doesȱnotȱaccountȱforȱlocalȱmodifications.
•
Doesȱnotȱcheckȱforȱavailableȱdiskȱorȱdatabaseȱspace.ȱVerifyȱthatȱthereȱisȱ
sufficientȱdatabaseȱasȱwellȱasȱdiskȱspaceȱbeforeȱrunningȱcopy_ecf_data.ȱ
•
Deletesȱallȱexisitingȱperson/userȱrecordsȱuniqueȱtoȱtheȱdestinationȱdatabase.
Order of events for running copy_ecf_data for a Release 4.0 test
database:
Followȱtheȱstepsȱbelowȱforȱrunningȱtheȱcopy_ecf_dataȱprogramȱforȱaȱReleaseȱ4.0ȱtestȱ
(orȱtrain)ȱdatabase.ȱ
IMPORTANTȱȱCopyȱecf_dataȱmustȱbeȱrunȱbeforeȱyouȱupgradeȱtheȱdatabaseȱ
schemaȱtoȱ4.0.
•
•
Copyȱ3.2ȱdataȱfromȱliveȱtoȱtestȱ(orȱtrain)ȱusingȱcopy_ecf_dataȱlocatedȱinȱ
/opt/DCECF/{testȱ|ȱtrain}/server/server/.
•
Runȱtheȱdatabaseȱschemaȱupgradeȱonȱtheȱtestȱ(orȱtrain)ȱdatabaseȱȬȱwhichȱnowȱhasȱ
someȱliveȱdata.ȱTheȱdatabaseȱschemaȱupgradeȱsoftwareȱisȱlocatedȱinȱ
/opt/DCECF/{testȱ|ȱtrain}/server/sql/dbupgrade.v4.0/.
•
08 Jul 2009
InstallȱtheȱReleaseȱ4.0ȱsoftwareȱforȱtestȱ(orȱtrain)ȱdatabase.
Testȱtheȱapplication.
Release 4.0.1
12-2
District CM/ECF System Administrator’s Guide
IMPORTANT If you upgrade your test (or train) database from 3.2.1 or 3.2.2 to
4.0 and then run copy_ecf_data after you have upgraded the database schema to
4.0, you must upgrade to 4.0 again and run prior database schemas. For example,
if you upgrade from 3.2.1 to 4.0 and then run copy_ecf_data, you must run both
the 3.2.1 and 3.2.2 upgrade scripts, and then run the 4.0 db upgrade script.
Theȱcopy_ecf_dateȱprogramȱshouldȱbeȱrunȱlateȱinȱtheȱeveningȱorȱonȱweekendsȱwhenȱ
thereȱisȱunlikelyȱtoȱbeȱanyȱactivityȱinȱtheȱliveȱdatabase.ȱIfȱtheȱprogramȱmustȱbeȱrunȱ
duringȱtheȱday,ȱrunȱitȱwithȱaȱfilterȱsuchȱasȱcs_yearȱtoȱeliminateȱactiveȱcases.ȱIfȱupdatesȱ
areȱmadeȱtoȱtheȱdatabaseȱwhileȱitȱisȱbeingȱcopiedȱ(e.g.,ȱbecauseȱsomeoneȱisȱdocketing),ȱ
thenȱtheȱcopyȱprocessȱwillȱbeȱinterruptedȱandȱwillȱnotȱfunctionȱproperly.ȱ
Options
Theȱcopy_ecf_dataȱutilityȱusesȱtheȱoptionsȱlistedȱinȱtheȱtableȱbelow:
Option
source
Assumed to be the live database.
destination
The name of the database into which court data should be inserted. Safeguards will ensure that the destination is not the live database.
NOTE: If it is a remote database, the program will be unable to make test documents.
where
If specified, the user may limit how much data is copied over by providing an
SQL “where” clause indicating which cases will be extracted. If a “where”
clause is not specified, all cases will be copied over. If less than 100 cases are
specified, or if the “where” clause returns/extracts less than 100 cases, the process will abort.
minimum
The limit courts can adjust to specify the number of cases copied from live to
test.
verbose
Controls how many messages are displayed to the screen while the utility is
running. The higher the number, the more messages. If this option is not used,
then progress messages will be displayed on the screen by default. To run the
utility without displaying any progress messages except fatal errors, use --verbose 0.
nonunique
08 Jul 2009
Description
The documents created by this process are all unique, showing a different id
and sequence number. Because this takes time, using this parameter will
speed up the process but all the documents will be the same test document.
Release 4.0.1
12-3
District CM/ECF System Administrator’s Guide
Ifȱyouȱrunȱtheȱcommandȱwithoutȱparameters,ȱorȱwithȱextraȱparametersȱthatȱitȱdoesȱ
notȱrecognizeȱ(suchȱasȱ--help)ȱitȱdisplaysȱtheȱfullȱsyntaxȱwithȱfiveȱexamplesȱ(shownȱ
below).
copy_ecf_data --destination test --where "cs_date_filed > date('01/01/2002')"
copy_ecf_data --destination train --where "cs_year = 7 and cs_jstype = 'cv'"
copy_ecf_data --destination dev --where "cs_year=7" --minimum 50
copy_ecf_data --source train --destination otherserver:test
copy_ecf_data --destination train --verbose 10
Byȱdefault,ȱȱcopy_ecf_dataȱwillȱcompleteȱonlyȱifȱatȱleastȱ100ȱcasesȱwillȱbeȱcopied.ȱIfȱ
youȱrunȱcopy_ecf_dataȱandȱlessȱthanȱtheȱdefaultȱofȱ100ȱcasesȱwouldȱbeȱcopied,ȱtheȱ
systemȱwillȱreturnȱanȱerrorȱmessageȱandȱabortȱtheȱprocess.ȱȱToȱgetȱaroundȱtheȱdefaultȱ
minimum,ȱyouȱcanȱuseȱtheȱminimumȱoption.ȱȱFollowingȱisȱanȱexampleȱthatȱshowsȱtheȱ
minimumȱoptionȱandȱalsoȱlimitsȱtheȱcasesȱtoȱthoseȱwithȱcaseȱnumbersȱlessȱthanȱ5:ȱ
Examples
Someȱexampleȱscenariosȱforȱrunningȱtheȱcopyȱcasesȱutilityȱareȱlistedȱbelow:
•
Copyȱfromȱliveȱtoȱtestȱonlyȱcasesȱopenedȱinȱ2007ȱandȱ2008:
copy_ecf_data --source live --destination test --where cs_year in (7,8)
•
Copyȱfromȱliveȱtoȱtestȱallȱcases:
copy_ecf_data --destination test
copy_ecf_data --destination train --where "cs_year=8 and cs_number < 5" --minimum 50
Site Table Entries
Beforeȱdataȱisȱcopiedȱfromȱtheȱsourceȱdatabase,ȱtheȱfollowingȱsiteȱtableȱvaluesȱwillȱbeȱ
preservedȱtoȱmaintainȱvaluesȱuniqueȱtoȱtheȱtestȱ(orȱtrain)ȱdatabase.ȱȱ
ArchiveHome
BaseURL
CalendarHome
CourtName
CourtShortName
DoctypeHome
DOJ_VNS_ExportDir
FreeMailLog
InsideURL
08 Jul 2009
LiveFormsDir
OptLogFile
RecusalHome
ServerHome
StatisticsHome
SystemName
TempDocDir
TempDocDir2
XC_ExportDir
Release 4.0.1
CA_Mail_AutoSelectFail
CA_Mail_AutoSelectOK
CourtEmail
CourtMail
JpmdMailRecpt
MailUser
MailCA
PacerEmail
SealAdminEmail
12-4
District CM/ECF System Administrator’s Guide
KeyFile
JSPUrl
XC_ImportDir
AdminMail
ScheduleReplyReportMail
XC_Email...
Codes Table Entries
TheȱConfChkEmailȱandȱRecuse_Mailȱcodesȱtableȱentriesȱonȱtheȱtestȱorȱtrainȱdatabaseȱ
areȱretained.ȱȱ
TheȱcodesȱtableȱvaluesȱforȱtheȱEmailAddrȱrecordsȱareȱresetȱwithȱtestȱvaluesȱforȱtheȱtestȱ
database.ȱȱEmailȱaddressesȱfromȱtheȱsourceȱdatabaseȱ(live)ȱwillȱbeȱchangedȱinȱtheȱ
destinationȱdatabaseȱ(testȱorȱtrain)ȱsoȱthatȱtheyȱareȱstillȱlegitimateȱaddressesȱbutȱemailȱ
willȱnotȱbeȱsentȱtoȱtheȱoriginalȱrecipient.ȱȱThisȱisȱdoneȱbyȱchangingȱtheȱ@ȱsignȱtoȱanȱ
underscoreȱandȱappendingȱ@example.comȱ(e.g.,ȱpat_attorney@aol.comȱbecomesȱ
pat_attorney_aol.com@example.com).
Allȱotherȱcodesȱtableȱentriesȱareȱcopiedȱoverȱwithȱdataȱfromȱtheȱliveȱdatabaseȱ
replacingȱtheȱdataȱinȱtheȱtestȱorȱtrainȱdatabase.
Data Completely Copied
Onlyȱtheȱdocument_homeȱtableȱisȱpreservedȱentirelyȱwhenȱcopyingȱcasesȱfromȱtheȱ
liveȱdatabaseȱtoȱtheȱtestȱorȱtrainȱdatabase.ȱȱTheȱdataȱinȱtheȱfollowingȱdatabaseȱtablesȱ
willȱbeȱcopiedȱoverȱcompletely,ȱwithȱdataȱfromȱtheȱliveȱdatabaseȱreplacingȱthatȱonȱtheȱ
testȱorȱtrainȱdatabase:
api
bar_member
casetype
codes
counter
deadlines
deck_card
deck_instance
deck_master
deck_person
dpf
events
file_location
firm
form
group
location
mail_notice
menu
mjstart_misc
notworking
order_action
pacer_program
prison
program_group
restriction
roletype
schedule_rpt_times
users
Data Partially Copied
Recordsȱinȱotherȱtablesȱareȱcopiedȱbasedȱonȱtheȱspecificȱcasesȱcopied.ȱTheȱfollowingȱ
tablesȱwillȱbeȱcopiedȱoverȱpartially,ȱbasedȱonȱwhichȱcasesȱwereȱtransferred.
answer
asccase
bar_member
case_flags
case_group
case_restriction
08 Jul 2009
frc_case
frc_casestatus
group
hold_request
interval
intra_district
js43petty
js56
mail_case_list
mjstar_misc
recusal
rms_casefile
Release 4.0.1
u_cr_count_disp
u_cr_excludable
u_cr_interval
u_cr_location
u_cr_pnt
u_cr_sentdisp_text
u_document
u_filer
u_judge
u_log
u_motion
u_party
12-5
District CM/ECF System Administrator’s Guide
caseasgn
docket_restriction
filing_fee
firm
jdg_index
js10
js23
js34
status
time_in_court
u_attorney
u_count
u_dkt_person
u_dktentry
u_dktpart
u_dkttext
u_person
u_schedule
user_group
user_program
Documents
Documentȱfilesȱwillȱnotȱbeȱcopiedȱfromȱtheȱsourceȱdirectory.ȱȱInstead,ȱnewȱdocumentsȱ
willȱbeȱcreatedȱandȱtheȱdestinationȱdatabaseȱdocumentȱtableȱwillȱbeȱupdatedȱwithȱ
theseȱnewȱdocuments.ȱȱTheseȱdocumentsȱwillȱbeȱsmallȱoneȬlineȱPDFȱdocumentsȱthatȱ
stateȱwhichȱdocumentȱrecordȱtheyȱrepresent,ȱsoȱtheyȱwillȱbeȱuniqueȱbutȱcontainȱnoȱ
realȱcourtȱdata.ȱȱ
Theȱdls_idsȱusedȱinȱdocumentȱhyperlinksȱareȱcopiedȱoverȱwithoutȱanyȱchange.
Sealed Cases
Sealedȱdocumentsȱareȱnotȱcopiedȱover.ȱOnlyȱsealedȱentriesȱandȱsealedȱcasesȱareȱ
copied.ȱTheȱcasesȱremainȱsealedȱandȱareȱavailableȱonlyȱtoȱtheȱsameȱusersȱwhoȱhadȱ
accessȱtoȱthemȱinȱtheȱliveȱdatabase.
Securityȱpermissionsȱareȱcarriedȱoverȱfromȱliveȱtoȱtestȱbyȱcopyingȱallȱtheȱtablesȱthatȱ
haveȱthoseȱpermissions:ȱȱusers,ȱuser_group,ȱprogram_group,ȱcase_group,ȱetc.ȱ
08 Jul 2009
Release 4.0.1
12-6
District CM/ECF System Administrator’s Guide
Appendix A VerifyDocs Error Types By
Category
VerifyDocsȱrecordsȱeachȱproblemȱdocumentȱinȱaȱdataȱfile.ȱȱEachȱentryȱinȱthisȱfileȱisȱ
assignedȱaȱletterȱcodeȱthatȱidentifiesȱtheȱspecificȱproblemȱtype.ȱȱThisȱappendixȱ
providesȱaȱdescriptionȱofȱtheȱerrorȱtypesȱforȱeachȱerrorȱcategory.ȱ
Error types
Type
Description
Errors that are safe to fix
N
Improperly saved signature due to invalid FileNumber; but the signatures compare ok
i
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
GOOD
w
Stamp Name has changed, but signature is GOOD
Errors that are unknown
c
stored signature is corrupted
j
signatures do not match, due to a different keyfile being used to regenerate the signature.
M
signatures do not match, due to an invalid original signature (missing keyfile)
n
signatures do not match, due to an invalid original signature
Errors that are not safe to fix
I
signatures do not match, due to wrong dm_id or dm_seq value in sig, but signature is
bad.
C
Improperly saved signature due to invalid FileNumber; the signatures do not match
m
signatures do not match
O
Improperly formatted FileNumber found in the original signature and signatures do not
match.
s
dm_size is not the same as the file size, off by multiple bytes
S
dm_size is not the same as the file size, off by one byte
W
Stamp Name has changed and signatures do not match
Errors that are of type other
f
g
error generating new signature
k
08 Jul 2009
error fixing document (the program has unsuccessfully attempted to fix a page count
error)
signatures do not match, due to an invalid regenerated signature
Release 4.0.1
A-1
District CM/ECF System Administrator’s Guide
Error types
Type
K
signatures do not match, due to an invalid regenerated signature (missing keyfile)
o
unexpected error
p
PDFcheck failed
r
could not open document file
R
08 Jul 2009
Description
orphaned document
Release 4.0.1
A-2
District CM/ECF System Administrator’s Guide
Appendix B Court Listings
014
U.S. COURT OF INTERNATIONAL TRADE
015
U.S. COURT OF FEDERAL CLAIMS
017
ALABAMA MIDDLE DISTRICT COURT
019
ALABAMA NORTHERN DISTRICT COURT
021
ALABAMA SOUTHERN DISTRICT COURT
023
ALASKA DISTRICT COURT
025
ARIZONA DISTRICT COURT
027
ARKANSAS EASTERN DISTRICT COURT
029
ARKANSAS WESTERN DISTRICT COURT
031
CALIFORNIA CENTRAL DISTRICT COURT
033
CALIFORNIA EASTERN DISTRICT COURT
035
CALIFORNIA NORTHERN DISTRICT COURT
037
CALIFORNIA SOUTHERN DISTRICT COURT
039
COLORADO DISTRICT COURT
041
CONNECTICUT DISTRICT COURT
043
DELAWARE DISTRICT COURT
045
DISTRICT OF COLUMBIA DISTRICT COURT
047
FLORIDA MIDDLE DISTRICT COURT
049
FLORIDA NORTHERN DISTRICT COURT
051
FLORIDA SOUTHERN DISTRICT COURT
053
GEORGIA MIDDLE DISTRICT COURT
057
GEORGIA NORTHERN DISTRICT COURT
059
GEORGIA SOUTHERN DISTRICT COURT
059
GUAM DISTRICT COURT
061
HAWAII DISTRICT COURT
063
IDAHO DISTRICT COURT
065
ILLINOIS CENTRAL DISTRICT COURT
067
ILLINOIS CENTRAL NORTHERN DISTRICT COURT
069
ILLINOIS SOUTHERN DISTRICT COURT
08 Jul 2009
Release 4.0.1
B-1
District CM/ECF System Administrator’s Guide
071
INDIANA NORTHERN DISTRICT COURT
073
INDIANA SOUTHERN DISTRICT COURT
075
IOWA NORTHERN DISTRICT COURT
077
IOWA SOUTHERN DISTRICT COURT
079
KANSAS DISTRICT COURT
081
KENTUCKY EASTERN DISTRICT COURT
083
KENTUCKY WESTERN DISTRICT COURT
085
LOUISIANA EASTERN DISTRICT COURT
087
LOUISIANA MIDDLE DISTRICT COURT
089
LOUISIANA WESTERN DISTRICT COURT
091
MAINE DISTRICT COURT
093
MARYLAND DISTRICT COURT
095
MASSACHUSETTS DISTRICT COURT
097
MICHIGAN EASTERN DISTRICT COURT
099
MICHIGAN WESTERN DISTRICT COURT
101
MINNESOTA DISTRICT COURT
103
MISSISSIPPI NORTHERN DISTRICT COURT
105
MISSISSIPPI SOUTHERN DISTRICT COURT
107
MISSOURI EASTERN DISTRICT COURT
109
MISSOURI WESTERN DISTRICT COURT
111
MONTANA DISTRICT COURT
113
NEBRASKA DISTRICT COURT
115
NEVADA DISTRICT COURT
117
NEW HAMPSHIRE DISTRICT COURT
119
NEW JERSEY DISTRICT COURT
121
NEW MEXICO DISTRICT COURT
123
NEW YORK EASTERN DISTRICT COURT
125
NEW YORK NORTHERN DISTRICT COURT
127
NEW YORK SOUTHERN DISTRICT COURT
129
NEW YORK WESTERN DISTRICT COURT
131
NORTH CAROLINA EASTERN DISTRICT COURT
08 Jul 2009
Release 4.0.1
B-2
District CM/ECF System Administrator’s Guide
133
NORTH CAROLINA MIDDLE DISTRICT COURT
135
NORTH CAROLINA WESTERN DISTRICT COURT
137
NORTH DAKOTA DISTRICT COURT
139
NORTHERN MARIANAS DISTRICT COURT
141
OHIO NORTHERN DISTRICT COURT
143
OHIO SOUTHERN DISTRICT COURT
145
OKLAHOMA EASTERN DISTRICT COURT
147
OKLAHOMA NORTHERN DISTRICT COURT
149
OKLAHOMA WESTERN DISTRICT COURT
151
OREGON DISTRICT COURT
153
PENNSYLVANIA EASTERN DISTRICT COURT
155
PENNSYLVANIA MIDDLE DISTRICT COURT
157
PENNSYLVANIA WESTERN DISTRICT COURT
159
PUERTO RICO DISTRICT COURT
161
RHODE ISLAND DISTRICT COURT
163
SOUTH CAROLINA DISTRICT COURT
165
SOUTH DAKOTA DISTRICT COURT
167
TENNESSEE EASTERN DISTRICT COURT
169
TENNESSEE MIDDLE DISTRICT COURT
171
TENNESSEE WESTERN DISTRICT COURT
173
TEST DISTRICT COURT
175
TEXAS EASTERN DISTRICT
177
TEXAS NORTHERN DISTRICT COURT
179
TEXAS SOUTHERN DISTRICT COURT
181
TEXAS WESTERN DISTRICT COURT
183
UTAH DISTRICT COURT
185
VERMONT DISTRICT COURT
187
VETERAN APPEALS DISTRICT COURT
189
VIRGINIA EASTERN DISTRICT COURT
191
VIRGINIA WESTERN DISTRICT COURT
193
VIRGIN ISLANDS DISTRICT COURT
08 Jul 2009
Release 4.0.1
B-3
District CM/ECF System Administrator’s Guide
195
WASHINGTON EASTERN DISTRICT COURT
197
WASHINGTON WESTERN DISTRICT COURT
199
WEST VIRGINIA NORTHERN DISTRICT COURT
201
WEST VIRGINIA SOUTHERN DISTRICT COURT
203
WISCONSIN EASTERN DISTRICT COURT
205
WISCONSIN WESTERN DISTRICT COURT
207
WYOMING DISTRICT COURT
08 Jul 2009
Release 4.0.1
B-4
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.